>>> #
>>> # Initialize
>>> #
>>> smtpd_delay_reject 0
OK
>>> #
>>> # Test check_domain_access()
>>> #
>>> helo_restrictions fail:1_helo_access
OK
>>> # Expect: REJECT (temporary lookup failure)
>>> helo foobar
./smtpd_check: warning: fail:1_helo_access lookup error for "foobar"
./smtpd_check: <queue id>: reject: HELO from localhost[127.0.0.1]: 451 4.3.5 <foobar>: Helo command rejected: Server configuration error; proto=SMTP helo=<foobar>
451 4.3.5 <foobar>: Helo command rejected: Server configuration error
>>> #
>>> # Test check_namadr_access()
>>> #
>>> client_restrictions fail:1_client_access
OK
>>> # Expect: REJECT (temporary lookup failure)
>>> client foo.dunno.com 131.155.210.17
./smtpd_check: warning: fail:1_client_access lookup error for "foo.dunno.com"
./smtpd_check: <queue id>: reject: CONNECT from foo.dunno.com[131.155.210.17]: 451 4.3.5 <foo.dunno.com[131.155.210.17]>: Client host rejected: Server configuration error; proto=SMTP helo=<foobar>
451 4.3.5 <foo.dunno.com[131.155.210.17]>: Client host rejected: Server configuration error
>>> #
>>> # Test check_mail_access()
>>> #
>>> sender_restrictions fail:1_sender_access
OK
>>> # Expect: REJECT (temporary lookup failure)
>>> mail reject@dunno.domain
./smtpd_check: warning: fail:1_sender_access lookup error for "reject@dunno.domain"
./smtpd_check: <queue id>: reject: MAIL from foo.dunno.com[131.155.210.17]: 451 4.3.5 <reject@dunno.domain>: Sender address rejected: Server configuration error; from=<reject@dunno.domain> proto=SMTP helo=<foobar>
451 4.3.5 <reject@dunno.domain>: Sender address rejected: Server configuration error
>>> #
>>> # Test check_rcpt_access()
>>> #
>>> recipient_restrictions fail:1_rcpt_access
OK
>>> # Expect: REJECT (temporary lookup failure)
>>> rcpt reject@dunno.domain
./smtpd_check: warning: fail:1_rcpt_access lookup error for "reject@dunno.domain"
./smtpd_check: <queue id>: reject: RCPT from foo.dunno.com[131.155.210.17]: 451 4.3.5 <reject@dunno.domain>: Recipient address rejected: Server configuration error; from=<reject@dunno.domain> to=<reject@dunno.domain> proto=SMTP helo=<foobar>
451 4.3.5 <reject@dunno.domain>: Recipient address rejected: Server configuration error
>>> # Expect: OK
>>> rcpt postmaster
OK
>>> #
>>> # Test mynetworks in generic_checks().
>>> #
>>> mynetworks fail:1_mynetworks
OK
>>> #
>>> # Expect REJECT (temporary lookup failure)
>>> #
>>> recipient_restrictions permit_mynetworks
OK
>>> rcpt reject@dunno.domain
./smtpd_check: warning: mynetworks: fail:1_mynetworks: table lookup problem
./smtpd_check: <queue id>: reject: RCPT from foo.dunno.com[131.155.210.17]: 451 4.3.0 <reject@dunno.domain>: Temporary lookup failure; from=<reject@dunno.domain> to=<reject@dunno.domain> proto=SMTP helo=<foobar>
451 4.3.0 <reject@dunno.domain>: Temporary lookup failure
>>> # 
>>> # Test mynetworks. 
>>> #
>>> mynetworks 168.100.3.1/27
OK
>>> #
>>> # Expect REJECT (server configuration error)
>>> #
>>> rcpt reject@dunno.domain
./smtpd_check: warning: mynetworks: non-null host address bits in "168.100.3.1/27", perhaps you should use "168.100.3.0/27" instead
./smtpd_check: <queue id>: reject: RCPT from foo.dunno.com[131.155.210.17]: 451 4.3.0 <reject@dunno.domain>: Temporary lookup failure; from=<reject@dunno.domain> to=<reject@dunno.domain> proto=SMTP helo=<foobar>
451 4.3.0 <reject@dunno.domain>: Temporary lookup failure
>>> #
>>> # check_sender_access specific
>>> #
>>> smtpd_null_access_lookup_key <> 
OK
>>> mail <>
./smtpd_check: warning: fail:1_sender_access lookup error for "<>"
./smtpd_check: <queue id>: reject: MAIL from foo.dunno.com[131.155.210.17]: 451 4.3.5 <>: Sender address rejected: Server configuration error; from=<> proto=SMTP helo=<foobar>
451 4.3.5 <>: Sender address rejected: Server configuration error
>>> #
>>> # Test permit_tls_client_certs in generic_restrictions
>>> #
>>> relay_clientcerts fail:1_certs
OK
>>> fingerprint abcdef
OK
>>> recipient_restrictions permit_tls_clientcerts
OK
>>> rcpt reject@dunno.domain
./smtpd_check: warning: fail:1_certs lookup error for "abcdef"
./smtpd_check: warning: relay_clientcerts: lookup error for fingerprint 'abcdef', pkey fingerprint abcdef
./smtpd_check: <queue id>: reject: RCPT from foo.dunno.com[131.155.210.17]: 451 4.3.0 <reject@dunno.domain>: Temporary lookup failure; from=<> to=<reject@dunno.domain> proto=SMTP helo=<foobar>
451 4.3.0 <reject@dunno.domain>: Temporary lookup failure
>>> #
>>> # Test smtpd_check_rewrite().
>>> #
>>> local_header_rewrite_clients fail:1_rewrite
OK
>>> #
>>> # Expect: REJECT (temporary lookup failure)
>>> #
>>> rewrite
./smtpd_check: warning: fail:1_rewrite lookup error for "131.155.210.17"
./smtpd_check: <queue id>: reject: RCPT from foo.dunno.com[131.155.210.17]: 451 4.3.0 Temporary lookup error; from=<> proto=SMTP helo=<foobar>
451 4.3.0 Temporary lookup error
>>> #
>>> # Test resolve_local()
>>> #
>>> mydestination example.com
OK
>>> recipient_restrictions reject_unauth_destination
OK
>>> rcpt user@example.com
OK
>>> mydestination fail:1_mydestination
OK
>>> rcpt user@example.com
./smtpd_check: warning: mydestination: fail:1_mydestination: table lookup problem
./smtpd_check: <queue id>: reject: RCPT from foo.dunno.com[131.155.210.17]: 451 4.3.0 <user@example.com>: Temporary lookup failure; from=<> to=<user@example.com> proto=SMTP helo=<foobar>
451 4.3.0 <user@example.com>: Temporary lookup failure
>>> #
>>> # Test virtual alias lookup.
>>> #
>>> mydestination example.com
OK
>>> virtual_alias_maps fail:1_virtual
OK
>>> rcpt user@example.com
./smtpd_check: warning: fail:1_virtual lookup error for "user@example.com"
./smtpd_check: <queue id>: reject: RCPT from foo.dunno.com[131.155.210.17]: 451 4.3.0 <user@example.com>: Temporary lookup failure; from=<> to=<user@example.com> proto=SMTP helo=<foobar>
451 4.3.0 <user@example.com>: Temporary lookup failure
