diff options
author | Jeremy Harris <jgh146exb@wizmail.org> | 2013-01-26 23:21:37 +0000 |
---|---|---|
committer | Jeremy Harris <jgh146exb@wizmail.org> | 2013-01-26 23:21:37 +0000 |
commit | fd98a5c6771f3a5a686e54370b0525dcc3dca2f9 (patch) | |
tree | 76516595e99dc88d8d3abd6d3cf2a8b734e9b4e8 /test/scripts/5500-PRDR | |
parent | 514ee161db1166e94b9ee889953f2e9774cee973 (diff) |
PRDR support, if compiled with EXPERIMENTAL_PRDR
Diffstat (limited to 'test/scripts/5500-PRDR')
-rw-r--r-- | test/scripts/5500-PRDR/5500 | 155 | ||||
-rw-r--r-- | test/scripts/5500-PRDR/5510 | 228 | ||||
-rw-r--r-- | test/scripts/5500-PRDR/REQUIRES | 1 |
3 files changed, 384 insertions, 0 deletions
diff --git a/test/scripts/5500-PRDR/5500 b/test/scripts/5500-PRDR/5500 new file mode 100644 index 000000000..567b00085 --- /dev/null +++ b/test/scripts/5500-PRDR/5500 @@ -0,0 +1,155 @@ +# PRDR (Per-Recipient Data Responses) server +need_ipv4 +no_msglog_check +# +# 1: userx should be accepted, y should be tmp-rejected, +# z rejected, all after data per PRDR spec +exim -DSERVER=server -bd -oX PORT_D +**** +client 127.0.0.1 PORT_D +??? 220 +ehlo rhu.barb +??? 250- +??? 250- +??? 250- +??? 250- +??? 250-PRDR +??? 250 +mail from:<> PRDR +??? 250 +rcpt to:<userx@test.ex> +??? 250 +rcpt to:<usery@test.ex> +??? 250 +rcpt to:<userz@test.ex> +??? 250 +data +??? 354 +Sender: sender@some.where +. +??? 353 +??? 250 +??? 450 +??? 550 +??? 250 +quit +??? 221 +**** +sleep 1 +# +# +# 2: traditional data acl should be called, resulting in an overall reject +client 127.0.0.1 PORT_D +??? 220 +ehlo rhu.barb +??? 250- +??? 250- +??? 250- +??? 250- +??? 250-PRDR +??? 250 +mail from:<> PRDR +??? 250 +rcpt to:<userp@test.ex> +??? 250 +rcpt to:<userq@test.ex> +??? 250 +data +??? 354 +Sender: sender@some.where +. +??? 353 +??? 250 +??? 250 +??? 550 +quit +??? 221 +**** +sleep 1 +# +# +# 3: PRDR should be avoided for a single-recipient message +# even though the client showed support. +client 127.0.0.1 PORT_D +??? 220 +ehlo rhu.barb +??? 250- +??? 250- +??? 250- +??? 250- +??? 250-PRDR +??? 250 +mail from:<> PRDR +??? 250 +rcpt to:<user1@test.ex> +??? 250 +data +??? 354 +Sender: sender@some.where +. +??? 250 +quit +??? 221 +**** +sleep 1 +# +# 4: double temp-reject +client 127.0.0.1 PORT_D +??? 220 +ehlo rhu.barb +??? 250- +??? 250- +??? 250- +??? 250- +??? 250-PRDR +??? 250 +mail from:<> PRDR +??? 250 +rcpt to:<usery@test.ex> +??? 250 +rcpt to:<usery@test.ex> +??? 250 +data +??? 354 +Sender: sender@some.where +. +??? 353 +??? 450 +??? 450 +??? 250 +quit +??? 221 +**** +sleep 1 +# +# 5: double reject +client 127.0.0.1 PORT_D +??? 220 +ehlo rhu.barb +??? 250- +??? 250- +??? 250- +??? 250- +??? 250-PRDR +??? 250 +mail from:<> PRDR +??? 250 +rcpt to:<userz@test.ex> +??? 250 +rcpt to:<userz@test.ex> +??? 250 +data +??? 354 +Sender: sender@some.where +. +??? 353 +??? 550 +??? 550 +??? 550 +quit +??? 221 +**** +sleep 1 +# +killdaemon +# diff --git a/test/scripts/5500-PRDR/5510 b/test/scripts/5500-PRDR/5510 new file mode 100644 index 000000000..e5063a47a --- /dev/null +++ b/test/scripts/5500-PRDR/5510 @@ -0,0 +1,228 @@ +# PRDR client +need_ipv4 +no_msglog_check +# +# 1: Two recipients, accepted by full PRDR response sequence +server PORT_S +220 Server ready +EHLO +250- +250-PRDR +250 OK +MAIL FROM:<userx@test.ex> PRDR +250 OK +RCPT TO +250 OK +RCPT TO +250 OK +DATA +300 gimme yer body +. +353 prdr responses coming up +250 first rcpt was good +250 second rcpt was good +250 OK, overall +QUIT +250 OK +**** +exim -odi -f userx usery userz +Some message text. +**** +# +# +# 2: Two recipients, accepted by traditional response +# though client offered full PRDR capability +server PORT_S +220 Server ready +EHLO +250- +250-PRDR +250 OK +MAIL FROM:<userx@test.ex> PRDR +250 OK +RCPT TO +250 OK +RCPT TO +250 OK +DATA +300 gimme that body +. +250 OK got that +QUIT +250 OK, bye +**** +exim -odi -f userx user2.1 user2.2 +Some message text. +**** +# +# +# 3: Two recipients, one accepted one tmp-rejected +server PORT_S +220 Server ready +EHLO +250- +250-PRDR +250 OK +MAIL FROM:<userx@test.ex> PRDR +250 OK +RCPT TO +250 OK +RCPT TO +250 OK +DATA +300 gimme yer body +. +353 prdr responses coming up +250 first rcpt was good +450 cannot handle second rcpt right now +250 OK, overall +QUIT +250 OK +**** +exim -odi -f userx usery userz +Some message text. +**** +# +# +# 4: Two recipients, one accepted one rejected +# Avoid tester issues dealing with the bounce by sending +# with a null from. +# +server PORT_S +220 Server ready +EHLO +250- +250-PRDR +250 OK +MAIL FROM:<> PRDR +250 OK +RCPT TO +250 OK +RCPT TO +250 OK +DATA +300 gimme yer body +. +353 prdr responses coming up +250 first rcpt was good +550 second rcpt does not like content +250 OK, overall +QUIT +250 OK +**** +exim -odi -f "" userp userq +Some message text. +**** +# +# +# 5: Two recipients, rejected by final after PRDR accepts. +# +server PORT_S +220 Server ready +EHLO +250- +250-PRDR +250 OK +MAIL FROM:<> PRDR +250 OK +RCPT TO +250 OK +RCPT TO +250 OK +DATA +300 yeah baby +. +353 prdr responses coming up +250 first rcpt was good +250 second rcpt was good +550 oops, overall rejection +QUIT +250 OK +**** +exim -odi -f "" user5.1 user5.2 +text +**** +# +# +# 6: Two recipients, rejected traditionally though PRDR negociated. +# +server PORT_S +220 Server ready +EHLO +250- +250-PRDR +250 OK +MAIL FROM:<> PRDR +250 OK +RCPT TO +250 OK +RCPT TO +250 OK +DATA +300 yeah baby +. +550 naah mate +QUIT +250 OK +**** +exim -odi -f "" user6.1 user6.2 +text +**** +# +# +# 7: Temp-reject at final +server PORT_S +220 Server ready +EHLO +250- +250-PRDR +250 OK +MAIL FROM:<> PRDR +250 OK +RCPT TO +250 OK +RCPT TO +250 OK +RCPT TO +250 OK +DATA +300 go ahead +. +353 prdr responses coming up +250 first rcpt does not like you +250 second rcpt has a temporary problem +250 third rcpt is ok +450 oops, try again later please +QUIT +250 OK +**** +exim -odi -f "" user7.1 user7.2 user7.3 +text +**** +# +# +# +# 8: Client should avoid requesting PRDR for a single-recipient mail +# even though the server offers +server PORT_S +220 Server ready +EHLO +250- +250-PRDR +250 OK +MAIL FROM:<> +250 OK +RCPT TO +250 OK +DATA +300 go ahead +. +250 OK, got that +QUIT +250 OK, bye +**** +exim -odi -f "" user8.1 +text +**** +# +# diff --git a/test/scripts/5500-PRDR/REQUIRES b/test/scripts/5500-PRDR/REQUIRES new file mode 100644 index 000000000..b3c99396a --- /dev/null +++ b/test/scripts/5500-PRDR/REQUIRES @@ -0,0 +1 @@ +support Experimental_PRDR |