>>> 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) >>> test in helo_lookup_domains? >>> list element: @ >>> list element: @[] >>> test in helo_lookup_domains? no (end of list) >>> using ACL "check_recipient" >>> processing ACL check_recipient "require" (TESTSUITE/test-config 21) >>> check verify = sender >>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>> routing unknown@test.ex >>> test.ex in domains? >>> list element: !░+local_domains >>> start sublist local_domains >>> test.ex in "test.ex"? >>> ╎list element: test.ex >>> ╎test.ex in "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") >>> unknown in local_parts? >>> list element: defer >>> unknown in local_parts? no (end of list) >>> unknown in local_parts? >>> list element: userx >>> unknown in local_parts? no (end of list) >>> no more routers >>> ----------- end verify ------------ >>> require: condition test failed in ACL check_recipient >>> end of ACL check_recipient: not OK LOG: H=(test) [127.0.0.1] sender verify fail for : Unrouteable address LOG: H=(test) [127.0.0.1] F= rejected RCPT : Sender verify failed >>> using ACL "check_recipient" >>> processing ACL check_recipient "require" (TESTSUITE/test-config 21) >>> check verify = sender >>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>> routing userx@unknown.dom.ain >>> unknown.dom.ain in domains? >>> list element: !░+local_domains >>> start sublist local_domains >>> unknown.dom.ain in "test.ex"? >>> ╎list element: test.ex >>> unknown.dom.ain in "test.ex"? no (end of list) >>> end sublist local_domains >>> unknown.dom.ain in domains? yes (end of list) >>> calling fail_remote_domains router >>> fail_remote_domains router forced address failure >>> ----------- end verify ------------ >>> require: condition test failed in ACL check_recipient >>> end of ACL check_recipient: not OK LOG: H=(test) [127.0.0.1] sender verify fail for : unrouteable mail domain "unknown.dom.ain" LOG: H=(test) [127.0.0.1] F= rejected RCPT : Sender verify failed >>> host in smtp_accept_max_nonmail_hosts? >>> list element: * >>> host in smtp_accept_max_nonmail_hosts? yes (matched "*") >>> using ACL "check_recipient" >>> processing ACL check_recipient "require" (TESTSUITE/test-config 21) >>> check verify = sender >>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>> routing "unknown with spaces"@test.ex >>> test.ex in domains? >>> list element: !░+local_domains >>> start sublist local_domains >>> test.ex in "test.ex"? >>> ╎list element: test.ex >>> ╎test.ex in "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") >>> unknown with spaces in local_parts? >>> list element: defer >>> unknown with spaces in local_parts? no (end of list) >>> unknown with spaces in local_parts? >>> list element: userx >>> unknown with spaces in local_parts? no (end of list) >>> no more routers >>> ----------- end verify ------------ >>> require: condition test failed in ACL check_recipient >>> end of ACL check_recipient: not OK LOG: H=(test) [127.0.0.1] sender verify fail for <"unknown with spaces"@test.ex>: Unrouteable address LOG: H=(test) [127.0.0.1] F=<"unknown with spaces"@test.ex> rejected RCPT : Sender verify failed >>> using ACL "check_recipient" >>> processing ACL check_recipient "require" (TESTSUITE/test-config 21) >>> check verify = sender >>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>> routing userx@test.ex >>> test.ex in domains? >>> list element: !░+local_domains >>> start sublist local_domains >>> test.ex in "test.ex"? >>> ╎list element: test.ex >>> ╎test.ex in "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: defer >>> userx in local_parts? no (end of list) >>> userx in local_parts? >>> list element: userx >>> userx in local_parts? yes (matched "userx") >>> calling userx router >>> routed by userx router >>> ----------- end verify ------------ >>> require: condition test succeeded in ACL check_recipient >>> processing ACL check_recipient "accept" (TESTSUITE/test-config 22) >>> check domains = +local_domains >>> test.ex in "+local_domains"? >>> list element: +local_domains >>> start sublist local_domains >>> test.ex in "test.ex"? >>> ╎list element: test.ex >>> ╎test.ex in "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 >>> host in ignore_fromline_hosts? no (option unset) >>> using ACL "check_message" >>> processing ACL check_message "require" (TESTSUITE/test-config 27) >>> check verify = header_sender >>> verifying From: header address unknown@test.ex >>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>> routing unknown@test.ex >>> test.ex in domains? >>> list element: !░+local_domains >>> start sublist local_domains >>> test.ex in "test.ex"? >>> ╎list element: test.ex >>> ╎test.ex in "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") >>> unknown in local_parts? >>> list element: defer >>> unknown in local_parts? no (end of list) >>> unknown in local_parts? >>> list element: userx >>> unknown in local_parts? no (end of list) >>> no more routers >>> require: condition test failed in ACL check_message >>> end of ACL check_message: not OK LOG: 10HmaX-000000005vi-0000 H=(test) [127.0.0.1] F= rejected after DATA: there is no valid sender in any header line >>> using ACL "check_recipient" >>> processing ACL check_recipient "require" (TESTSUITE/test-config 21) >>> check verify = sender >>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>> routing userx@test.ex >>> test.ex in domains? >>> list element: !░+local_domains >>> start sublist local_domains >>> test.ex in "test.ex"? >>> ╎list element: test.ex >>> ╎test.ex in "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: defer >>> userx in local_parts? no (end of list) >>> userx in local_parts? >>> list element: userx >>> userx in local_parts? yes (matched "userx") >>> calling userx router >>> routed by userx router >>> ----------- end verify ------------ >>> require: condition test succeeded in ACL check_recipient >>> processing ACL check_recipient "accept" (TESTSUITE/test-config 22) >>> check domains = +local_domains >>> test.ex in "+local_domains"? >>> list element: +local_domains >>> start sublist local_domains >>> test.ex in "test.ex"? >>> ╎list element: test.ex >>> ╎test.ex in "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 >>> host in ignore_fromline_hosts? no (option unset) LOG: 10HmaY-000000005vi-0000 qualify/rewrite: missing or malformed local part >>> using ACL "check_message" >>> processing ACL check_message "require" (TESTSUITE/test-config 27) >>> check verify = header_sender >>> verifying From: header address <> >>> require: condition test failed in ACL check_message >>> end of ACL check_message: not OK LOG: 10HmaY-000000005vi-0000 H=(test) [127.0.0.1] F= rejected after DATA: syntax error in 'From:' header when scanning for sender: missing or malformed local part in "<>" >>> using ACL "check_recipient" >>> processing ACL check_recipient "require" (TESTSUITE/test-config 21) >>> check verify = sender >>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>> routing defer@test.ex >>> test.ex in domains? >>> list element: !░+local_domains >>> start sublist local_domains >>> test.ex in "test.ex"? >>> ╎list element: test.ex >>> ╎test.ex in "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") >>> defer in local_parts? >>> list element: defer >>> defer in local_parts? yes (matched "defer") >>> calling defer router >>> defer router: defer for defer@test.ex >>> message: forced defer >>> ----------- end verify ------------ >>> require: condition test deferred in ACL check_recipient LOG: H=(test) [127.0.0.1] sender verify defer for : forced defer LOG: H=(test) [127.0.0.1] F= temporarily rejected RCPT : Could not complete sender verify >>> using ACL "check_recipient" >>> processing ACL check_recipient "require" (TESTSUITE/test-config 21) >>> check verify = sender >>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>> routing userx@test.ex >>> test.ex in domains? >>> list element: !░+local_domains >>> start sublist local_domains >>> test.ex in "test.ex"? >>> ╎list element: test.ex >>> ╎test.ex in "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: defer >>> userx in local_parts? no (end of list) >>> userx in local_parts? >>> list element: userx >>> userx in local_parts? yes (matched "userx") >>> calling userx router >>> routed by userx router >>> ----------- end verify ------------ >>> require: condition test succeeded in ACL check_recipient >>> processing ACL check_recipient "accept" (TESTSUITE/test-config 22) >>> check domains = +local_domains >>> test.ex in "+local_domains"? >>> list element: +local_domains >>> start sublist local_domains >>> test.ex in "test.ex"? >>> ╎list element: test.ex >>> ╎test.ex in "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 >>> host in ignore_fromline_hosts? no (option unset) >>> using ACL "check_message" >>> processing ACL check_message "require" (TESTSUITE/test-config 27) >>> check verify = header_sender >>> verifying from: header address >>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>> routing defer@test.ex >>> test.ex in domains? >>> list element: !░+local_domains >>> start sublist local_domains >>> test.ex in "test.ex"? >>> ╎list element: test.ex >>> ╎test.ex in "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") >>> defer in local_parts? >>> list element: defer >>> defer in local_parts? yes (matched "defer") >>> calling defer router >>> defer router: defer for defer@test.ex >>> message: forced defer >>> require: condition test deferred in ACL check_message LOG: 10HmaZ-000000005vi-0000 H=(test) [127.0.0.1] F= temporarily rejected after DATA: all attempts to verify a sender in a header line deferred >>> 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) >>> foo.bar in helo_lookup_domains? >>> list element: @ >>> list element: @[] >>> foo.bar 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 chunking_advertise_hosts? >>> host in chunking_advertise_hosts? no (end of list) >>> 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) >>> 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 chunking_advertise_hosts? >>> host in chunking_advertise_hosts? no (end of list) >>> foo.bar in helo_lookup_domains? >>> list element: @ >>> list element: @[] >>> foo.bar 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 chunking_advertise_hosts? >>> host in chunking_advertise_hosts? no (end of list) >>> foo.bar in helo_lookup_domains? >>> list element: @ >>> list element: @[] >>> foo.bar 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 chunking_advertise_hosts? >>> host in chunking_advertise_hosts? no (end of list)