dnslists: hardwired return value check. Bug 2631
authorJeremy Harris <jgh146exb@wizmail.org>
Mon, 10 Aug 2020 21:28:48 +0000 (22:28 +0100)
committerJeremy Harris <jgh146exb@wizmail.org>
Mon, 10 Aug 2020 22:45:11 +0000 (23:45 +0100)
doc/doc-txt/ChangeLog
src/src/dnsbl.c
test/confs/0139
test/confs/0509
test/dnszones-src/db.test.ex
test/log/0509
test/scripts/0000-Basic/0139
test/stderr/0139
test/stdout/0139

index 3b1081fe13170302c8cb452e237a2bb82c67a473..d56ff240b89b1d93eb0a66ab243dae3e961f64a3 100644 (file)
@@ -96,6 +96,10 @@ JH/19 SPF: change the Authentication-Results expansion component to give
       smtp.helo when the sender domain is empty.  Previously it gave
       "smtp.mailfrom=<>"
 
       smtp.helo when the sender domain is empty.  Previously it gave
       "smtp.mailfrom=<>"
 
+JH/20 Bug 2631: ACL dnslist conditions now ignore and log any lookups returns
+      not in 127.0.0.0/8 to help in spotting list domains taken over by a
+      domain-parking registrar.
+
 
 Exim version 4.94
 -----------------
 
 Exim version 4.94
 -----------------
index d3afd5cf8a0fc199c1c2087ef66afc5134cdd7bb..5c6a76d944f51f80fca9497b6cdcc15be7a1b894 100644 (file)
@@ -247,7 +247,15 @@ if (cb->rc == DNS_SUCCEED)
         ignore IPv6 addresses. The default mask is 0, which always matches.
         We change this only for IPv4 addresses in the list. */
 
         ignore IPv6 addresses. The default mask is 0, which always matches.
         We change this only for IPv4 addresses in the list. */
 
-        if (host_aton(da->address, address) == 1) mask = address[0];
+        if (host_aton(da->address, address) == 1)
+         if ((address[0] & 0xff000000) != 0x7f000000)    /* 127.0.0.0/8 */
+           log_write(0, LOG_MAIN,
+             "DNS list lookup for %s at %s returned %s;"
+             " not in 127.0/8 and discarded",
+             keydomain, domain, da->address);
+
+         else
+           mask = address[0];
 
         /* Scan the returned addresses, skipping any that are IPv6 */
 
 
         /* Scan the returned addresses, skipping any that are IPv6 */
 
@@ -301,6 +309,29 @@ if (cb->rc == DNS_SUCCEED)
       }
     }
 
       }
     }
 
