>>> check hosts = +auth_hosts
>>> host in "+auth_hosts"?
>>> list element: +auth_hosts
->>> host in "10.0.0.1"?
->>> list element: 10.0.0.1
->>> host in "10.0.0.1"? no (end of list)
+>>> start sublist auth_hosts
+>>> host in "10.0.0.1"?
+>>> ╎list element: 10.0.0.1
+>>> host in "10.0.0.1"? no (end of list)
+>>> end sublist auth_hosts
>>> host in "+auth_hosts"? no (end of list)
>>> deny: condition test failed in ACL "check_vrfy"
>>> processing "accept" (TESTSUITE/test-config 70)
>>> end of ACL "check_vrfy": ACCEPT
>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>> routing userx@test.ex
->>> test.ex in "! +local_domains"?
->>> list element: ! +local_domains
->>> test.ex in "test.ex : *.test.ex"?
->>> list element: test.ex
->>> test.ex in "test.ex : *.test.ex"? yes (matched "test.ex")
->>> test.ex in "! +local_domains"? no (matched "! +local_domains")
->>> userx in "userx"?
+>>> test.ex in domains?
+>>> list element: !░+local_domains
+>>> start sublist local_domains
+>>> test.ex in "test.ex : *.test.ex"?
+>>> ╎list element: test.ex
+>>> ╎test.ex in "test.ex : *.test.ex"? yes (matched "test.ex")
+>>> end sublist local_domains
+>>> data from lookup saved for cache for +local_domains: key 'test.ex' value 'test.ex'
+>>> test.ex in domains? no (matched "! +local_domains")
+>>> userx in local_parts?
>>> list element: userx
->>> userx in "userx"? yes (matched "userx")
+>>> userx in local_parts? yes (matched "userx")
>>> calling localuser router
>>> routed by localuser router
>>> using ACL "check_expn"
>>> check hosts = +auth_hosts
>>> host in "+auth_hosts"?
>>> list element: +auth_hosts
+>>> start sublist auth_hosts
+>>> cached no match for +auth_hosts
+>>> cached lookup data = NULL
>>> host in "+auth_hosts"? no (end of list)
>>> deny: condition test failed in ACL "check_expn"
>>> processing "accept" (TESTSUITE/test-config 64)
>>> end of ACL "check_expn": ACCEPT
>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>> routing list@test.ex
->>> test.ex in "! +local_domains"?
->>> list element: ! +local_domains
->>> test.ex in "test.ex : *.test.ex"?
->>> list element: test.ex
->>> test.ex in "test.ex : *.test.ex"? yes (matched "test.ex")
->>> test.ex in "! +local_domains"? no (matched "! +local_domains")
->>> list in "userx"?
+>>> test.ex in domains?
+>>> list element: !░+local_domains
+>>> start sublist local_domains
+>>> test.ex in "test.ex : *.test.ex"?
+>>> ╎list element: test.ex
+>>> ╎test.ex in "test.ex : *.test.ex"? yes (matched "test.ex")
+>>> end sublist local_domains
+>>> data from lookup saved for cache for +local_domains: key 'test.ex' value 'test.ex'
+>>> test.ex in domains? no (matched "! +local_domains")
+>>> list in local_parts?
>>> list element: userx
->>> list in "userx"? no (end of list)
+>>> list in local_parts? no (end of list)
>>> no more routers
LOG: ETRN #abcd received from (test) [10.0.0.2]
>>> using ACL "check_etrn"
>>> check hosts = +auth_hosts
>>> host in "+auth_hosts"?
>>> list element: +auth_hosts
+>>> start sublist auth_hosts
+>>> cached no match for +auth_hosts
+>>> cached lookup data = NULL
>>> host in "+auth_hosts"? no (end of list)
>>> deny: condition test failed in ACL "check_etrn"
>>> processing "require" (TESTSUITE/test-config 56)
>>> list element: @
>>> list element: @[]
>>> test.host in helo_lookup_domains? no (end of list)
+>>> list element: *
+>>> host in limits_advertise_hosts? yes (matched "*")
>>> host in dsn_advertise_hosts? no (option unset)
>>> host in pipelining_advertise_hosts?
>>> list element: *
>>> host in pipelining_advertise_hosts? yes (matched "*")
>>> host in auth_advertise_hosts?
>>> list element: +auth_hosts
->>> host in "10.0.0.1"?
->>> list element: 10.0.0.1
->>> host in "10.0.0.1"? yes (matched "10.0.0.1")
+>>> start sublist auth_hosts
+>>> host in "10.0.0.1"?
+>>> ╎list element: 10.0.0.1
+>>> ╎host in "10.0.0.1"? yes (matched "10.0.0.1")
+>>> end sublist auth_hosts
>>> host in auth_advertise_hosts? yes (matched "+auth_hosts")
>>> host in chunking_advertise_hosts?
>>> host in chunking_advertise_hosts? no (end of list)
>>> check hosts = +auth_hosts
>>> host in "+auth_hosts"?
>>> list element: +auth_hosts
+>>> start sublist auth_hosts
+>>> cached yes match for +auth_hosts
+>>> cached lookup data = NULL
>>> host in "+auth_hosts"? yes (matched "+auth_hosts" - cached)
>>> message: authentication required
>>> check !authenticated = *
>>> check hosts = +auth_hosts
>>> host in "+auth_hosts"?
>>> list element: +auth_hosts
+>>> start sublist auth_hosts
+>>> cached yes match for +auth_hosts
+>>> cached lookup data = NULL
>>> host in "+auth_hosts"? yes (matched "+auth_hosts" - cached)
>>> message: authentication required
>>> check !authenticated = *
>>> check hosts = +auth_hosts
>>> host in "+auth_hosts"?
>>> list element: +auth_hosts
+>>> start sublist auth_hosts
+>>> cached yes match for +auth_hosts
+>>> cached lookup data = NULL
>>> host in "+auth_hosts"? yes (matched "+auth_hosts" - cached)
>>> message: authentication required
>>> check !authenticated = *
>>> check hosts = +auth_hosts
>>> host in "+auth_hosts"?
>>> list element: +auth_hosts
+>>> start sublist auth_hosts
+>>> cached yes match for +auth_hosts
+>>> cached lookup data = NULL
>>> host in "+auth_hosts"? yes (matched "+auth_hosts" - cached)
>>> message: authentication required
>>> check !authenticated = *
>>> check hosts = +auth_hosts
>>> host in "+auth_hosts"?
>>> list element: +auth_hosts
+>>> start sublist auth_hosts
+>>> cached yes match for +auth_hosts
+>>> cached lookup data = NULL
>>> host in "+auth_hosts"? yes (matched "+auth_hosts" - cached)
>>> message: authentication required
>>> check !authenticated = *
>>> check domains = +local_domains
>>> test.ex in "+local_domains"?
>>> list element: +local_domains
->>> test.ex in "test.ex : *.test.ex"?
->>> list element: test.ex
->>> test.ex in "test.ex : *.test.ex"? yes (matched "test.ex")
+>>> start sublist local_domains
+>>> test.ex in "test.ex : *.test.ex"?
+>>> ╎list element: test.ex
+>>> ╎test.ex in "test.ex : *.test.ex"? yes (matched "test.ex")
+>>> end sublist local_domains
+>>> data from lookup saved for cache for +local_domains: key 'test.ex' value 'test.ex'
>>> test.ex in "+local_domains"? yes (matched "+local_domains")
>>> accept: condition test succeeded in ACL "check_recipient"
>>> end of ACL "check_recipient": ACCEPT
>>> check hosts = +auth_hosts
>>> host in "+auth_hosts"?
>>> list element: +auth_hosts
+>>> start sublist auth_hosts
+>>> cached yes match for +auth_hosts
+>>> cached lookup data = NULL
>>> host in "+auth_hosts"? yes (matched "+auth_hosts" - cached)
>>> message: authentication required
>>> check !authenticated = *
>>> check domains = +local_domains
>>> cus.cam.ac.uk in "+local_domains"?
>>> list element: +local_domains
->>> cus.cam.ac.uk in "test.ex : *.test.ex"?
->>> list element: test.ex
->>> list element: *.test.ex
->>> cus.cam.ac.uk in "test.ex : *.test.ex"? no (end of list)
+>>> start sublist local_domains
+>>> cus.cam.ac.uk in "test.ex : *.test.ex"?
+>>> ╎list element: test.ex
+>>> ╎list element: *.test.ex
+>>> cus.cam.ac.uk in "test.ex : *.test.ex"? no (end of list)
+>>> end sublist local_domains
>>> cus.cam.ac.uk in "+local_domains"? no (end of list)
>>> accept: condition test failed in ACL "check_recipient"
>>> processing "accept" (TESTSUITE/test-config 45)
>>> check hosts = +relay_hosts
>>> host in "+relay_hosts"?
>>> list element: +relay_hosts
->>> host in "10.0.0.4"?
->>> list element: 10.0.0.4
->>> host in "10.0.0.4"? no (end of list)
+>>> start sublist relay_hosts
+>>> host in "10.0.0.4"?
+>>> ╎list element: 10.0.0.4
+>>> host in "10.0.0.4"? no (end of list)
+>>> end sublist relay_hosts
>>> host in "+relay_hosts"? no (end of list)
>>> accept: condition test failed in ACL "check_recipient"
>>> processing "accept" (TESTSUITE/test-config 46)
>>> check hosts = +auth_relay_hosts
>>> host in "+auth_relay_hosts"?
>>> list element: +auth_relay_hosts
->>> host in "10.0.0.3 : 10.0.0.4"?
->>> list element: 10.0.0.3
->>> list element: 10.0.0.4
->>> host in "10.0.0.3 : 10.0.0.4"? no (end of list)
+>>> start sublist auth_relay_hosts
+>>> host in "10.0.0.3 : 10.0.0.4"?
+>>> ╎list element: 10.0.0.3
+>>> ╎list element: 10.0.0.4
+>>> host in "10.0.0.3 : 10.0.0.4"? no (end of list)
+>>> end sublist auth_relay_hosts
>>> host in "+auth_relay_hosts"? no (end of list)
>>> accept: condition test failed in ACL "check_recipient"
>>> processing "deny" (TESTSUITE/test-config 50)
>>> check hosts = +auth_hosts
>>> host in "+auth_hosts"?
>>> list element: +auth_hosts
+>>> start sublist auth_hosts
+>>> cached yes match for +auth_hosts
+>>> cached lookup data = NULL
>>> host in "+auth_hosts"? yes (matched "+auth_hosts" - cached)
>>> message: authentication required
>>> check !authenticated = *
>>> end of ACL "check_vrfy": ACCEPT
>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>> routing userx@test.ex
->>> test.ex in "! +local_domains"?
->>> list element: ! +local_domains
->>> test.ex in "test.ex : *.test.ex"?
->>> list element: test.ex
->>> test.ex in "test.ex : *.test.ex"? yes (matched "test.ex")
->>> test.ex in "! +local_domains"? no (matched "! +local_domains")
->>> userx in "userx"?
+>>> test.ex in domains?
+>>> list element: !░+local_domains
+>>> start sublist local_domains
+>>> test.ex in "test.ex : *.test.ex"?
+>>> ╎list element: test.ex
+>>> ╎test.ex in "test.ex : *.test.ex"? yes (matched "test.ex")
+>>> end sublist local_domains
+>>> data from lookup saved for cache for +local_domains: key 'test.ex' value 'test.ex'
+>>> test.ex in domains? no (matched "! +local_domains")
+>>> userx in local_parts?
>>> list element: userx
->>> userx in "userx"? yes (matched "userx")
+>>> userx in local_parts? yes (matched "userx")
>>> calling localuser router
>>> routed by localuser router
>>> using ACL "check_expn"
>>> check hosts = +auth_hosts
>>> host in "+auth_hosts"?
>>> list element: +auth_hosts
+>>> start sublist auth_hosts
+>>> cached yes match for +auth_hosts
+>>> cached lookup data = NULL
>>> host in "+auth_hosts"? yes (matched "+auth_hosts" - cached)
>>> message: authentication required
>>> check !authenticated = *
>>> end of ACL "check_expn": ACCEPT
>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>> routing list@test.ex
->>> test.ex in "! +local_domains"?
->>> list element: ! +local_domains
->>> test.ex in "test.ex : *.test.ex"?
->>> list element: test.ex
->>> test.ex in "test.ex : *.test.ex"? yes (matched "test.ex")
->>> test.ex in "! +local_domains"? no (matched "! +local_domains")
->>> list in "userx"?
+>>> test.ex in domains?
+>>> list element: !░+local_domains
+>>> start sublist local_domains
+>>> test.ex in "test.ex : *.test.ex"?
+>>> ╎list element: test.ex
+>>> ╎test.ex in "test.ex : *.test.ex"? yes (matched "test.ex")
+>>> end sublist local_domains
+>>> data from lookup saved for cache for +local_domains: key 'test.ex' value 'test.ex'
+>>> test.ex in domains? no (matched "! +local_domains")
+>>> list in local_parts?
>>> list element: userx
->>> list in "userx"? no (end of list)
+>>> list in local_parts? no (end of list)
>>> no more routers
LOG: ETRN #abcd received from (test.host) [10.0.0.1]
>>> using ACL "check_etrn"
>>> check hosts = +auth_hosts
>>> host in "+auth_hosts"?
>>> list element: +auth_hosts
+>>> start sublist auth_hosts
+>>> cached yes match for +auth_hosts
+>>> cached lookup data = NULL
>>> host in "+auth_hosts"? yes (matched "+auth_hosts" - cached)
>>> message: authentication required
>>> check !authenticated = *
>>> list element: @
>>> list element: @[]
>>> test.host in helo_lookup_domains? no (end of list)
+>>> list element: *
+>>> host in limits_advertise_hosts? yes (matched "*")
>>> host in dsn_advertise_hosts? no (option unset)
>>> host in pipelining_advertise_hosts?
>>> list element: *
>>> host in pipelining_advertise_hosts? yes (matched "*")
>>> host in auth_advertise_hosts?
>>> list element: +auth_hosts
->>> host in "10.0.0.1"?
->>> list element: 10.0.0.1
->>> host in "10.0.0.1"? no (end of list)
+>>> start sublist auth_hosts
+>>> host in "10.0.0.1"?
+>>> ╎list element: 10.0.0.1
+>>> host in "10.0.0.1"? no (end of list)
+>>> end sublist auth_hosts
>>> list element: !+relay_hosts
->>> host in "10.0.0.4"?
->>> list element: 10.0.0.4
->>> host in "10.0.0.4"? no (end of list)
+>>> start sublist relay_hosts
+>>> host in "10.0.0.4"?
+>>> ╎list element: 10.0.0.4
+>>> host in "10.0.0.4"? no (end of list)
+>>> end sublist relay_hosts
>>> list element: +auth_relay_hosts
->>> host in "10.0.0.3 : 10.0.0.4"?
->>> list element: 10.0.0.3
->>> host in "10.0.0.3 : 10.0.0.4"? yes (matched "10.0.0.3")
+>>> start sublist auth_relay_hosts
+>>> host in "10.0.0.3 : 10.0.0.4"?
+>>> ╎list element: 10.0.0.3
+>>> ╎host in "10.0.0.3 : 10.0.0.4"? yes (matched "10.0.0.3")
+>>> end sublist auth_relay_hosts
>>> host in auth_advertise_hosts? yes (matched "+auth_relay_hosts")
>>> host in chunking_advertise_hosts?
>>> host in chunking_advertise_hosts? no (end of list)
>>> check hosts = +auth_hosts
>>> host in "+auth_hosts"?
>>> list element: +auth_hosts
+>>> start sublist auth_hosts
+>>> cached no match for +auth_hosts
+>>> cached lookup data = NULL
>>> host in "+auth_hosts"? no (end of list)
>>> deny: condition test failed in ACL "check_recipient"
>>> processing "accept" (TESTSUITE/test-config 44)
>>> check domains = +local_domains
>>> cus.cam.ac.uk in "+local_domains"?
>>> list element: +local_domains
->>> cus.cam.ac.uk in "test.ex : *.test.ex"?
->>> list element: test.ex
->>> list element: *.test.ex
->>> cus.cam.ac.uk in "test.ex : *.test.ex"? no (end of list)
+>>> start sublist local_domains
+>>> cus.cam.ac.uk in "test.ex : *.test.ex"?
+>>> ╎list element: test.ex
+>>> ╎list element: *.test.ex
+>>> cus.cam.ac.uk in "test.ex : *.test.ex"? no (end of list)
+>>> end sublist local_domains
>>> cus.cam.ac.uk in "+local_domains"? no (end of list)
>>> accept: condition test failed in ACL "check_recipient"
>>> processing "accept" (TESTSUITE/test-config 45)
>>> check hosts = +relay_hosts
>>> host in "+relay_hosts"?
>>> list element: +relay_hosts
+>>> start sublist relay_hosts
+>>> cached no match for +relay_hosts
+>>> cached lookup data = NULL
>>> host in "+relay_hosts"? no (end of list)
>>> accept: condition test failed in ACL "check_recipient"
>>> processing "accept" (TESTSUITE/test-config 46)
>>> check hosts = +auth_relay_hosts
>>> host in "+auth_relay_hosts"?
>>> list element: +auth_relay_hosts
+>>> start sublist auth_relay_hosts
+>>> cached yes match for +auth_relay_hosts
+>>> cached lookup data = NULL
>>> host in "+auth_relay_hosts"? yes (matched "+auth_relay_hosts" - cached)
>>> message: authentication required
>>> check authenticated = *
>>> check hosts = +auth_hosts
>>> host in "+auth_hosts"?
>>> list element: +auth_hosts
+>>> start sublist auth_hosts
+>>> cached no match for +auth_hosts
+>>> cached lookup data = NULL
>>> host in "+auth_hosts"? no (end of list)
>>> deny: condition test failed in ACL "check_recipient"
>>> processing "accept" (TESTSUITE/test-config 44)
>>> check domains = +local_domains
>>> cus.cam.ac.uk in "+local_domains"?
>>> list element: +local_domains
->>> cus.cam.ac.uk in "test.ex : *.test.ex"?
->>> list element: test.ex
->>> list element: *.test.ex
->>> cus.cam.ac.uk in "test.ex : *.test.ex"? no (end of list)
+>>> start sublist local_domains
+>>> cus.cam.ac.uk in "test.ex : *.test.ex"?
+>>> ╎list element: test.ex
+>>> ╎list element: *.test.ex
+>>> cus.cam.ac.uk in "test.ex : *.test.ex"? no (end of list)
+>>> end sublist local_domains
>>> cus.cam.ac.uk in "+local_domains"? no (end of list)
>>> accept: condition test failed in ACL "check_recipient"
>>> processing "accept" (TESTSUITE/test-config 45)
>>> check hosts = +relay_hosts
>>> host in "+relay_hosts"?
>>> list element: +relay_hosts
+>>> start sublist relay_hosts
+>>> cached no match for +relay_hosts
+>>> cached lookup data = NULL
>>> host in "+relay_hosts"? no (end of list)
>>> accept: condition test failed in ACL "check_recipient"
>>> processing "accept" (TESTSUITE/test-config 46)
>>> check hosts = +auth_relay_hosts
>>> host in "+auth_relay_hosts"?
>>> list element: +auth_relay_hosts
+>>> start sublist auth_relay_hosts
+>>> cached yes match for +auth_relay_hosts
+>>> cached lookup data = NULL
>>> host in "+auth_relay_hosts"? yes (matched "+auth_relay_hosts" - cached)
>>> message: authentication required
>>> check authenticated = *
>>> list element: @
>>> list element: @[]
>>> test.host in helo_lookup_domains? no (end of list)
+>>> list element: *
+>>> host in limits_advertise_hosts? yes (matched "*")
>>> host in dsn_advertise_hosts? no (option unset)
>>> host in pipelining_advertise_hosts?
>>> list element: *
>>> host in pipelining_advertise_hosts? yes (matched "*")
>>> host in auth_advertise_hosts?
>>> list element: +auth_hosts
->>> host in "10.0.0.1"?
->>> list element: 10.0.0.1
->>> host in "10.0.0.1"? no (end of list)
+>>> start sublist auth_hosts
+>>> host in "10.0.0.1"?
+>>> ╎list element: 10.0.0.1
+>>> host in "10.0.0.1"? no (end of list)
+>>> end sublist auth_hosts
>>> list element: !+relay_hosts
->>> host in "10.0.0.4"?
->>> list element: 10.0.0.4
->>> host in "10.0.0.4"? yes (matched "10.0.0.4")
+>>> start sublist relay_hosts
+>>> host in "10.0.0.4"?
+>>> ╎list element: 10.0.0.4
+>>> ╎host in "10.0.0.4"? yes (matched "10.0.0.4")
+>>> end sublist relay_hosts
>>> host in auth_advertise_hosts? no (matched "!+relay_hosts")
>>> host in chunking_advertise_hosts?
>>> host in chunking_advertise_hosts? no (end of list)
Exim version x.yz ....
+Hints DB:
changed uid/gid: forcing real = effective
uid=uuuu gid=CALLER_GID pid=p1234
seeking password data for user "CALLER": cache not available
sender_fullhost = (testing.testing) [10.0.0.5]
sender_rcvhost = [10.0.0.5] (helo=testing.testing ident=CALLER)
set_process_info: pppp handling incoming connection from (testing.testing) [10.0.0.5] U=CALLER
+ list element: *
+ host in limits_advertise_hosts? yes (matched "*")
host in dsn_advertise_hosts? no (option unset)
host in pipelining_advertise_hosts?
list element: *
host in chunking_advertise_hosts? no (end of list)
SMTP>> 250-myhost.test.ex Hello CALLER at testing.testing [10.0.0.5]
250-SIZE 52428800
+ 250-LIMITS MAILMAX=1000 RCPTMAX=50000
250-8BITMIME
250-ETRN
250-VRFY
$auth1 = userx secret
$1 = userx secret
+++MYLOGIN $1="userx secret" $2="" $3=""
- compiled RE '^(\S+)\s+(\S+)$' not found in local cache
- compiling RE '^(\S+)\s+(\S+)$'
- compiled RE '^(\S+)\s+(\S+)$' saved in local cache
+ compiled RE '^(\S+)\s+(\S+)$' not found in local cache
+ compiling RE '^(\S+)\s+(\S+)$'
+ compiled RE '^(\S+)\s+(\S+)$' saved in local cache
expanded string: yes
SMTP>> 235 Authentication succeeded
SMTP<< quit