--- 4.3.1/exim.conf-SpamBlockerTechnology-v4.3.1.txt	2014-12-17 22:19:46.000000000 -0600
+++ 4.3.2/exim.conf-SpamBlockerTechnology-v4.3.2.txt	2015-03-14 17:17:56.000000000 -0500
@@ -1,4 +1,4 @@
-# SpamBlockerTechnology* powered exim.conf, Version 4.3.1
+# SpamBlockerTechnology* powered exim.conf, Version 4.3.2
 # alpha-2
 # September 9, 2014 03:03 (-0700)
 # Exim configuration file for DirectAdmin
@@ -140,6 +140,8 @@
 domainlist relay_domains = lsearch;/etc/virtual/domains
 domainlist use_rbl_domains = lsearch;/etc/virtual/use_rbl_domains
 domainlist skip_rbl_domains = lsearch;/etc/virtual/skip_rbl_domains
+hostlist skip_rbl_hosts = ${if exists{/etc/virtual/skip_rbl_hosts}{wildlsearch;/etc/virtual/skip_rbl_hosts}}
+hostlist skip_rbl_hosts_ip = ${if exists{/etc/virtual/skip_rbl_hosts_ip}{/etc/virtual/skip_rbl_hosts_ip}}
 hostlist auth_relay_hosts = *
 hostlist bad_sender_hosts = lsearch;/etc/virtual/bad_sender_hosts
 hostlist bad_sender_hosts_ip = /etc/virtual/bad_sender_hosts_ip
@@ -181,10 +183,15 @@
 #auth_over_tls_hosts = *
 
 
+##################################################################################
 # Access Control Lists
-######################
+##################################################################################
 begin acl
 
+
+######################################
+# ACL CONNECT
+######################################
 #EDIT#24:
 acl_connect:
   warn set acl_m_spam_assassin_has_run = 0
@@ -192,6 +199,10 @@
   .include_if_exists /etc/exim.easy_spam_fighter/connect.conf
   accept hosts = *
 
+
+######################################
+# ACL CHECK MAIL
+######################################
 acl_check_mail:
   accept  condition = ${if eq{$acl_m_is_whitelisted}{1}{1}{0}}
 
@@ -203,7 +214,7 @@
           logwrite = $sender_host_address whitelisted in local hosts whitelist
           set acl_m_is_whitelisted = 1
   accept  hosts = +whitelist_hosts_ip
-          logwrite = $sender_host_address whitelisted in local hosts IP# whitelist
+          logwrite = $sender_host_address whitelisted in local hosts IP whitelist
           set acl_m_is_whitelisted = 1
   # accept if envelope sender is in whitelist
   accept  senders = +whitelist_senders
@@ -213,6 +224,10 @@
   .include_if_exists /etc/exim.easy_spam_fighter/check_mail.conf
   accept
 
+
+######################################
+# ACL CHECK AUTH
+######################################
 #EDIT#24.5#
 acl_check_auth:
   drop  set acl_m_authcount = ${eval10:0$acl_m_authcount+1}
@@ -222,6 +237,10 @@
 
   accept
 
+
+######################################
+# ACL CHECK HELO
+######################################
 #EDIT#25:
 acl_check_helo:
   # accept mail originating on this server unconditionally
@@ -229,7 +248,7 @@
   # deny if the HELO pretends to be this host
     deny message = HELO_HOST_IMPERSANATION
       condition = ${if or { \
-                            {match{$sender_helo_name}{$smtp_active_hostname}} \
+                            {eq{$sender_helo_name}{$smtp_active_hostname}} \
                             {eq{$sender_helo_name}{[$interface_address]}} \
                           } {true}{false} }
   # deny if the HELO is an IP address
@@ -245,6 +264,10 @@
         hosts = ! +relay_hosts
   accept
 
+
+######################################
+# ACL SCRIPT
+######################################
 acl_script:
   discard set acl_m_uid = ${perl{find_uid}}
           set acl_m_username = ${perl{get_username}{$acl_m_uid}}
