1>>> # 2>>> # Initialize 3>>> # 4>>> client localhost 127.0.0.1 5OK 6>>> smtpd_delay_reject 0 7OK 8>>> # 9>>> # Test reject_unknown_helo_hostname 10>>> # 11>>> smtpd_dns_reply_filter regexp:../dns/no-mx.reg 12OK 13>>> helo_restrictions reject_unknown_helo_hostname,permit 14OK 15>>> # EXPECT OK + "all MX records dropped" warning. 16>>> helo xn--1xa.porcupine.org 17./smtpd_check: ignoring DNS RR: xn--1xa.porcupine.org. TTL IN MX 10 spike.porcupine.org. 18./smtpd_check: warning: xn--1xa.porcupine.org: address or MX lookup error: DNS reply filter drops all results 19OK 20>>> # EXPECT OK (nullmx has A record) 21>>> helo nullmx.porcupine.org 22OK 23>>> # EXPECT reject (nxdomain is not filtered). 24>>> helo nxdomain.porcupine.org 25./smtpd_check: <queue id>: reject: HELO from localhost[127.0.0.1]: 450 4.7.1 <nxdomain.porcupine.org>: Helo command rejected: Host not found; proto=SMTP helo=<nxdomain.porcupine.org> 26450 4.7.1 <nxdomain.porcupine.org>: Helo command rejected: Host not found 27>>> smtpd_dns_reply_filter regexp:../dns/no-a.reg 28OK 29>>> # EXPECT OK (host has AAAA record). 30>>> mail user@spike.porcupine.org 31OK 32>>> helo spike.porcupine.org 33./smtpd_check: ignoring DNS RR: spike.porcupine.org. TTL IN A 168.100.3.2 34OK 35>>> # EXPECT OK + "all A records dropped" warning + no delayed reject. 36>>> helo fist.porcupine.org 37./smtpd_check: ignoring DNS RR: fist.porcupine.org. TTL IN A 168.100.3.4 38./smtpd_check: warning: fist.porcupine.org: address or MX lookup error: DNS reply filter drops all results 39OK 40>>> mail user@spike.porcupine.org 41OK 42>>> rcpt user@spike.porcupine.org 43OK 44>>> smtpd_dns_reply_filter regexp:../dns/error.reg 45OK 46>>> # EXPECT OK + "filter config error" warning + delayed reject. 47>>> helo spike.porcupine.org 48./smtpd_check: warning: smtpd_dns_reply_filter: unknown DNS filter action: "oops" 49./smtpd_check: warning: smtpd_dns_reply_filter: unknown DNS filter action: "oops" 50OK 51>>> mail user@spike.porcupine.org 52OK 53>>> rcpt user@spike.porcupine.org 54./smtpd_check: <queue id>: reject: RCPT from localhost[127.0.0.1]: 450 4.7.1 <spike.porcupine.org>: Helo command rejected: Host not found; from=<user@spike.porcupine.org> to=<user@spike.porcupine.org> proto=SMTP helo=<spike.porcupine.org> 55450 4.7.1 <spike.porcupine.org>: Helo command rejected: Host not found 56>>> # EXPECT OK + "filter config error" warning (nullmx has A record) + delayed reject. 57>>> helo nullmx.porcupine.org 58./smtpd_check: warning: smtpd_dns_reply_filter: unknown DNS filter action: "oops" 59OK 60>>> mail user@spike.porcupine.org 61OK 62>>> rcpt user@spike.porcupine.org 63./smtpd_check: <queue id>: reject: RCPT from localhost[127.0.0.1]: 450 4.7.1 <nullmx.porcupine.org>: Helo command rejected: Host not found; from=<user@spike.porcupine.org> to=<user@spike.porcupine.org> proto=SMTP helo=<nullmx.porcupine.org> 64450 4.7.1 <nullmx.porcupine.org>: Helo command rejected: Host not found 65>>> # EXPECT reject (nxdomain is not filtered). 66>>> helo nxdomain.porcupine.org 67./smtpd_check: <queue id>: reject: HELO from localhost[127.0.0.1]: 450 4.7.1 <nxdomain.porcupine.org>: Helo command rejected: Host not found; from=<user@spike.porcupine.org> proto=SMTP helo=<nxdomain.porcupine.org> 68450 4.7.1 <nxdomain.porcupine.org>: Helo command rejected: Host not found 69>>> # 70>>> # Test reject_unknown_sender_domain (same code as 71>>> # reject_unknown_recipient_domain). 72>>> # 73>>> smtpd_dns_reply_filter regexp:../dns/no-mx.reg 74OK 75>>> helo localhost 76OK 77>>> sender_restrictions reject_unknown_sender_domain 78OK 79>>> # EXPECT OK + "all MX records dropped" warning. 80>>> mail user@xn--1xa.porcupine.org 81./smtpd_check: ignoring DNS RR: xn--1xa.porcupine.org. TTL IN MX 10 spike.porcupine.org. 82./smtpd_check: warning: xn--1xa.porcupine.org: MX or address lookup error: DNS reply filter drops all results 83OK 84>>> # EXPECT reject (nullmx is not filtered). 85>>> mail user@nullmx.porcupine.org 86./smtpd_check: <queue id>: reject: MAIL from localhost[127.0.0.1]: 550 5.7.27 <user@nullmx.porcupine.org>: Sender address rejected: Domain nullmx.porcupine.org does not accept mail (nullMX); from=<user@nullmx.porcupine.org> proto=SMTP helo=<localhost> 87550 5.7.27 <user@nullmx.porcupine.org>: Sender address rejected: Domain nullmx.porcupine.org does not accept mail (nullMX) 88>>> # EXPECT reject (nxdomain is not filtered). 89>>> mail user@nxdomain.porcupine.org 90./smtpd_check: <queue id>: reject: MAIL from localhost[127.0.0.1]: 450 4.1.8 <user@nxdomain.porcupine.org>: Sender address rejected: Domain not found; from=<user@nxdomain.porcupine.org> proto=SMTP helo=<localhost> 91450 4.1.8 <user@nxdomain.porcupine.org>: Sender address rejected: Domain not found 92>>> # EXPECT OK 93>>> mail user@localhost 94OK 95>>> smtpd_dns_reply_filter regexp:../dns/no-a.reg 96OK 97>>> # EXPECT OK (host has AAAA record). 98>>> mail user@spike.porcupine.org 99./smtpd_check: ignoring DNS RR: spike.porcupine.org. TTL IN A 168.100.3.2 100OK 101>>> # EXPECT OK + "all A records dropped" warning. 102>>> mail user@fist.porcupine.org 103./smtpd_check: ignoring DNS RR: fist.porcupine.org. TTL IN A 168.100.3.4 104./smtpd_check: warning: fist.porcupine.org: MX or address lookup error: DNS reply filter drops all results 105OK 106>>> smtpd_dns_reply_filter regexp:../dns/error.reg 107OK 108>>> # EXPECT OK + "filter config error" warning + delayed reject. 109>>> mail user@xn--1xa.porcupine.org 110./smtpd_check: warning: smtpd_dns_reply_filter: unknown DNS filter action: "oops" 111OK 112>>> rcpt user 113./smtpd_check: <queue id>: reject: RCPT from localhost[127.0.0.1]: 450 4.1.8 <user@xn--1xa.porcupine.org>: Sender address rejected: Domain not found; from=<user@xn--1xa.porcupine.org> to=<user> proto=SMTP helo=<localhost> 114450 4.1.8 <user@xn--1xa.porcupine.org>: Sender address rejected: Domain not found 115>>> # EXPECT reject (nullmx is not filtered). 116>>> mail user@nullmx.porcupine.org 117./smtpd_check: <queue id>: reject: MAIL from localhost[127.0.0.1]: 550 5.7.27 <user@nullmx.porcupine.org>: Sender address rejected: Domain nullmx.porcupine.org does not accept mail (nullMX); from=<user@nullmx.porcupine.org> proto=SMTP helo=<localhost> 118550 5.7.27 <user@nullmx.porcupine.org>: Sender address rejected: Domain nullmx.porcupine.org does not accept mail (nullMX) 119>>> # EXPECT reject (nxdomain is not filtered). 120>>> mail user@nxdomain.porcupine.org 121./smtpd_check: <queue id>: reject: MAIL from localhost[127.0.0.1]: 450 4.1.8 <user@nxdomain.porcupine.org>: Sender address rejected: Domain not found; from=<user@nxdomain.porcupine.org> proto=SMTP helo=<localhost> 122450 4.1.8 <user@nxdomain.porcupine.org>: Sender address rejected: Domain not found 123>>> # 124>>> # Test reject_rbl_client 125>>> # 126>>> client_restrictions reject_rbl_client,dnsbltest.porcupine.org 127OK 128>>> smtpd_dns_reply_filter regexp:../dns/no-mx.reg 129OK 130>>> flush_dnsxl_cache 131OK 132>>> # EXPECT reject + A and TXT record. 133>>> client localhost 127.0.0.2 134./smtpd_check: <queue id>: reject: CONNECT from localhost[127.0.0.2]: 554 5.7.1 Service unavailable; Client host [127.0.0.2] blocked using dnsbltest.porcupine.org; DNS blocklist test; from=<user@nxdomain.porcupine.org> proto=SMTP helo=<localhost> 135554 5.7.1 Service unavailable; Client host [127.0.0.2] blocked using dnsbltest.porcupine.org; DNS blocklist test 136>>> smtpd_dns_reply_filter regexp:../dns/no-a.reg 137OK 138>>> flush_dnsxl_cache 139OK 140>>> # EXPECT OK + "all A results dropped" warning. 141>>> client localhost 127.0.0.2 142./smtpd_check: ignoring DNS RR: 2.0.0.127.dnsbltest.porcupine.org. TTL IN A 127.0.0.2 143./smtpd_check: warning: 2.0.0.127.dnsbltest.porcupine.org: RBL lookup error: Error looking up name=2.0.0.127.dnsbltest.porcupine.org type=A: DNS reply filter drops all results 144OK 145>>> smtpd_dns_reply_filter regexp:../dns/no-txt.reg 146OK 147>>> flush_dnsxl_cache 148OK 149>>> # EXPECT reject + A record, "all TXT results dropped" warning. 150>>> client localhost 127.0.0.2 151./smtpd_check: ignoring DNS RR: 2.0.0.127.dnsbltest.porcupine.org. TTL IN TXT DNS blocklist test 152./smtpd_check: warning: 2.0.0.127.dnsbltest.porcupine.org: TXT lookup error: DNS reply filter drops all results 153./smtpd_check: <queue id>: reject: CONNECT from localhost[127.0.0.2]: 554 5.7.1 Service unavailable; Client host [127.0.0.2] blocked using dnsbltest.porcupine.org; from=<user@nxdomain.porcupine.org> proto=SMTP helo=<localhost> 154554 5.7.1 Service unavailable; Client host [127.0.0.2] blocked using dnsbltest.porcupine.org 155>>> smtpd_dns_reply_filter regexp:../dns/error.reg 156OK 157>>> flush_dnsxl_cache 158OK 159>>> # EXPECT OK + "filter configuration error" 160>>> client localhost 127.0.0.2 161./smtpd_check: warning: smtpd_dns_reply_filter: unknown DNS filter action: "oops" 162./smtpd_check: warning: 2.0.0.127.dnsbltest.porcupine.org: RBL lookup error: Error looking up name=2.0.0.127.dnsbltest.porcupine.org type=A: Invalid DNS reply filter syntax 163OK 164