>>> # >>> # Initialize. >>> # >>> #! ../bin/postmap smtpd_check_access >>> #msg_verbose 1 >>> smtpd_delay_reject 0 OK >>> mynetworks 127.0.0.0/8,168.100.3.0/28 OK >>> # >>> # Test the client restrictions. >>> # >>> client_restrictions hash:./smtpd_check_access OK >>> client 4.1.1_dsn 1.2.3.4 ./smtpd_check: mapping DSN status 4.1.1 into Client host status 4.0.0 ./smtpd_check: : reject: CONNECT from 4.1.1_dsn[1.2.3.4]: 554 5.0.0 <4.1.1_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 554 5.0.0 <4.1.1_dsn[1.2.3.4]>: Client host rejected: reject >>> client 4.1.2_dsn 1.2.3.4 ./smtpd_check: mapping DSN status 4.1.2 into Client host status 4.0.0 ./smtpd_check: : reject: CONNECT from 4.1.2_dsn[1.2.3.4]: 554 5.0.0 <4.1.2_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 554 5.0.0 <4.1.2_dsn[1.2.3.4]>: Client host rejected: reject >>> client 4.1.3_dsn 1.2.3.4 ./smtpd_check: mapping DSN status 4.1.3 into Client host status 4.0.0 ./smtpd_check: : reject: CONNECT from 4.1.3_dsn[1.2.3.4]: 554 5.0.0 <4.1.3_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 554 5.0.0 <4.1.3_dsn[1.2.3.4]>: Client host rejected: reject >>> client 4.1.4_dsn 1.2.3.4 ./smtpd_check: mapping DSN status 4.1.4 into Client host status 4.0.0 ./smtpd_check: : reject: CONNECT from 4.1.4_dsn[1.2.3.4]: 554 5.0.0 <4.1.4_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 554 5.0.0 <4.1.4_dsn[1.2.3.4]>: Client host rejected: reject >>> client 4.1.5_dsn 1.2.3.4 ./smtpd_check: mapping DSN status 4.1.5 into Client host status 4.0.0 ./smtpd_check: : reject: CONNECT from 4.1.5_dsn[1.2.3.4]: 554 5.0.0 <4.1.5_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 554 5.0.0 <4.1.5_dsn[1.2.3.4]>: Client host rejected: reject >>> client 4.1.6_dsn 1.2.3.4 ./smtpd_check: mapping DSN status 4.1.6 into Client host status 4.0.0 ./smtpd_check: : reject: CONNECT from 4.1.6_dsn[1.2.3.4]: 554 5.0.0 <4.1.6_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 554 5.0.0 <4.1.6_dsn[1.2.3.4]>: Client host rejected: reject >>> client 4.1.7_dsn 1.2.3.4 ./smtpd_check: mapping DSN status 4.1.7 into Client host status 4.0.0 ./smtpd_check: : reject: CONNECT from 4.1.7_dsn[1.2.3.4]: 554 5.0.0 <4.1.7_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 554 5.0.0 <4.1.7_dsn[1.2.3.4]>: Client host rejected: reject >>> client 4.1.8_dsn 1.2.3.4 ./smtpd_check: mapping DSN status 4.1.8 into Client host status 4.0.0 ./smtpd_check: : reject: CONNECT from 4.1.8_dsn[1.2.3.4]: 554 5.0.0 <4.1.8_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 554 5.0.0 <4.1.8_dsn[1.2.3.4]>: Client host rejected: reject >>> client 4.4.0_dsn 1.2.3.4 ./smtpd_check: : reject: CONNECT from 4.4.0_dsn[1.2.3.4]: 554 5.4.0 <4.4.0_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 554 5.4.0 <4.4.0_dsn[1.2.3.4]>: Client host rejected: reject >>> client dummy dummy OK >>> # >>> # Test the helo restrictions >>> # >>> helo_restrictions hash:./smtpd_check_access OK >>> helo 4.1.1_dsn ./smtpd_check: mapping DSN status 4.1.1 into Helo command status 4.0.0 ./smtpd_check: : reject: HELO from dummy[dummy]: 554 5.0.0 <4.1.1_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.1.1_dsn> 554 5.0.0 <4.1.1_dsn>: Helo command rejected: reject >>> helo 4.1.2_dsn ./smtpd_check: mapping DSN status 4.1.2 into Helo command status 4.0.0 ./smtpd_check: : reject: HELO from dummy[dummy]: 554 5.0.0 <4.1.2_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.1.2_dsn> 554 5.0.0 <4.1.2_dsn>: Helo command rejected: reject >>> helo 4.1.3_dsn ./smtpd_check: mapping DSN status 4.1.3 into Helo command status 4.0.0 ./smtpd_check: : reject: HELO from dummy[dummy]: 554 5.0.0 <4.1.3_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.1.3_dsn> 554 5.0.0 <4.1.3_dsn>: Helo command rejected: reject >>> helo 4.1.4_dsn ./smtpd_check: mapping DSN status 4.1.4 into Helo command status 4.0.0 ./smtpd_check: : reject: HELO from dummy[dummy]: 554 5.0.0 <4.1.4_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.1.4_dsn> 554 5.0.0 <4.1.4_dsn>: Helo command rejected: reject >>> helo 4.1.5_dsn ./smtpd_check: mapping DSN status 4.1.5 into Helo command status 4.0.0 ./smtpd_check: : reject: HELO from dummy[dummy]: 554 5.0.0 <4.1.5_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.1.5_dsn> 554 5.0.0 <4.1.5_dsn>: Helo command rejected: reject >>> helo 4.1.6_dsn ./smtpd_check: mapping DSN status 4.1.6 into Helo command status 4.0.0 ./smtpd_check: : reject: HELO from dummy[dummy]: 554 5.0.0 <4.1.6_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.1.6_dsn> 554 5.0.0 <4.1.6_dsn>: Helo command rejected: reject >>> helo 4.1.7_dsn ./smtpd_check: mapping DSN status 4.1.7 into Helo command status 4.0.0 ./smtpd_check: : reject: HELO from dummy[dummy]: 554 5.0.0 <4.1.7_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.1.7_dsn> 554 5.0.0 <4.1.7_dsn>: Helo command rejected: reject >>> helo 4.1.8_dsn ./smtpd_check: mapping DSN status 4.1.8 into Helo command status 4.0.0 ./smtpd_check: : reject: HELO from dummy[dummy]: 554 5.0.0 <4.1.8_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.1.8_dsn> 554 5.0.0 <4.1.8_dsn>: Helo command rejected: reject >>> helo 4.4.0_dsn ./smtpd_check: : reject: HELO from dummy[dummy]: 554 5.4.0 <4.4.0_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.4.0_dsn> 554 5.4.0 <4.4.0_dsn>: Helo command rejected: reject >>> # >>> # Test the sender restrictions >>> # >>> sender_restrictions hash:./smtpd_check_access OK >>> mail user@4.1.1_dsn ./smtpd_check: mapping DSN status 4.1.1 into Sender address status 4.1.7 ./smtpd_check: : reject: MAIL from dummy[dummy]: 554 5.1.7 : Sender address rejected: reject; from= proto=SMTP helo=<4.4.0_dsn> 554 5.1.7 : Sender address rejected: reject >>> mail user@4.1.2_dsn ./smtpd_check: mapping DSN status 4.1.2 into Sender address status 4.1.8 ./smtpd_check: : reject: MAIL from dummy[dummy]: 554 5.1.8 : Sender address rejected: reject; from= proto=SMTP helo=<4.4.0_dsn> 554 5.1.8 : Sender address rejected: reject >>> mail user@4.1.3_dsn ./smtpd_check: mapping DSN status 4.1.3 into Sender address status 4.1.7 ./smtpd_check: : reject: MAIL from dummy[dummy]: 554 5.1.7 : Sender address rejected: reject; from= proto=SMTP helo=<4.4.0_dsn> 554 5.1.7 : Sender address rejected: reject >>> mail user@4.1.4_dsn ./smtpd_check: mapping DSN status 4.1.4 into Sender address status 4.1.7 ./smtpd_check: : reject: MAIL from dummy[dummy]: 554 5.1.7 : Sender address rejected: reject; from= proto=SMTP helo=<4.4.0_dsn> 554 5.1.7 : Sender address rejected: reject >>> mail user@4.1.5_dsn ./smtpd_check: mapping DSN status 4.1.5 into Sender address status 4.1.0 ./smtpd_check: : reject: MAIL from dummy[dummy]: 554 5.1.0 : Sender address rejected: reject; from= proto=SMTP helo=<4.4.0_dsn> 554 5.1.0 : Sender address rejected: reject >>> mail user@4.1.6_dsn ./smtpd_check: mapping DSN status 4.1.6 into Sender address status 4.1.7 ./smtpd_check: : reject: MAIL from dummy[dummy]: 554 5.1.7 : Sender address rejected: reject; from= proto=SMTP helo=<4.4.0_dsn> 554 5.1.7 : Sender address rejected: reject >>> mail user@4.1.7_dsn ./smtpd_check: : reject: MAIL from dummy[dummy]: 554 5.1.7 : Sender address rejected: reject; from= proto=SMTP helo=<4.4.0_dsn> 554 5.1.7 : Sender address rejected: reject >>> mail user@4.1.8_dsn ./smtpd_check: : reject: MAIL from dummy[dummy]: 554 5.1.8 : Sender address rejected: reject; from= proto=SMTP helo=<4.4.0_dsn> 554 5.1.8 : Sender address rejected: reject >>> mail user@4.4.0_dsn ./smtpd_check: : reject: MAIL from dummy[dummy]: 554 5.4.0 : Sender address rejected: reject; from= proto=SMTP helo=<4.4.0_dsn> 554 5.4.0 : Sender address rejected: reject >>> # >>> # Test the recipient restrictions >>> # >>> recipient_restrictions hash:./smtpd_check_access OK >>> rcpt user@4.1.1_dsn ./smtpd_check: : reject: RCPT from dummy[dummy]: 554 5.1.1 : Recipient address rejected: reject; from= to= proto=SMTP helo=<4.4.0_dsn> 554 5.1.1 : Recipient address rejected: reject >>> rcpt user@4.1.2_dsn ./smtpd_check: : reject: RCPT from dummy[dummy]: 554 5.1.2 : Recipient address rejected: reject; from= to= proto=SMTP helo=<4.4.0_dsn> 554 5.1.2 : Recipient address rejected: reject >>> rcpt user@4.1.3_dsn ./smtpd_check: : reject: RCPT from dummy[dummy]: 554 5.1.3 : Recipient address rejected: reject; from= to= proto=SMTP helo=<4.4.0_dsn> 554 5.1.3 : Recipient address rejected: reject >>> rcpt user@4.1.4_dsn ./smtpd_check: : reject: RCPT from dummy[dummy]: 554 5.1.4 : Recipient address rejected: reject; from= to= proto=SMTP helo=<4.4.0_dsn> 554 5.1.4 : Recipient address rejected: reject >>> rcpt user@4.1.5_dsn ./smtpd_check: : reject: RCPT from dummy[dummy]: 554 5.1.5 : Recipient address rejected: reject; from= to= proto=SMTP helo=<4.4.0_dsn> 554 5.1.5 : Recipient address rejected: reject >>> rcpt user@4.1.6_dsn ./smtpd_check: : reject: RCPT from dummy[dummy]: 554 5.1.6 : Recipient address rejected: reject; from= to= proto=SMTP helo=<4.4.0_dsn> 554 5.1.6 : Recipient address rejected: reject >>> rcpt user@4.1.7_dsn ./smtpd_check: mapping DSN status 4.1.7 into Recipient address status 4.1.3 ./smtpd_check: : reject: RCPT from dummy[dummy]: 554 5.1.3 : Recipient address rejected: reject; from= to= proto=SMTP helo=<4.4.0_dsn> 554 5.1.3 : Recipient address rejected: reject >>> rcpt user@4.1.8_dsn ./smtpd_check: mapping DSN status 4.1.8 into Recipient address status 4.1.2 ./smtpd_check: : reject: RCPT from dummy[dummy]: 554 5.1.2 : Recipient address rejected: reject; from= to= proto=SMTP helo=<4.4.0_dsn> 554 5.1.2 : Recipient address rejected: reject >>> rcpt user@4.4.0_dsn ./smtpd_check: : reject: RCPT from dummy[dummy]: 554 5.4.0 : Recipient address rejected: reject; from= to= proto=SMTP helo=<4.4.0_dsn> 554 5.4.0 : Recipient address rejected: reject