@@ -263,6 +286,10 @@
 
   .include_if_exists /etc/exim.blockcracking/script.recipients.conf
 
+
+######################################
+# ACL CHECK RECIPIENT
+######################################
 #EDIT#26:
 acl_check_recipient:
   # block certain well-known exploits, Deny for local domains if
@@ -357,6 +384,7 @@
     deny message = 554 denied. 5.7.1 BLOCKED_DUE_TO_SPAM_SENDER
     domains = +use_rbl_domains
     domains = !+skip_rbl_domains
+    hosts = !+skip_rbl_hosts : !+skip_rbl_hosts_ip
     senders = +blacklist_senders
 
 #EDIT#33:
@@ -364,6 +392,7 @@
        # only for domains that do want to be tested against RBLs
        domains = +use_rbl_domains
        domains = !+skip_rbl_domains
+       hosts = !+skip_rbl_hosts : !+skip_rbl_hosts_ip
        hosts = +bad_sender_hosts
 
 #EDIT#34:
@@ -391,6 +420,7 @@
     deny message = 554 denied. 5.7.1 BLOCKED_DUE_TO_SPAM_DOMAIN
        domains = +use_rbl_domains
        domains = !+skip_rbl_domains
+       hosts = !+skip_rbl_hosts : !+skip_rbl_hosts_ip
        sender_domains = +blacklist_domains
 
 #EDIT#40:
@@ -399,10 +429,18 @@
 #         condition = ${if match {$sender_host_name}{\Npaypal.com$\N}{no}{yes}}
 
 #EDIT#41:
+  warn hosts = +skip_rbl_hosts
+       logwrite = $sender_host_address RBL whitelisted in skip_rbl_hosts
+  warn hosts = +skip_rbl_hosts_ip
+       logwrite = $sender_host_address RBL whitelisted in skip_rbl_hosts_ip
+  warn domains = +skip_rbl_domains
+       logwrite = $sender_host_address RBL whitelisted $domain in skip_rbl_domains
+  
   deny message = RBL_BLOCKED_BY_LIST
        hosts    = !+relay_hosts
        domains = +use_rbl_domains
        domains = !+skip_rbl_domains
+       hosts = !+skip_rbl_hosts : !+skip_rbl_hosts_ip
        !authenticated = *
        dnslists = \
        cbl.abuseat.org : \
@@ -442,12 +480,19 @@
   deny    message = RELAY_NOT_PERMITTED
 
 
+######################################
+# ACL CHECK DKIM
+######################################
 acl_check_dkim:
   accept  condition = ${if eq{$acl_m_is_whitelisted}{1}{1}{0}}
           
   .include_if_exists /etc/exim.easy_spam_fighter/check_dkim.conf
   accept
 
+
+######################################
+# ACL CHECK MESSAGE
+######################################
 # ACL that is used after the DATA command (ClamAV)
 acl_check_message:
   accept  condition = ${if eq{$acl_m_is_whitelisted}{1}{1}{0}}
@@ -484,8 +529,10 @@
   ## Do NOT comment out the line below or all messages will be denied.
   accept
 
+
+##################################################################################
 # AUTHENTICATION CONFIGURATION
-##############################
+##################################################################################
 begin authenticators
 
 plain:
@@ -507,6 +554,11 @@
 # There is no rewriting specification in this exim.conf file. If your
 # configuration requires one, it would go here
 
+
+
+##################################################################################
+# ROUTERS CONFIGURATION
+##################################################################################
 begin routers
 #EDIT#48:
 
@@ -797,6 +849,7 @@
   group = nobody
   return_output
   user = "${lookup{$domain}lsearch* {/etc/virtual/domainowners}{$value}}"
+.include_if_exists /etc/exim.cagefs.pipe.conf
 
 #COMMENT#63:
 address_file:
@@ -816,8 +869,10 @@
   batch_max = 200
   return_path_add
 
-#EDIT#65:
+##################################################################################
 # RETRY CONFIGURATION
+##################################################################################
+#EDIT#65:
 # Domain               Error       Retries
 # ------               -----       -------
 begin retry
