>>> 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)
->>> list element:
->>> list element: @
->>> list element: @[]
+>>> host in pipelining_connect_advertise_hosts?
+>>> list element:
+>>> test in helo_lookup_domains?
+>>> list element: @
+>>> list element: @[]
>>> test in helo_lookup_domains? no (end of list)
>>> using ACL "check_recipient"
>>> processing "require" (TESTSUITE/test-config 21)
>>> check verify = sender
>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>> routing unknown@test.ex
->>> list element: ! +local_domains
->>> list element: test.ex
->>> test.ex in "test.ex"? yes (matched "test.ex")
->>> test.ex in "! +local_domains"? no (matched "! +local_domains")
->>> list element: defer
+>>> test.ex in "! +local_domains"?
+>>> list element: ! +local_domains
+>>> test.ex in "test.ex"?
+>>> list element: test.ex
+>>> test.ex in "test.ex"? yes (matched "test.ex")
+>>> test.ex in "! +local_domains"? no (matched "! +local_domains")
+>>> unknown in "defer"?
+>>> list element: defer
>>> unknown in "defer"? no (end of list)
->>> list element: userx
+>>> unknown in "userx"?
+>>> list element: userx
>>> unknown in "userx"? no (end of list)
>>> no more routers
>>> ----------- end verify ------------
>>> check verify = sender
>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>> routing userx@unknown.dom.ain
->>> list element: ! +local_domains
->>> list element: test.ex
->>> unknown.dom.ain in "test.ex"? no (end of list)
+>>> unknown.dom.ain in "! +local_domains"?
+>>> list element: ! +local_domains
+>>> unknown.dom.ain in "test.ex"?
+>>> list element: test.ex
+>>> unknown.dom.ain in "test.ex"? no (end of list)
>>> unknown.dom.ain in "! +local_domains"? yes (end of list)
>>> calling fail_remote_domains router
>>> fail_remote_domains router forced address failure
>>> end of ACL "check_recipient": not OK
LOG: H=(test) [127.0.0.1] sender verify fail for <userx@unknown.dom.ain>: unrouteable mail domain "unknown.dom.ain"
LOG: H=(test) [127.0.0.1] F=<userx@unknown.dom.ain> rejected RCPT <userx@test.ex>: Sender verify failed
->>> list element: *
->>> host in smtp_accept_max_nonmail_hosts? yes (matched "*")
+>>> host in smtp_accept_max_nonmail_hosts?
+>>> list element: *
+>>> host in smtp_accept_max_nonmail_hosts? yes (matched "*")
>>> using ACL "check_recipient"
>>> processing "require" (TESTSUITE/test-config 21)
>>> check verify = sender
>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>> routing "unknown with spaces"@test.ex
->>> list element: ! +local_domains
->>> list element: test.ex
->>> test.ex in "test.ex"? yes (matched "test.ex")
->>> test.ex in "! +local_domains"? no (matched "! +local_domains")
->>> list element: defer
+>>> test.ex in "! +local_domains"?
+>>> list element: ! +local_domains
+>>> test.ex in "test.ex"?
+>>> list element: test.ex
+>>> test.ex in "test.ex"? yes (matched "test.ex")
+>>> test.ex in "! +local_domains"? no (matched "! +local_domains")
+>>> unknown with spaces in "defer"?
+>>> list element: defer
>>> unknown with spaces in "defer"? no (end of list)
->>> list element: userx
+>>> unknown with spaces in "userx"?
+>>> list element: userx
>>> unknown with spaces in "userx"? no (end of list)
>>> no more routers
>>> ----------- end verify ------------
>>> check verify = sender
>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>> routing userx@test.ex
->>> list element: ! +local_domains
->>> list element: test.ex
->>> test.ex in "test.ex"? yes (matched "test.ex")
->>> test.ex in "! +local_domains"? no (matched "! +local_domains")
->>> list element: defer
+>>> test.ex in "! +local_domains"?
+>>> list element: ! +local_domains
+>>> test.ex in "test.ex"?
+>>> list element: test.ex
+>>> test.ex in "test.ex"? yes (matched "test.ex")
+>>> test.ex in "! +local_domains"? no (matched "! +local_domains")
+>>> userx in "defer"?
+>>> list element: defer
>>> userx in "defer"? no (end of list)
->>> list element: userx
->>> userx in "userx"? yes (matched "userx")
+>>> userx in "userx"?
+>>> list element: userx
+>>> userx in "userx"? yes (matched "userx")
>>> calling userx router
>>> routed by userx router
>>> ----------- end verify ------------
>>> require: condition test succeeded in ACL "check_recipient"
>>> processing "accept" (TESTSUITE/test-config 22)
>>> check domains = +local_domains
->>> list element: +local_domains
->>> list element: test.ex
->>> test.ex in "test.ex"? yes (matched "test.ex")
->>> test.ex in "+local_domains"? yes (matched "+local_domains")
+>>> test.ex in "+local_domains"?
+>>> list element: +local_domains
+>>> test.ex in "test.ex"?
+>>> list element: test.ex
+>>> test.ex in "test.ex"? yes (matched "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
>>> host in ignore_fromline_hosts? no (option unset)
>>> verifying From: header address unknown@test.ex
>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>> routing unknown@test.ex
->>> list element: ! +local_domains
->>> list element: test.ex
->>> test.ex in "test.ex"? yes (matched "test.ex")
->>> test.ex in "! +local_domains"? no (matched "! +local_domains")
->>> list element: defer
+>>> test.ex in "! +local_domains"?
+>>> list element: ! +local_domains
+>>> test.ex in "test.ex"?
+>>> list element: test.ex
+>>> test.ex in "test.ex"? yes (matched "test.ex")
+>>> test.ex in "! +local_domains"? no (matched "! +local_domains")
+>>> unknown in "defer"?
+>>> list element: defer
>>> unknown in "defer"? no (end of list)
->>> list element: userx
+>>> unknown in "userx"?
+>>> list element: userx
>>> unknown in "userx"? no (end of list)
>>> no more routers
>>> require: condition test failed in ACL "check_message"
>>> check verify = sender
>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>> routing userx@test.ex
->>> list element: ! +local_domains
->>> list element: test.ex
->>> test.ex in "test.ex"? yes (matched "test.ex")
->>> test.ex in "! +local_domains"? no (matched "! +local_domains")
->>> list element: defer
+>>> test.ex in "! +local_domains"?
+>>> list element: ! +local_domains
+>>> test.ex in "test.ex"?
+>>> list element: test.ex
+>>> test.ex in "test.ex"? yes (matched "test.ex")
+>>> test.ex in "! +local_domains"? no (matched "! +local_domains")
+>>> userx in "defer"?
+>>> list element: defer
>>> userx in "defer"? no (end of list)
->>> list element: userx
->>> userx in "userx"? yes (matched "userx")
+>>> userx in "userx"?
+>>> list element: userx
+>>> userx in "userx"? yes (matched "userx")
>>> calling userx router
>>> routed by userx router
>>> ----------- end verify ------------
>>> require: condition test succeeded in ACL "check_recipient"
>>> processing "accept" (TESTSUITE/test-config 22)
>>> check domains = +local_domains
->>> list element: +local_domains
->>> list element: test.ex
->>> test.ex in "test.ex"? yes (matched "test.ex")
->>> test.ex in "+local_domains"? yes (matched "+local_domains")
+>>> test.ex in "+local_domains"?
+>>> list element: +local_domains
+>>> test.ex in "test.ex"?
+>>> list element: test.ex
+>>> test.ex in "test.ex"? yes (matched "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
>>> host in ignore_fromline_hosts? no (option unset)
>>> check verify = sender
>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>> routing defer@test.ex
->>> list element: ! +local_domains
->>> list element: test.ex
->>> test.ex in "test.ex"? yes (matched "test.ex")
->>> test.ex in "! +local_domains"? no (matched "! +local_domains")
->>> list element: defer
->>> defer in "defer"? yes (matched "defer")
+>>> test.ex in "! +local_domains"?
+>>> list element: ! +local_domains
+>>> test.ex in "test.ex"?
+>>> list element: test.ex
+>>> test.ex in "test.ex"? yes (matched "test.ex")
+>>> test.ex in "! +local_domains"? no (matched "! +local_domains")
+>>> defer in "defer"?
+>>> list element: defer
+>>> defer in "defer"? yes (matched "defer")
>>> calling defer router
>>> defer router: defer for defer@test.ex
>>> message: forced defer
>>> check verify = sender
>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>> routing userx@test.ex
->>> list element: ! +local_domains
->>> list element: test.ex
->>> test.ex in "test.ex"? yes (matched "test.ex")
->>> test.ex in "! +local_domains"? no (matched "! +local_domains")
->>> list element: defer
+>>> test.ex in "! +local_domains"?
+>>> list element: ! +local_domains
+>>> test.ex in "test.ex"?
+>>> list element: test.ex
+>>> test.ex in "test.ex"? yes (matched "test.ex")
+>>> test.ex in "! +local_domains"? no (matched "! +local_domains")
+>>> userx in "defer"?
+>>> list element: defer
>>> userx in "defer"? no (end of list)
->>> list element: userx
->>> userx in "userx"? yes (matched "userx")
+>>> userx in "userx"?
+>>> list element: userx
+>>> userx in "userx"? yes (matched "userx")
>>> calling userx router
>>> routed by userx router
>>> ----------- end verify ------------
>>> require: condition test succeeded in ACL "check_recipient"
>>> processing "accept" (TESTSUITE/test-config 22)
>>> check domains = +local_domains
->>> list element: +local_domains
->>> list element: test.ex
->>> test.ex in "test.ex"? yes (matched "test.ex")
->>> test.ex in "+local_domains"? yes (matched "+local_domains")
+>>> test.ex in "+local_domains"?
+>>> list element: +local_domains
+>>> test.ex in "test.ex"?
+>>> list element: test.ex
+>>> test.ex in "test.ex"? yes (matched "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
>>> host in ignore_fromline_hosts? no (option unset)
>>> verifying from: header address <defer@test.ex>
>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>> routing defer@test.ex
->>> list element: ! +local_domains
->>> list element: test.ex
->>> test.ex in "test.ex"? yes (matched "test.ex")
->>> test.ex in "! +local_domains"? no (matched "! +local_domains")
->>> list element: defer
->>> defer in "defer"? yes (matched "defer")
+>>> test.ex in "! +local_domains"?
+>>> list element: ! +local_domains
+>>> test.ex in "test.ex"?
+>>> list element: test.ex
+>>> test.ex in "test.ex"? yes (matched "test.ex")
+>>> test.ex in "! +local_domains"? no (matched "! +local_domains")
+>>> defer in "defer"?
+>>> list element: defer
+>>> defer in "defer"? yes (matched "defer")
>>> calling defer router
>>> defer router: defer for defer@test.ex
>>> message: forced defer
>>> 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)
->>> list element:
->>> list element: @
->>> list element: @[]
+>>> host in pipelining_connect_advertise_hosts?
+>>> list element:
+>>> foo.bar in helo_lookup_domains?
+>>> list element: @
+>>> list element: @[]
>>> foo.bar in helo_lookup_domains? no (end of list)
+>>> host in limits_advertise_hosts?
+>>> list element: !*
>>> host in dsn_advertise_hosts? no (option unset)
->>> list element: *
->>> host in pipelining_advertise_hosts? yes (matched "*")
+>>> host in pipelining_advertise_hosts?
+>>> list element: *
+>>> host in pipelining_advertise_hosts? yes (matched "*")
+>>> host in chunking_advertise_hosts?
>>> host in chunking_advertise_hosts? no (end of list)
->>> list element: *
->>> host in smtp_accept_max_nonmail_hosts? yes (matched "*")
->>> list element: @
->>> list element: @[]
+>>> host in tls_advertise_hosts?
+>>> host in smtp_accept_max_nonmail_hosts?
+>>> list element: *
+>>> host in smtp_accept_max_nonmail_hosts? yes (matched "*")
+>>> foo.bar in helo_lookup_domains?
+>>> list element: @
+>>> list element: @[]
>>> foo.bar in helo_lookup_domains? no (end of list)
+>>> host in limits_advertise_hosts?
+>>> list element: !*
>>> host in dsn_advertise_hosts? no (option unset)
->>> list element: *
->>> host in pipelining_advertise_hosts? yes (matched "*")
+>>> host in pipelining_advertise_hosts?
+>>> list element: *
+>>> host in pipelining_advertise_hosts? yes (matched "*")
+>>> host in chunking_advertise_hosts?
>>> host in chunking_advertise_hosts? no (end of list)
->>> list element: @
->>> list element: @[]
+>>> host in tls_advertise_hosts?
+>>> foo.bar in helo_lookup_domains?
+>>> list element: @
+>>> list element: @[]
>>> foo.bar in helo_lookup_domains? no (end of list)
+>>> host in limits_advertise_hosts?
+>>> list element: !*
>>> host in dsn_advertise_hosts? no (option unset)
->>> list element: *
->>> host in pipelining_advertise_hosts? yes (matched "*")
+>>> host in pipelining_advertise_hosts?
+>>> list element: *
+>>> host in pipelining_advertise_hosts? yes (matched "*")
+>>> host in chunking_advertise_hosts?
>>> host in chunking_advertise_hosts? no (end of list)
->>> list element: @
->>> list element: @[]
+>>> host in tls_advertise_hosts?
+>>> foo.bar in helo_lookup_domains?
+>>> list element: @
+>>> list element: @[]
>>> foo.bar in helo_lookup_domains? no (end of list)
+>>> host in limits_advertise_hosts?
+>>> list element: !*
>>> host in dsn_advertise_hosts? no (option unset)
->>> list element: *
->>> host in pipelining_advertise_hosts? yes (matched "*")
+>>> host in pipelining_advertise_hosts?
+>>> list element: *
+>>> host in pipelining_advertise_hosts? yes (matched "*")
+>>> host in chunking_advertise_hosts?
>>> host in chunking_advertise_hosts? no (end of list)
->>> list element: @
->>> list element: @[]
+>>> host in tls_advertise_hosts?
+>>> foo.bar in helo_lookup_domains?
+>>> list element: @
+>>> list element: @[]
>>> foo.bar in helo_lookup_domains? no (end of list)
+>>> host in limits_advertise_hosts?
+>>> list element: !*
>>> host in dsn_advertise_hosts? no (option unset)
->>> list element: *
->>> host in pipelining_advertise_hosts? yes (matched "*")
+>>> host in pipelining_advertise_hosts?
+>>> list element: *
+>>> host in pipelining_advertise_hosts? yes (matched "*")
+>>> host in chunking_advertise_hosts?
>>> host in chunking_advertise_hosts? no (end of list)
+>>> host in tls_advertise_hosts?