+  /* No address list check; discard any illegal returns and give up if
+  none remain. */
+
+  else
+    {
+    BOOL ok = FALSE;
+    for (da = cb->rhs; da; da = da->next)
+      {
+      int address[4];
+
+      if (  host_aton(da->address, address) == 1               /* ipv4 */
+        && (address[0] & 0xff000000) == 0x7f000000     /* 127.0.0.0/8 */
+        )
+       ok = TRUE;
+      else
+       log_write(0, LOG_MAIN,
+           "DNS list lookup for %s at %s returned %s;"
+           " not in 127.0/8 and discarded",
+           keydomain, domain, da->address);
+      }
+    if (!ok) return FAIL;
+    }
+
   /* Either there was no IP list, or the record matched, implying that the
   domain is on the list. We now want to find a corresponding TXT record. If an
   alternate domain is specified for the TXT record, call this function
   /* Either there was no IP list, or the record matched, implying that the
   domain is on the list. We now want to find a corresponding TXT record. If an
   alternate domain is specified for the TXT record, call this function
index 13a90df0a231daf2293f377e441d51803d0fe610..5aaa611830875106c5084cb251278b71f226a955 100644 (file)
@@ -30,6 +30,7 @@ check_vrfy:
   warn    dnslists = rbl.test.ex!==127.0.0.1
   warn    dnslists = rbl.test.ex!==127.0.0.3
   warn    dnslists = rbl.test.ex!==127.0.0.1,127.0.0.2
   warn    dnslists = rbl.test.ex!==127.0.0.1
   warn    dnslists = rbl.test.ex!==127.0.0.3
   warn    dnslists = rbl.test.ex!==127.0.0.1,127.0.0.2
+  warn    dnslists = rbl.test.ex
   accept
 
 check_mail:
   accept
 
 check_mail:
index bc3dc50a8a18b557c97ee2f1fe5c97b7cd528740..9a4f185f83f6950aa993af18291f9d798f489d30 100644 (file)
@@ -18,7 +18,7 @@ check_connect:
    warn  dnslists = rbl.test.ex/<;1.2.3.4;V4NET.11.12.13
          logwrite = rbl.test.ex/<;1.2.3.4;V4NET.11.12.13
 
    warn  dnslists = rbl.test.ex/<;1.2.3.4;V4NET.11.12.13
          logwrite = rbl.test.ex/<;1.2.3.4;V4NET.11.12.13
 
-   warn  dnslists = test.ex/a.b.c.d::ten-1
-         logwrite = test.ex/a.b.c.d::ten-1
+   warn  dnslists = test.ex/a.b.c.d::ten-1::localhost
+         logwrite = test.ex/a.b.c.d::ten-1::localhost
 
 # End
 
 # End
index de710dcf3debbfe56d56d0c29ca5512d10c78aa6..9b6684ac7adb1aff75ec32cdb7c710f043017471 100644 (file)
@@ -201,6 +201,17 @@ TTL=2 14.12.11.V4NET.rbl A 127.0.0.2
 2.13.13.V4NET.rbl     A   127.0.0.1
                       A   127.0.0.2
 
 2.13.13.V4NET.rbl     A   127.0.0.1
                       A   127.0.0.2
 
+; Foolish return values outside 127.0/8
+
+100.13.13.V4NET.rbl    A   0.0.0.0
+101.13.13.V4NET.rbl    A   126.255.255.255
+102.13.13.V4NET.rbl    A   128.0.0.0
+103.13.13.V4NET.rbl    A   255.255.255.255
+104.13.13.V4NET.rbl    A   255.255.255.255
+                       A   127.0.0.0
+105.13.13.V4NET.rbl    A   255.255.255.255
+                       A   255.255.255.254
+
 ; -------- Testing MX records --------
 
 mxcased      MX  5  ten-99.TEST.EX.
 ; -------- Testing MX records --------
 
 mxcased      MX  5  ten-99.TEST.EX.
index c8bb88eae1a8a28f48e658dc7794d337edffe5c7..f69f828e808d3dac278bc92461061179376d639a 100644 (file)
@@ -1,3 +1,4 @@
 1999-03-02 09:44:33 rbl.test.ex/<;1.2.3.4;V4NET.11.12.13
 1999-03-02 09:44:33 rbl.test.ex/<;1.2.3.4;V4NET.11.12.13
-1999-03-02 09:44:33 test.ex/a.b.c.d::ten-1
+1999-03-02 09:44:33 DNS list lookup for ten-1 at test.ex returned V4NET.0.0.1; not in 127.0/8 and discarded
+1999-03-02 09:44:33 test.ex/a.b.c.d::ten-1::localhost
 1999-03-02 09:44:33 U=CALLER rejected connection in "connect" ACL
 1999-03-02 09:44:33 U=CALLER rejected connection in "connect" ACL
index 0224bd9d05e5560fb6135dd06a858d59ac685de2..d5ebc995c44d275bacb64b65846131fd379bba7e 100644 (file)
@@ -40,4 +40,29 @@ exim -bh V4NET.13.13.2
 vrfy a@b
 quit
 ****
 vrfy a@b
 quit
 ****
+#
+exim -bh V4NET.13.13.100
+vrfy a@b
+quit
+****
+exim -bh V4NET.13.13.101
+vrfy a@b
+quit
+****
+exim -bh V4NET.13.13.102
+vrfy a@b
+quit
+****
+exim -bh V4NET.13.13.103
+vrfy a@b
+quit
+****
+exim -bh V4NET.13.13.104
+vrfy a@b
+quit
+****
+exim -bh V4NET.13.13.105
+vrfy a@b
+quit
+****
 no_msglog_check
 no_msglog_check
index 9b01d9dd91eb30b142633aaa84be00a75ca77858..eb73157706ea0588e6602605792539bb5753d27a 100644 (file)
@@ -7,7 +7,7 @@
 >>> host in helo_try_verify_hosts? no (option unset)
 >>> host in helo_accept_junk_hosts? no (option unset)
 >>> using ACL "check_mail"
 >>> host in helo_try_verify_hosts? no (option unset)
 >>> host in helo_accept_junk_hosts? no (option unset)
 >>> using ACL "check_mail"
->>> processing "warn" (TESTSUITE/test-config 36)
+>>> processing "warn" (TESTSUITE/test-config 37)
 >>> check dnslists = rbl4.test.ex&0.0.0.6
 >>> dnslists check: rbl4.test.ex&0.0.0.6
 >>> new DNS lookup for 14.12.11.V4NET.rbl4.test.ex
 >>> check dnslists = rbl4.test.ex&0.0.0.6
 >>> dnslists check: rbl4.test.ex&0.0.0.6
 >>> new DNS lookup for 14.12.11.V4NET.rbl4.test.ex
 >>> DNS lookup for 14.12.11.V4NET.rbl4.test.ex failed
 >>> => that means V4NET.11.12.14 is not listed at rbl4.test.ex
 >>> warn: condition test failed in ACL "check_mail"
 >>> DNS lookup for 14.12.11.V4NET.rbl4.test.ex failed
 >>> => that means V4NET.11.12.14 is not listed at rbl4.test.ex
 >>> warn: condition test failed in ACL "check_mail"
->>> processing "warn" (TESTSUITE/test-config 37)
+>>> processing "warn" (TESTSUITE/test-config 38)
 >>> check dnslists = rbl4.test.ex&127.0.0.3
 >>> dnslists check: rbl4.test.ex&127.0.0.3
 >>> dnslists: using result of previous lookup
 >>> DNS lookup for 14.12.11.V4NET.rbl4.test.ex failed
 >>> => that means V4NET.11.12.14 is not listed at rbl4.test.ex
 >>> warn: condition test failed in ACL "check_mail"
 >>> check dnslists = rbl4.test.ex&127.0.0.3
 >>> dnslists check: rbl4.test.ex&127.0.0.3
 >>> dnslists: using result of previous lookup
 >>> DNS lookup for 14.12.11.V4NET.rbl4.test.ex failed
 >>> => that means V4NET.11.12.14 is not listed at rbl4.test.ex
 >>> warn: condition test failed in ACL "check_mail"
->>> processing "warn" (TESTSUITE/test-config 38)
+>>> processing "warn" (TESTSUITE/test-config 39)
 >>> check dnslists = rbl4.test.ex!&0.0.0.7
 >>> dnslists check: rbl4.test.ex!&0.0.0.7
 >>> dnslists: using result of previous lookup
 >>> DNS lookup for 14.12.11.V4NET.rbl4.test.ex failed
 >>> => that means V4NET.11.12.14 is not listed at rbl4.test.ex
 >>> warn: condition test failed in ACL "check_mail"
 >>> check dnslists = rbl4.test.ex!&0.0.0.7
 >>> dnslists check: rbl4.test.ex!&0.0.0.7
 >>> dnslists: using result of previous lookup
 >>> DNS lookup for 14.12.11.V4NET.rbl4.test.ex failed
 >>> => that means V4NET.11.12.14 is not listed at rbl4.test.ex
 >>> warn: condition test failed in ACL "check_mail"
->>> processing "warn" (TESTSUITE/test-config 40)
+>>> processing "warn" (TESTSUITE/test-config 41)
 >>> check dnslists = rbl5.test.ex,rbl4.test.ex=127.0.0.128
 >>> dnslists check: rbl5.test.ex,rbl4.test.ex=127.0.0.128
 >>> dnslists: using result of previous lookup
 >>> DNS lookup for 14.12.11.V4NET.rbl4.test.ex failed
 >>> => that means V4NET.11.12.14 is not listed at rbl4.test.ex
 >>> warn: condition test failed in ACL "check_mail"
 >>> check dnslists = rbl5.test.ex,rbl4.test.ex=127.0.0.128
 >>> dnslists check: rbl5.test.ex,rbl4.test.ex=127.0.0.128
 >>> dnslists: using result of previous lookup
 >>> DNS lookup for 14.12.11.V4NET.rbl4.test.ex failed
 >>> => that means V4NET.11.12.14 is not listed at rbl4.test.ex
 >>> warn: condition test failed in ACL "check_mail"
->>> processing "accept" (TESTSUITE/test-config 42)
+>>> processing "accept" (TESTSUITE/test-config 43)
 >>> accept: condition test succeeded in ACL "check_mail"
 >>> end of ACL "check_mail": ACCEPT
 >>> using ACL "check_recipient"
 >>> accept: condition test succeeded in ACL "check_mail"
 >>> end of ACL "check_mail": ACCEPT
 >>> using ACL "check_recipient"
->>> processing "warn" (TESTSUITE/test-config 46)
+>>> processing "warn" (TESTSUITE/test-config 47)
 >>>   message: X-Warn: host is listed in $dnslist_domain but not =127.0.0.3${if def:dnslist_text{\n  $dnslist_text}}
 >>> check dnslists = rbl3.test.ex!=127.0.0.3
 >>> dnslists check: rbl3.test.ex!=127.0.0.3
 >>>   message: X-Warn: host is listed in $dnslist_domain but not =127.0.0.3${if def:dnslist_text{\n  $dnslist_text}}
 >>> check dnslists = rbl3.test.ex!=127.0.0.3
 >>> dnslists check: rbl3.test.ex!=127.0.0.3
@@ -49,7 +49,7 @@
 >>> DNS lookup for 14.12.11.V4NET.rbl3.test.ex succeeded (yielding 127.0.0.2)
 >>> => that means V4NET.11.12.14 is listed at rbl3.test.ex
 >>> warn: condition test succeeded in ACL "check_recipient"
 >>> DNS lookup for 14.12.11.V4NET.rbl3.test.ex succeeded (yielding 127.0.0.2)
 >>> => that means V4NET.11.12.14 is listed at rbl3.test.ex
 >>> warn: condition test succeeded in ACL "check_recipient"
->>> processing "deny" (TESTSUITE/test-config 49)
+>>> processing "deny" (TESTSUITE/test-config 50)
 >>>   message: host is listed in $dnslist_domain with value 127.0.0.3${if def:dnslist_text{\n$dnslist_text}}
 >>> check dnslists = rbl3.test.ex=127.0.0.3
 >>> dnslists check: rbl3.test.ex=127.0.0.3
 >>>   message: host is listed in $dnslist_domain with value 127.0.0.3${if def:dnslist_text{\n$dnslist_text}}
 >>> check dnslists = rbl3.test.ex=127.0.0.3
 >>> dnslists check: rbl3.test.ex=127.0.0.3
@@ -58,7 +58,7 @@
 >>> => but we are not accepting this block class because
 >>> => there was no match for =127.0.0.3
 >>> deny: condition test failed in ACL "check_recipient"
 >>> => but we are not accepting this block class because
 >>> => there was no match for =127.0.0.3
 >>> deny: condition test failed in ACL "check_recipient"
->>> processing "require" (TESTSUITE/test-config 51)
+>>> processing "require" (TESTSUITE/test-config 52)
 >>> check verify = sender
 >>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 >>> routing postmaster@exim.test.ex
 >>> check verify = sender
 >>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 >>> routing postmaster@exim.test.ex
@@ -73,7 +73,7 @@
 >>> routed by localuser router
 >>> ----------- end verify ------------
 >>> require: condition test succeeded in ACL "check_recipient"
 >>> routed by localuser router
 >>> ----------- end verify ------------
 >>> require: condition test succeeded in ACL "check_recipient"
->>> processing "deny" (TESTSUITE/test-config 52)
+>>> processing "deny" (TESTSUITE/test-config 53)
 >>>   message: unrouteable address
 >>> check !verify = recipient
 >>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 >>>   message: unrouteable address
 >>> check !verify = recipient
 >>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 >>> routed by localuser router
 >>> ----------- end verify ------------
 >>> deny: condition test failed in ACL "check_recipient"
 >>> routed by localuser router
 >>> ----------- end verify ------------
 >>> deny: condition test failed in ACL "check_recipient"
->>> processing "accept" (TESTSUITE/test-config 54)
+>>> processing "accept" (TESTSUITE/test-config 55)
 >>> check domains = +local_domains
 >>> exim.test.ex in "exim.test.ex"? yes (matched "exim.test.ex")
 >>> exim.test.ex in "+local_domains"? yes (matched "+local_domains")
 >>> accept: condition test succeeded in ACL "check_recipient"
 >>> end of ACL "check_recipient": ACCEPT
 >>> using ACL "check_recipient"
 >>> check domains = +local_domains
 >>> exim.test.ex in "exim.test.ex"? yes (matched "exim.test.ex")
 >>> exim.test.ex in "+local_domains"? yes (matched "+local_domains")
 >>> accept: condition test succeeded in ACL "check_recipient"
 >>> end of ACL "check_recipient": ACCEPT
 >>> using ACL "check_recipient"
->>> processing "warn" (TESTSUITE/test-config 46)
+>>> processing "warn" (TESTSUITE/test-config 47)
 >>>   message: X-Warn: host is listed in $dnslist_domain but not =127.0.0.3${if def:dnslist_text{\n  $dnslist_text}}
 >>> check dnslists = rbl3.test.ex!=127.0.0.3
 >>> dnslists check: rbl3.test.ex!=127.0.0.3
 >>>   message: X-Warn: host is listed in $dnslist_domain but not =127.0.0.3${if def:dnslist_text{\n  $dnslist_text}}
 >>> check dnslists = rbl3.test.ex!=127.0.0.3
 >>> dnslists check: rbl3.test.ex!=127.0.0.3
 >>> DNS lookup for 14.12.11.V4NET.rbl3.test.ex succeeded (yielding 127.0.0.2)
 >>> => that means V4NET.11.12.14 is listed at rbl3.test.ex
 >>> warn: condition test succeeded in ACL "check_recipient"
 >>> DNS lookup for 14.12.11.V4NET.rbl3.test.ex succeeded (yielding 127.0.0.2)
 >>> => that means V4NET.11.12.14 is listed at rbl3.test.ex
 >>> warn: condition test succeeded in ACL "check_recipient"
->>> processing "deny" (TESTSUITE/test-config 49)
+>>> processing "deny" (TESTSUITE/test-config 50)
 >>>   message: host is listed in $dnslist_domain with value 127.0.0.3${if def:dnslist_text{\n$dnslist_text}}
 >>> check dnslists = rbl3.test.ex=127.0.0.3
 >>> dnslists check: rbl3.test.ex=127.0.0.3
 >>>   message: host is listed in $dnslist_domain with value 127.0.0.3${if def:dnslist_text{\n$dnslist_text}}
 >>> check dnslists = rbl3.test.ex=127.0.0.3
 >>> dnslists check: rbl3.test.ex=127.0.0.3
 >>> => but we are not accepting this block class because
 >>> => there was no match for =127.0.0.3
 >>> deny: condition test failed in ACL "check_recipient"
 >>> => but we are not accepting this block class because
 >>> => there was no match for =127.0.0.3
 >>> deny: condition test failed in ACL "check_recipient"
->>> processing "require" (TESTSUITE/test-config 51)
+>>> processing "require" (TESTSUITE/test-config 52)
 >>> check verify = sender
 >>> using cached sender verify result
 >>> require: condition test succeeded in ACL "check_recipient"
 >>> check verify = sender
 >>> using cached sender verify result
 >>> require: condition test succeeded in ACL "check_recipient"
->>> processing "deny" (TESTSUITE/test-config 52)
+>>> processing "deny" (TESTSUITE/test-config 53)
 >>>   message: unrouteable address
 >>> check !verify = recipient
 >>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 >>>   message: unrouteable address
 >>> check !verify = recipient
 >>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 >>> routed by system_aliases router
 >>> ----------- end verify ------------
 >>> deny: condition test failed in ACL "check_recipient"
 >>> routed by system_aliases router
 >>> ----------- end verify ------------
 >>> deny: condition test failed in ACL "check_recipient"
->>> processing "accept" (TESTSUITE/test-config 54)
+>>> processing "accept" (TESTSUITE/test-config 55)
 >>> check domains = +local_domains
 >>> exim.test.ex in "exim.test.ex"? yes (matched "exim.test.ex")
 >>> exim.test.ex in "+local_domains"? yes (matched "+local_domains")
 >>> check domains = +local_domains
 >>> exim.test.ex in "exim.test.ex"? yes (matched "exim.test.ex")
 >>> exim.test.ex in "+local_domains"? yes (matched "+local_domains")
@@ -139,7 +139,7 @@ LOG: 10HmaY-0005vi-00 <= postmaster@exim.test.ex H=[V4NET.11.12.14] P=smtp S=sss
 >>> host in helo_try_verify_hosts? no (option unset)
 >>> host in helo_accept_junk_hosts? no (option unset)
 >>> using ACL "check_mail"
 >>> host in helo_try_verify_hosts? no (option unset)
 >>> host in helo_accept_junk_hosts? no (option unset)
 >>> using ACL "check_mail"
->>> processing "warn" (TESTSUITE/test-config 36)
+>>> processing "warn" (TESTSUITE/test-config 37)
 >>> check dnslists = rbl4.test.ex&0.0.0.6
 >>> dnslists check: rbl4.test.ex&0.0.0.6
 >>> new DNS lookup for 15.12.11.V4NET.rbl4.test.ex
 >>> check dnslists = rbl4.test.ex&0.0.0.6
 >>> dnslists check: rbl4.test.ex&0.0.0.6
 >>> new DNS lookup for 15.12.11.V4NET.rbl4.test.ex
@@ -147,32 +147,32 @@ LOG: 10HmaY-0005vi-00 <= postmaster@exim.test.ex H=[V4NET.11.12.14] P=smtp S=sss
 >>> DNS lookup for 15.12.11.V4NET.rbl4.test.ex failed
 >>> => that means V4NET.11.12.15 is not listed at rbl4.test.ex
 >>> warn: condition test failed in ACL "check_mail"
 >>> DNS lookup for 15.12.11.V4NET.rbl4.test.ex failed
 >>> => that means V4NET.11.12.15 is not listed at rbl4.test.ex
 >>> warn: condition test failed in ACL "check_mail"
->>> processing "warn" (TESTSUITE/test-config 37)
+>>> processing "warn" (TESTSUITE/test-config 38)
 >>> check dnslists = rbl4.test.ex&127.0.0.3
 >>> dnslists check: rbl4.test.ex&127.0.0.3
 >>> dnslists: using result of previous lookup
 >>> DNS lookup for 15.12.11.V4NET.rbl4.test.ex failed
 >>> => that means V4NET.11.12.15 is not listed at rbl4.test.ex
 >>> warn: condition test failed in ACL "check_mail"
 >>> check dnslists = rbl4.test.ex&127.0.0.3
 >>> dnslists check: rbl4.test.ex&127.0.0.3
 >>> dnslists: using result of previous lookup
 >>> DNS lookup for 15.12.11.V4NET.rbl4.test.ex failed
 >>> => that means V4NET.11.12.15 is not listed at rbl4.test.ex
 >>> warn: condition test failed in ACL "check_mail"
->>> processing "warn" (TESTSUITE/test-config 38)
+>>> processing "warn" (TESTSUITE/test-config 39)
 >>> check dnslists = rbl4.test.ex!&0.0.0.7
 >>> dnslists check: rbl4.test.ex!&0.0.0.7
 >>> dnslists: using result of previous lookup
 >>> DNS lookup for 15.12.11.V4NET.rbl4.test.ex failed
 >>> => that means V4NET.11.12.15 is not listed at rbl4.test.ex
 >>> warn: condition test failed in ACL "check_mail"
 >>> check dnslists = rbl4.test.ex!&0.0.0.7
 >>> dnslists check: rbl4.test.ex!&0.0.0.7
 >>> dnslists: using result of previous lookup
 >>> DNS lookup for 15.12.11.V4NET.rbl4.test.ex failed
 >>> => that means V4NET.11.12.15 is not listed at rbl4.test.ex
 >>> warn: condition test failed in ACL "check_mail"
->>> processing "warn" (TESTSUITE/test-config 40)
+>>> processing "warn" (TESTSUITE/test-config 41)
 >>> check dnslists = rbl5.test.ex,rbl4.test.ex=127.0.0.128
 >>> dnslists check: rbl5.test.ex,rbl4.test.ex=127.0.0.128
 >>> dnslists: using result of previous lookup
 >>> DNS lookup for 15.12.11.V4NET.rbl4.test.ex failed
 >>> => that means V4NET.11.12.15 is not listed at rbl4.test.ex
 >>> warn: condition test failed in ACL "check_mail"
 >>> check dnslists = rbl5.test.ex,rbl4.test.ex=127.0.0.128
 >>> dnslists check: rbl5.test.ex,rbl4.test.ex=127.0.0.128
 >>> dnslists: using result of previous lookup
 >>> DNS lookup for 15.12.11.V4NET.rbl4.test.ex failed
 >>> => that means V4NET.11.12.15 is not listed at rbl4.test.ex
 >>> warn: condition test failed in ACL "check_mail"
->>> processing "accept" (TESTSUITE/test-config 42)
+>>> processing "accept" (TESTSUITE/test-config 43)
 >>> accept: condition test succeeded in ACL "check_mail"
 >>> end of ACL "check_mail": ACCEPT
 >>> using ACL "check_recipient"
 >>> accept: condition test succeeded in ACL "check_mail"
 >>> end of ACL "check_mail": ACCEPT
 >>> using ACL "check_recipient"
->>> processing "warn" (TESTSUITE/test-config 46)
+>>> processing "warn" (TESTSUITE/test-config 47)
 >>>   message: X-Warn: host is listed in $dnslist_domain but not =127.0.0.3${if def:dnslist_text{\n  $dnslist_text}}
 >>> check dnslists = rbl3.test.ex!=127.0.0.3
 >>> dnslists check: rbl3.test.ex!=127.0.0.3
 >>>   message: X-Warn: host is listed in $dnslist_domain but not =127.0.0.3${if def:dnslist_text{\n  $dnslist_text}}
 >>> check dnslists = rbl3.test.ex!=127.0.0.3
 >>> dnslists check: rbl3.test.ex!=127.0.0.3
@@ -182,7 +182,7 @@ LOG: 10HmaY-0005vi-00 <= postmaster@exim.test.ex H=[V4NET.11.12.14] P=smtp S=sss
 >>> => but we are not accepting this block class because
 >>> => there was an exclude match for =127.0.0.3
 >>> warn: condition test failed in ACL "check_recipient"
 >>> => but we are not accepting this block class because
 >>> => there was an exclude match for =127.0.0.3
 >>> warn: condition test failed in ACL "check_recipient"
->>> processing "deny" (TESTSUITE/test-config 49)
+>>> processing "deny" (TESTSUITE/test-config 50)
 >>>   message: host is listed in $dnslist_domain with value 127.0.0.3${if def:dnslist_text{\n$dnslist_text}}
 >>> check dnslists = rbl3.test.ex=127.0.0.3
 >>> dnslists check: rbl3.test.ex=127.0.0.3
 >>>   message: host is listed in $dnslist_domain with value 127.0.0.3${if def:dnslist_text{\n$dnslist_text}}
 >>> check dnslists = rbl3.test.ex=127.0.0.3
 >>> dnslists check: rbl3.test.ex=127.0.0.3
@@ -201,7 +201,7 @@ LOG: H=[V4NET.11.12.15] F=<postmaster@exim.test.ex> rejected RCPT <userx@exim.te
 >>> host in helo_try_verify_hosts? no (option unset)
 >>> host in helo_accept_junk_hosts? no (option unset)
 >>> using ACL "check_mail"
 >>> host in helo_try_verify_hosts? no (option unset)
 >>> host in helo_accept_junk_hosts? no (option unset)
 >>> using ACL "check_mail"
->>> processing "warn" (TESTSUITE/test-config 36)
+>>> processing "warn" (TESTSUITE/test-config 37)
 >>> check dnslists = rbl4.test.ex&0.0.0.6
 >>> dnslists check: rbl4.test.ex&0.0.0.6
 >>> new DNS lookup for 20.12.11.V4NET.rbl4.test.ex
 >>> check dnslists = rbl4.test.ex&0.0.0.6
 >>> dnslists check: rbl4.test.ex&0.0.0.6
 >>> new DNS lookup for 20.12.11.V4NET.rbl4.test.ex
@@ -209,7 +209,7 @@ LOG: H=[V4NET.11.12.15] F=<postmaster@exim.test.ex> rejected RCPT <userx@exim.te
 >>> DNS lookup for 20.12.11.V4NET.rbl4.test.ex succeeded (yielding 127.0.0.6)
 >>> => that means V4NET.11.12.20 is listed at rbl4.test.ex
 >>> warn: condition test succeeded in ACL "check_mail"
 >>> DNS lookup for 20.12.11.V4NET.rbl4.test.ex succeeded (yielding 127.0.0.6)
 >>> => that means V4NET.11.12.20 is listed at rbl4.test.ex
 >>> warn: condition test succeeded in ACL "check_mail"
->>> processing "warn" (TESTSUITE/test-config 37)
+>>> processing "warn" (TESTSUITE/test-config 38)
 >>> check dnslists = rbl4.test.ex&127.0.0.3
 >>> dnslists check: rbl4.test.ex&127.0.0.3
 >>> dnslists: using result of previous lookup
 >>> check dnslists = rbl4.test.ex&127.0.0.3
 >>> dnslists check: rbl4.test.ex&127.0.0.3
 >>> dnslists: using result of previous lookup
@@ -217,7 +217,7 @@ LOG: H=[V4NET.11.12.15] F=<postmaster@exim.test.ex> rejected RCPT <userx@exim.te
 >>> => but we are not accepting this block class because
 >>> => there was no match for &127.0.0.3
 >>> warn: condition test failed in ACL "check_mail"
 >>> => but we are not accepting this block class because
 >>> => there was no match for &127.0.0.3
 >>> warn: condition test failed in ACL "check_mail"
->>> processing "warn" (TESTSUITE/test-config 38)
+>>> processing "warn" (TESTSUITE/test-config 39)
 >>> check dnslists = rbl4.test.ex!&0.0.0.7
 >>> dnslists check: rbl4.test.ex!&0.0.0.7
 >>> dnslists: using result of previous lookup
 >>> check dnslists = rbl4.test.ex!&0.0.0.7
 >>> dnslists check: rbl4.test.ex!&0.0.0.7
 >>> dnslists: using result of previous lookup
@@ -226,7 +226,7 @@ LOG: H=[V4NET.11.12.15] F=<postmaster@exim.test.ex> rejected RCPT <userx@exim.te
 >>> check add_header = DNSlist: $dnslist_domain $dnslist_text $dnslist_matched
 >>>                  = DNSlist: rbl4.test.ex  V4NET.11.12.20
 >>> warn: condition test succeeded in ACL "check_mail"
 >>> check add_header = DNSlist: $dnslist_domain $dnslist_text $dnslist_matched
 >>>                  = DNSlist: rbl4.test.ex  V4NET.11.12.20
 >>> warn: condition test succeeded in ACL "check_mail"
->>> processing "warn" (TESTSUITE/test-config 40)
+>>> processing "warn" (TESTSUITE/test-config 41)
 >>> check dnslists = rbl5.test.ex,rbl4.test.ex=127.0.0.128
 >>> dnslists check: rbl5.test.ex,rbl4.test.ex=127.0.0.128
 >>> dnslists: using result of previous lookup
 >>> check dnslists = rbl5.test.ex,rbl4.test.ex=127.0.0.128
 >>> dnslists check: rbl5.test.ex,rbl4.test.ex=127.0.0.128
 >>> dnslists: using result of previous lookup
@@ -234,7 +234,7 @@ LOG: H=[V4NET.11.12.15] F=<postmaster@exim.test.ex> rejected RCPT <userx@exim.te
 >>> => but we are not accepting this block class because
 >>> => there was no match for =127.0.0.128
 >>> warn: condition test failed in ACL "check_mail"
 >>> => but we are not accepting this block class because
 >>> => there was no match for =127.0.0.128
 >>> warn: condition test failed in ACL "check_mail"
->>> processing "accept" (TESTSUITE/test-config 42)
+>>> processing "accept" (TESTSUITE/test-config 43)
 >>> accept: condition test succeeded in ACL "check_mail"
 >>> end of ACL "check_mail": ACCEPT
 >>> host in hosts_connection_nolog? no (option unset)
 >>> accept: condition test succeeded in ACL "check_mail"
 >>> end of ACL "check_mail": ACCEPT
 >>> host in hosts_connection_nolog? no (option unset)
@@ -246,7 +246,7 @@ LOG: H=[V4NET.11.12.15] F=<postmaster@exim.test.ex> rejected RCPT <userx@exim.te
 >>> host in helo_try_verify_hosts? no (option unset)
 >>> host in helo_accept_junk_hosts? no (option unset)
 >>> using ACL "check_mail"
 >>> host in helo_try_verify_hosts? no (option unset)
 >>> host in helo_accept_junk_hosts? no (option unset)
 >>> using ACL "check_mail"
->>> processing "warn" (TESTSUITE/test-config 36)
+>>> processing "warn" (TESTSUITE/test-config 37)
 >>> check dnslists = rbl4.test.ex&0.0.0.6
 >>> dnslists check: rbl4.test.ex&0.0.0.6
 >>> new DNS lookup for 21.12.11.V4NET.rbl4.test.ex
 >>> check dnslists = rbl4.test.ex&0.0.0.6
 >>> dnslists check: rbl4.test.ex&0.0.0.6
 >>> new DNS lookup for 21.12.11.V4NET.rbl4.test.ex
@@ -254,14 +254,14 @@ LOG: H=[V4NET.11.12.15] F=<postmaster@exim.test.ex> rejected RCPT <userx@exim.te
 >>> DNS lookup for 21.12.11.V4NET.rbl4.test.ex succeeded (yielding 127.0.0.7)
 >>> => that means V4NET.11.12.21 is listed at rbl4.test.ex
 >>> warn: condition test succeeded in ACL "check_mail"
 >>> DNS lookup for 21.12.11.V4NET.rbl4.test.ex succeeded (yielding 127.0.0.7)
 >>> => that means V4NET.11.12.21 is listed at rbl4.test.ex
 >>> warn: condition test succeeded in ACL "check_mail"
->>> processing "warn" (TESTSUITE/test-config 37)
+>>> processing "warn" (TESTSUITE/test-config 38)
 >>> check dnslists = rbl4.test.ex&127.0.0.3
 >>> dnslists check: rbl4.test.ex&127.0.0.3
 >>> dnslists: using result of previous lookup
 >>> DNS lookup for 21.12.11.V4NET.rbl4.test.ex succeeded (yielding 127.0.0.7)
 >>> => that means V4NET.11.12.21 is listed at rbl4.test.ex
 >>> warn: condition test succeeded in ACL "check_mail"
 >>> check dnslists = rbl4.test.ex&127.0.0.3
 >>> dnslists check: rbl4.test.ex&127.0.0.3
 >>> dnslists: using result of previous lookup
 >>> DNS lookup for 21.12.11.V4NET.rbl4.test.ex succeeded (yielding 127.0.0.7)
 >>> => that means V4NET.11.12.21 is listed at rbl4.test.ex
 >>> warn: condition test succeeded in ACL "check_mail"
->>> processing "warn" (TESTSUITE/test-config 38)
+>>> processing "warn" (TESTSUITE/test-config 39)
 >>> check dnslists = rbl4.test.ex!&0.0.0.7
 >>> dnslists check: rbl4.test.ex!&0.0.0.7
 >>> dnslists: using result of previous lookup
 >>> check dnslists = rbl4.test.ex!&0.0.0.7
 >>> dnslists check: rbl4.test.ex!&0.0.0.7
 >>> dnslists: using result of previous lookup
@@ -269,7 +269,7 @@ LOG: H=[V4NET.11.12.15] F=<postmaster@exim.test.ex> rejected RCPT <userx@exim.te
 >>> => but we are not accepting this block class because
 >>> => there was an exclude match for &0.0.0.7
 >>> warn: condition test failed in ACL "check_mail"
 >>> => but we are not accepting this block class because
 >>> => there was an exclude match for &0.0.0.7
 >>> warn: condition test failed in ACL "check_mail"
->>> processing "warn" (TESTSUITE/test-config 40)
+>>> processing "warn" (TESTSUITE/test-config 41)
 >>> check dnslists = rbl5.test.ex,rbl4.test.ex=127.0.0.128
 >>> dnslists check: rbl5.test.ex,rbl4.test.ex=127.0.0.128
 >>> dnslists: using result of previous lookup
 >>> check dnslists = rbl5.test.ex,rbl4.test.ex=127.0.0.128
 >>> dnslists check: rbl5.test.ex,rbl4.test.ex=127.0.0.128
 >>> dnslists: using result of previous lookup
@@ -277,7 +277,7 @@ LOG: H=[V4NET.11.12.15] F=<postmaster@exim.test.ex> rejected RCPT <userx@exim.te
 >>> => but we are not accepting this block class because
 >>> => there was no match for =127.0.0.128
 >>> warn: condition test failed in ACL "check_mail"
 >>> => but we are not accepting this block class because
 >>> => there was no match for =127.0.0.128
 >>> warn: condition test failed in ACL "check_mail"
->>> processing "accept" (TESTSUITE/test-config 42)
+>>> processing "accept" (TESTSUITE/test-config 43)
 >>> accept: condition test succeeded in ACL "check_mail"
 >>> end of ACL "check_mail": ACCEPT
 >>> host in hosts_connection_nolog? no (option unset)
 >>> accept: condition test succeeded in ACL "check_mail"
 >>> end of ACL "check_mail": ACCEPT
 >>> host in hosts_connection_nolog? no (option unset)
@@ -376,7 +376,14 @@ LOG: H=[V4NET.11.12.15] F=<postmaster@exim.test.ex> rejected RCPT <userx@exim.te
 >>> => but we are not accepting this block class because
 >>> => there were no IP addresses that did not match for ==127.0.0.1,127.0.0.2
 >>> warn: condition test failed in ACL "check_vrfy"
 >>> => but we are not accepting this block class because
 >>> => there were no IP addresses that did not match for ==127.0.0.1,127.0.0.2
 >>> warn: condition test failed in ACL "check_vrfy"
->>> processing "accept" (TESTSUITE/test-config 33)
+>>> processing "warn" (TESTSUITE/test-config 33)
+>>> check dnslists = rbl.test.ex
+>>> dnslists check: rbl.test.ex
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 2.13.13.V4NET.rbl.test.ex succeeded (yielding 127.0.0.1, 127.0.0.2)
+>>> => that means V4NET.13.13.2 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "accept" (TESTSUITE/test-config 34)
 >>> accept: condition test succeeded in ACL "check_vrfy"
 >>> end of ACL "check_vrfy": ACCEPT
 >>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 >>> accept: condition test succeeded in ACL "check_vrfy"
 >>> end of ACL "check_vrfy": ACCEPT
 >>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@@ -386,3 +393,527 @@ LOG: H=[V4NET.11.12.15] F=<postmaster@exim.test.ex> rejected RCPT <userx@exim.te
 >>> a in "userx"? no (end of list)
 >>> no more routers
 LOG: VRFY failed for a@b H=[V4NET.13.13.2]
 >>> a in "userx"? no (end of list)
 >>> no more routers
 LOG: VRFY failed for a@b H=[V4NET.13.13.2]
+>>> host in hosts_connection_nolog? no (option unset)
+>>> host in host_lookup? no (option unset)
+>>> host in host_reject_connection? no (option unset)
+>>> host in sender_unqualified_hosts? no (option unset)
+>>> host in recipient_unqualified_hosts? no (option unset)
+>>> host in helo_verify_hosts? no (option unset)
+>>> host in helo_try_verify_hosts? no (option unset)
+>>> host in helo_accept_junk_hosts? no (option unset)
+>>> host in smtp_accept_max_nonmail_hosts? yes (matched "*")
+>>> using ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 25)
+>>> check dnslists = rbl.test.ex=127.0.0.1
+>>> dnslists check: rbl.test.ex=127.0.0.1
+>>> new DNS lookup for 100.13.13.V4NET.rbl.test.ex
+>>> dnslists: wrote cache entry, ttl=3600
+>>> DNS lookup for 100.13.13.V4NET.rbl.test.ex succeeded (yielding 0.0.0.0)
+>>> => but we are not accepting this block class because
+>>> => there was no match for =127.0.0.1
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 26)
+>>> check dnslists = rbl.test.ex!=127.0.0.1
+>>> dnslists check: rbl.test.ex!=127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 100.13.13.V4NET.rbl.test.ex succeeded (yielding 0.0.0.0)
+>>> => that means V4NET.13.13.100 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 27)
+>>> check dnslists = rbl.test.ex!=127.0.0.3
+>>> dnslists check: rbl.test.ex!=127.0.0.3
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 100.13.13.V4NET.rbl.test.ex succeeded (yielding 0.0.0.0)
+>>> => that means V4NET.13.13.100 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 28)
+>>> check dnslists = rbl.test.ex==127.0.0.1
+>>> dnslists check: rbl.test.ex==127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 100.13.13.V4NET.rbl.test.ex succeeded (yielding 0.0.0.0)
+>>> => but we are not accepting this block class because
+>>> => there was an IP address that did not match for ==127.0.0.1
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 29)
+>>> check dnslists = rbl.test.ex==127.0.0.1,127.0.0.2
+>>> dnslists check: rbl.test.ex==127.0.0.1,127.0.0.2
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 100.13.13.V4NET.rbl.test.ex succeeded (yielding 0.0.0.0)
+>>> => but we are not accepting this block class because
+>>> => there was an IP address that did not match for ==127.0.0.1,127.0.0.2
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 30)
+>>> check dnslists = rbl.test.ex!==127.0.0.1
+>>> dnslists check: rbl.test.ex!==127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 100.13.13.V4NET.rbl.test.ex succeeded (yielding 0.0.0.0)
+>>> => that means V4NET.13.13.100 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 31)
+>>> check dnslists = rbl.test.ex!==127.0.0.3
+>>> dnslists check: rbl.test.ex!==127.0.0.3
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 100.13.13.V4NET.rbl.test.ex succeeded (yielding 0.0.0.0)
+>>> => that means V4NET.13.13.100 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 32)
+>>> check dnslists = rbl.test.ex!==127.0.0.1,127.0.0.2
+>>> dnslists check: rbl.test.ex!==127.0.0.1,127.0.0.2
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 100.13.13.V4NET.rbl.test.ex succeeded (yielding 0.0.0.0)
+>>> => that means V4NET.13.13.100 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 33)
+>>> check dnslists = rbl.test.ex
+>>> dnslists check: rbl.test.ex
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 100.13.13.V4NET.rbl.test.ex succeeded (yielding 0.0.0.0)
+LOG: DNS list lookup for V4NET.13.13.100 at rbl.test.ex returned 0.0.0.0; not in 127.0/8 and discarded
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "accept" (TESTSUITE/test-config 34)
+>>> accept: condition test succeeded in ACL "check_vrfy"
+>>> end of ACL "check_vrfy": ACCEPT
+>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+>>> routing a@b
+>>> calling system_aliases router
+>>> system_aliases router declined for a@b
+>>> a in "userx"? no (end of list)
+>>> no more routers
+LOG: VRFY failed for a@b H=[V4NET.13.13.100]
+>>> host in hosts_connection_nolog? no (option unset)
+>>> host in host_lookup? no (option unset)
+>>> host in host_reject_connection? no (option unset)
+>>> host in sender_unqualified_hosts? no (option unset)
+>>> host in recipient_unqualified_hosts? no (option unset)
+>>> host in helo_verify_hosts? no (option unset)
+>>> host in helo_try_verify_hosts? no (option unset)
+>>> host in helo_accept_junk_hosts? no (option unset)
+>>> host in smtp_accept_max_nonmail_hosts? yes (matched "*")
+>>> using ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 25)
+>>> check dnslists = rbl.test.ex=127.0.0.1
+>>> dnslists check: rbl.test.ex=127.0.0.1
+>>> new DNS lookup for 101.13.13.V4NET.rbl.test.ex
+>>> dnslists: wrote cache entry, ttl=3600
+>>> DNS lookup for 101.13.13.V4NET.rbl.test.ex succeeded (yielding 126.255.255.255)
+>>> => but we are not accepting this block class because
+>>> => there was no match for =127.0.0.1
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 26)
+>>> check dnslists = rbl.test.ex!=127.0.0.1
+>>> dnslists check: rbl.test.ex!=127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 101.13.13.V4NET.rbl.test.ex succeeded (yielding 126.255.255.255)
+>>> => that means V4NET.13.13.101 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 27)
+>>> check dnslists = rbl.test.ex!=127.0.0.3
+>>> dnslists check: rbl.test.ex!=127.0.0.3
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 101.13.13.V4NET.rbl.test.ex succeeded (yielding 126.255.255.255)
+>>> => that means V4NET.13.13.101 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 28)
+>>> check dnslists = rbl.test.ex==127.0.0.1
+>>> dnslists check: rbl.test.ex==127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 101.13.13.V4NET.rbl.test.ex succeeded (yielding 126.255.255.255)
+>>> => but we are not accepting this block class because
+>>> => there was an IP address that did not match for ==127.0.0.1
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 29)
+>>> check dnslists = rbl.test.ex==127.0.0.1,127.0.0.2
+>>> dnslists check: rbl.test.ex==127.0.0.1,127.0.0.2
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 101.13.13.V4NET.rbl.test.ex succeeded (yielding 126.255.255.255)
+>>> => but we are not accepting this block class because
+>>> => there was an IP address that did not match for ==127.0.0.1,127.0.0.2
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 30)
+>>> check dnslists = rbl.test.ex!==127.0.0.1
+>>> dnslists check: rbl.test.ex!==127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 101.13.13.V4NET.rbl.test.ex succeeded (yielding 126.255.255.255)
+>>> => that means V4NET.13.13.101 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 31)
+>>> check dnslists = rbl.test.ex!==127.0.0.3
+>>> dnslists check: rbl.test.ex!==127.0.0.3
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 101.13.13.V4NET.rbl.test.ex succeeded (yielding 126.255.255.255)
+>>> => that means V4NET.13.13.101 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 32)
+>>> check dnslists = rbl.test.ex!==127.0.0.1,127.0.0.2
+>>> dnslists check: rbl.test.ex!==127.0.0.1,127.0.0.2
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 101.13.13.V4NET.rbl.test.ex succeeded (yielding 126.255.255.255)
+>>> => that means V4NET.13.13.101 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 33)
+>>> check dnslists = rbl.test.ex
+>>> dnslists check: rbl.test.ex
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 101.13.13.V4NET.rbl.test.ex succeeded (yielding 126.255.255.255)
+LOG: DNS list lookup for V4NET.13.13.101 at rbl.test.ex returned 126.255.255.255; not in 127.0/8 and discarded
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "accept" (TESTSUITE/test-config 34)
+>>> accept: condition test succeeded in ACL "check_vrfy"
+>>> end of ACL "check_vrfy": ACCEPT
+>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+>>> routing a@b
+>>> calling system_aliases router
+>>> system_aliases router declined for a@b
+>>> a in "userx"? no (end of list)
+>>> no more routers
+LOG: VRFY failed for a@b H=[V4NET.13.13.101]
+>>> host in hosts_connection_nolog? no (option unset)
+>>> host in host_lookup? no (option unset)
+>>> host in host_reject_connection? no (option unset)
+>>> host in sender_unqualified_hosts? no (option unset)
+>>> host in recipient_unqualified_hosts? no (option unset)
+>>> host in helo_verify_hosts? no (option unset)
+>>> host in helo_try_verify_hosts? no (option unset)
+>>> host in helo_accept_junk_hosts? no (option unset)
+>>> host in smtp_accept_max_nonmail_hosts? yes (matched "*")
+>>> using ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 25)
+>>> check dnslists = rbl.test.ex=127.0.0.1
+>>> dnslists check: rbl.test.ex=127.0.0.1
+>>> new DNS lookup for 102.13.13.V4NET.rbl.test.ex
+>>> dnslists: wrote cache entry, ttl=3600
+>>> DNS lookup for 102.13.13.V4NET.rbl.test.ex succeeded (yielding 128.0.0.0)
+>>> => but we are not accepting this block class because
+>>> => there was no match for =127.0.0.1
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 26)
+>>> check dnslists = rbl.test.ex!=127.0.0.1
+>>> dnslists check: rbl.test.ex!=127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 102.13.13.V4NET.rbl.test.ex succeeded (yielding 128.0.0.0)
+>>> => that means V4NET.13.13.102 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 27)
+>>> check dnslists = rbl.test.ex!=127.0.0.3
+>>> dnslists check: rbl.test.ex!=127.0.0.3
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 102.13.13.V4NET.rbl.test.ex succeeded (yielding 128.0.0.0)
+>>> => that means V4NET.13.13.102 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 28)
+>>> check dnslists = rbl.test.ex==127.0.0.1
+>>> dnslists check: rbl.test.ex==127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 102.13.13.V4NET.rbl.test.ex succeeded (yielding 128.0.0.0)
+>>> => but we are not accepting this block class because
+>>> => there was an IP address that did not match for ==127.0.0.1
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 29)
+>>> check dnslists = rbl.test.ex==127.0.0.1,127.0.0.2
+>>> dnslists check: rbl.test.ex==127.0.0.1,127.0.0.2
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 102.13.13.V4NET.rbl.test.ex succeeded (yielding 128.0.0.0)
+>>> => but we are not accepting this block class because
+>>> => there was an IP address that did not match for ==127.0.0.1,127.0.0.2
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 30)
+>>> check dnslists = rbl.test.ex!==127.0.0.1
+>>> dnslists check: rbl.test.ex!==127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 102.13.13.V4NET.rbl.test.ex succeeded (yielding 128.0.0.0)
+>>> => that means V4NET.13.13.102 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 31)
+>>> check dnslists = rbl.test.ex!==127.0.0.3
+>>> dnslists check: rbl.test.ex!==127.0.0.3
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 102.13.13.V4NET.rbl.test.ex succeeded (yielding 128.0.0.0)
+>>> => that means V4NET.13.13.102 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 32)
+>>> check dnslists = rbl.test.ex!==127.0.0.1,127.0.0.2
+>>> dnslists check: rbl.test.ex!==127.0.0.1,127.0.0.2
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 102.13.13.V4NET.rbl.test.ex succeeded (yielding 128.0.0.0)
+>>> => that means V4NET.13.13.102 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 33)
+>>> check dnslists = rbl.test.ex
+>>> dnslists check: rbl.test.ex
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 102.13.13.V4NET.rbl.test.ex succeeded (yielding 128.0.0.0)
+LOG: DNS list lookup for V4NET.13.13.102 at rbl.test.ex returned 128.0.0.0; not in 127.0/8 and discarded
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "accept" (TESTSUITE/test-config 34)
+>>> accept: condition test succeeded in ACL "check_vrfy"
+>>> end of ACL "check_vrfy": ACCEPT
+>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+>>> routing a@b
+>>> calling system_aliases router
+>>> system_aliases router declined for a@b
+>>> a in "userx"? no (end of list)
+>>> no more routers
+LOG: VRFY failed for a@b H=[V4NET.13.13.102]
+>>> host in hosts_connection_nolog? no (option unset)
+>>> host in host_lookup? no (option unset)
+>>> host in host_reject_connection? no (option unset)
+>>> host in sender_unqualified_hosts? no (option unset)
+>>> host in recipient_unqualified_hosts? no (option unset)
+>>> host in helo_verify_hosts? no (option unset)
+>>> host in helo_try_verify_hosts? no (option unset)
+>>> host in helo_accept_junk_hosts? no (option unset)
+>>> host in smtp_accept_max_nonmail_hosts? yes (matched "*")
+>>> using ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 25)
+>>> check dnslists = rbl.test.ex=127.0.0.1
+>>> dnslists check: rbl.test.ex=127.0.0.1
+>>> new DNS lookup for 103.13.13.V4NET.rbl.test.ex
+>>> dnslists: wrote cache entry, ttl=3600
+>>> DNS lookup for 103.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255)
+>>> => but we are not accepting this block class because
+>>> => there was no match for =127.0.0.1
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 26)
+>>> check dnslists = rbl.test.ex!=127.0.0.1
+>>> dnslists check: rbl.test.ex!=127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 103.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255)
+>>> => that means V4NET.13.13.103 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 27)
+>>> check dnslists = rbl.test.ex!=127.0.0.3
+>>> dnslists check: rbl.test.ex!=127.0.0.3
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 103.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255)
+>>> => that means V4NET.13.13.103 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 28)
+>>> check dnslists = rbl.test.ex==127.0.0.1
+>>> dnslists check: rbl.test.ex==127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 103.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255)
+>>> => but we are not accepting this block class because
+>>> => there was an IP address that did not match for ==127.0.0.1
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 29)
+>>> check dnslists = rbl.test.ex==127.0.0.1,127.0.0.2
+>>> dnslists check: rbl.test.ex==127.0.0.1,127.0.0.2
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 103.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255)
+>>> => but we are not accepting this block class because
+>>> => there was an IP address that did not match for ==127.0.0.1,127.0.0.2
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 30)
+>>> check dnslists = rbl.test.ex!==127.0.0.1
+>>> dnslists check: rbl.test.ex!==127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 103.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255)
+>>> => that means V4NET.13.13.103 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 31)
+>>> check dnslists = rbl.test.ex!==127.0.0.3
+>>> dnslists check: rbl.test.ex!==127.0.0.3
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 103.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255)
+>>> => that means V4NET.13.13.103 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 32)
+>>> check dnslists = rbl.test.ex!==127.0.0.1,127.0.0.2
+>>> dnslists check: rbl.test.ex!==127.0.0.1,127.0.0.2
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 103.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255)
+>>> => that means V4NET.13.13.103 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 33)
+>>> check dnslists = rbl.test.ex
+>>> dnslists check: rbl.test.ex
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 103.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255)
+LOG: DNS list lookup for V4NET.13.13.103 at rbl.test.ex returned 255.255.255.255; not in 127.0/8 and discarded
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "accept" (TESTSUITE/test-config 34)
+>>> accept: condition test succeeded in ACL "check_vrfy"
+>>> end of ACL "check_vrfy": ACCEPT
+>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+>>> routing a@b
+>>> calling system_aliases router
+>>> system_aliases router declined for a@b
+>>> a in "userx"? no (end of list)
+>>> no more routers
+LOG: VRFY failed for a@b H=[V4NET.13.13.103]
+>>> host in hosts_connection_nolog? no (option unset)
+>>> host in host_lookup? no (option unset)
+>>> host in host_reject_connection? no (option unset)
+>>> host in sender_unqualified_hosts? no (option unset)
+>>> host in recipient_unqualified_hosts? no (option unset)
+>>> host in helo_verify_hosts? no (option unset)
+>>> host in helo_try_verify_hosts? no (option unset)
+>>> host in helo_accept_junk_hosts? no (option unset)
+>>> host in smtp_accept_max_nonmail_hosts? yes (matched "*")
+>>> using ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 25)
+>>> check dnslists = rbl.test.ex=127.0.0.1
+>>> dnslists check: rbl.test.ex=127.0.0.1
+>>> new DNS lookup for 104.13.13.V4NET.rbl.test.ex
+>>> dnslists: wrote cache entry, ttl=3600
+>>> DNS lookup for 104.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 127.0.0.0)
+>>> => but we are not accepting this block class because
+>>> => there was no match for =127.0.0.1
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 26)
+>>> check dnslists = rbl.test.ex!=127.0.0.1
+>>> dnslists check: rbl.test.ex!=127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 104.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 127.0.0.0)
+>>> => that means V4NET.13.13.104 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 27)
+>>> check dnslists = rbl.test.ex!=127.0.0.3
+>>> dnslists check: rbl.test.ex!=127.0.0.3
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 104.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 127.0.0.0)
+>>> => that means V4NET.13.13.104 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 28)
+>>> check dnslists = rbl.test.ex==127.0.0.1
+>>> dnslists check: rbl.test.ex==127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 104.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 127.0.0.0)
+>>> => but we are not accepting this block class because
+>>> => there was an IP address that did not match for ==127.0.0.1
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 29)
+>>> check dnslists = rbl.test.ex==127.0.0.1,127.0.0.2
+>>> dnslists check: rbl.test.ex==127.0.0.1,127.0.0.2
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 104.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 127.0.0.0)
+>>> => but we are not accepting this block class because
+>>> => there was an IP address that did not match for ==127.0.0.1,127.0.0.2
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 30)
+>>> check dnslists = rbl.test.ex!==127.0.0.1
+>>> dnslists check: rbl.test.ex!==127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 104.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 127.0.0.0)
+>>> => that means V4NET.13.13.104 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 31)
+>>> check dnslists = rbl.test.ex!==127.0.0.3
+>>> dnslists check: rbl.test.ex!==127.0.0.3
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 104.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 127.0.0.0)
+>>> => that means V4NET.13.13.104 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 32)
+>>> check dnslists = rbl.test.ex!==127.0.0.1,127.0.0.2
+>>> dnslists check: rbl.test.ex!==127.0.0.1,127.0.0.2
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 104.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 127.0.0.0)
+>>> => that means V4NET.13.13.104 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 33)
+>>> check dnslists = rbl.test.ex
+>>> dnslists check: rbl.test.ex
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 104.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 127.0.0.0)
+LOG: DNS list lookup for V4NET.13.13.104 at rbl.test.ex returned 255.255.255.255; not in 127.0/8 and discarded
+>>> => that means V4NET.13.13.104 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "accept" (TESTSUITE/test-config 34)
+>>> accept: condition test succeeded in ACL "check_vrfy"
+>>> end of ACL "check_vrfy": ACCEPT
+>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+>>> routing a@b
+>>> calling system_aliases router
+>>> system_aliases router declined for a@b
+>>> a in "userx"? no (end of list)
+>>> no more routers
+LOG: VRFY failed for a@b H=[V4NET.13.13.104]
+>>> host in hosts_connection_nolog? no (option unset)
+>>> host in host_lookup? no (option unset)
+>>> host in host_reject_connection? no (option unset)
+>>> host in sender_unqualified_hosts? no (option unset)
+>>> host in recipient_unqualified_hosts? no (option unset)
+>>> host in helo_verify_hosts? no (option unset)
+>>> host in helo_try_verify_hosts? no (option unset)
+>>> host in helo_accept_junk_hosts? no (option unset)
+>>> host in smtp_accept_max_nonmail_hosts? yes (matched "*")
+>>> using ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 25)
+>>> check dnslists = rbl.test.ex=127.0.0.1
+>>> dnslists check: rbl.test.ex=127.0.0.1
+>>> new DNS lookup for 105.13.13.V4NET.rbl.test.ex
+>>> dnslists: wrote cache entry, ttl=3600
+>>> DNS lookup for 105.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 255.255.255.254)
+>>> => but we are not accepting this block class because
+>>> => there was no match for =127.0.0.1
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 26)
+>>> check dnslists = rbl.test.ex!=127.0.0.1
+>>> dnslists check: rbl.test.ex!=127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 105.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 255.255.255.254)
+>>> => that means V4NET.13.13.105 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 27)
+>>> check dnslists = rbl.test.ex!=127.0.0.3
+>>> dnslists check: rbl.test.ex!=127.0.0.3
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 105.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 255.255.255.254)
+>>> => that means V4NET.13.13.105 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 28)
+>>> check dnslists = rbl.test.ex==127.0.0.1
+>>> dnslists check: rbl.test.ex==127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 105.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 255.255.255.254)
+>>> => but we are not accepting this block class because
+>>> => there was an IP address that did not match for ==127.0.0.1
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 29)
+>>> check dnslists = rbl.test.ex==127.0.0.1,127.0.0.2
+>>> dnslists check: rbl.test.ex==127.0.0.1,127.0.0.2
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 105.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 255.255.255.254)
+>>> => but we are not accepting this block class because
+>>> => there was an IP address that did not match for ==127.0.0.1,127.0.0.2
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 30)
+>>> check dnslists = rbl.test.ex!==127.0.0.1
+>>> dnslists check: rbl.test.ex!==127.0.0.1
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 105.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 255.255.255.254)
+>>> => that means V4NET.13.13.105 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 31)
+>>> check dnslists = rbl.test.ex!==127.0.0.3
+>>> dnslists check: rbl.test.ex!==127.0.0.3
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 105.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 255.255.255.254)
+>>> => that means V4NET.13.13.105 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 32)
+>>> check dnslists = rbl.test.ex!==127.0.0.1,127.0.0.2
+>>> dnslists check: rbl.test.ex!==127.0.0.1,127.0.0.2
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 105.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 255.255.255.254)
+>>> => that means V4NET.13.13.105 is listed at rbl.test.ex
+>>> warn: condition test succeeded in ACL "check_vrfy"
+>>> processing "warn" (TESTSUITE/test-config 33)
+>>> check dnslists = rbl.test.ex
+>>> dnslists check: rbl.test.ex
+>>> dnslists: using result of previous lookup
+>>> DNS lookup for 105.13.13.V4NET.rbl.test.ex succeeded (yielding 255.255.255.255, 255.255.255.254)
+LOG: DNS list lookup for V4NET.13.13.105 at rbl.test.ex returned 255.255.255.255; not in 127.0/8 and discarded
+LOG: DNS list lookup for V4NET.13.13.105 at rbl.test.ex returned 255.255.255.254; not in 127.0/8 and discarded
+>>> warn: condition test failed in ACL "check_vrfy"
+>>> processing "accept" (TESTSUITE/test-config 34)
+>>> accept: condition test succeeded in ACL "check_vrfy"
+>>> end of ACL "check_vrfy": ACCEPT
+>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+>>> routing a@b
+>>> calling system_aliases router
+>>> system_aliases router declined for a@b
+>>> a in "userx"? no (end of list)
+>>> no more routers
+LOG: VRFY failed for a@b H=[V4NET.13.13.105]
index e19fbb74aa29168fa67c2ff378f2c0bf83a7e6fc..12764953f64b68beecac9f88b229bf396f209069 100644 (file)
 220 the.local.host.name ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000\r
 550 <a@b> Unrouteable address\r
 221 the.local.host.name closing connection\r
 220 the.local.host.name ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000\r
 550 <a@b> Unrouteable address\r
 221 the.local.host.name closing connection\r
+
+**** SMTP testing session as if from host V4NET.13.13.100
+**** but without any ident (RFC 1413) callback.
+**** This is not for real!
+
+220 the.local.host.name ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000\r
+550 <a@b> Unrouteable address\r
+221 the.local.host.name closing connection\r
+
+**** SMTP testing session as if from host V4NET.13.13.101
+**** but without any ident (RFC 1413) callback.
+**** This is not for real!
+
+220 the.local.host.name ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000\r
+550 <a@b> Unrouteable address\r
+221 the.local.host.name closing connection\r
+
+**** SMTP testing session as if from host V4NET.13.13.102
+**** but without any ident (RFC 1413) callback.
+**** This is not for real!
+
+220 the.local.host.name ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000\r
+550 <a@b> Unrouteable address\r
+221 the.local.host.name closing connection\r
+
+**** SMTP testing session as if from host V4NET.13.13.103
+**** but without any ident (RFC 1413) callback.
+**** This is not for real!
+
+220 the.local.host.name ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000\r
+550 <a@b> Unrouteable address\r
+221 the.local.host.name closing connection\r
+
+**** SMTP testing session as if from host V4NET.13.13.104
+**** but without any ident (RFC 1413) callback.
+**** This is not for real!
+
+220 the.local.host.name ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000\r
+550 <a@b> Unrouteable address\r
+221 the.local.host.name closing connection\r
+
+**** SMTP testing session as if from host V4NET.13.13.105
+**** but without any ident (RFC 1413) callback.
+**** This is not for real!
+
+220 the.local.host.name ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000\r
+550 <a@b> Unrouteable address\r
+221 the.local.host.name closing connection\r