diff options
author | Simon Arlott <bugzilla.exim.simon@arlott.org> | 2021-02-08 19:04:30 +0000 |
---|---|---|
committer | Jeremy Harris <jgh146exb@wizmail.org> | 2021-02-08 19:06:22 +0000 |
commit | 5ce86c4f552071ad7408c40324d5211ab2a2da82 (patch) | |
tree | 40443656dbfbde38f0d9304287695c0f569b6542 | |
parent | b664a2512489bbeab422ff4bb8329591903d9341 (diff) |
Testsuite: expand testcase. Bug 2693
-rw-r--r-- | test/confs/0622 | 9 | ||||
-rw-r--r-- | test/log/0622 | 43 | ||||
-rw-r--r-- | test/rejectlog/0622 | 7 | ||||
-rw-r--r-- | test/scripts/0000-Basic/0622 | 25 |
4 files changed, 77 insertions, 7 deletions
diff --git a/test/confs/0622 b/test/confs/0622 index 5dc3e0f94..8f9d71980 100644 --- a/test/confs/0622 +++ b/test/confs/0622 @@ -1,24 +1,20 @@ # Exim test configuration 0622 SERVER= +HAP= .include DIR/aux-var/std_conf_prefix primary_hostname = myhost.test.ex -log_selector = +pipelining +received_recipients +log_selector = +pipelining +received_recipients +smtp_connection # ----- Main settings ----- -acl_smtp_connect = check_connect acl_smtp_rcpt = check_rcpt begin acl -check_connect: - accept - logwrite = :main:New connection - check_rcpt: defer condition = ${if eq {$acl_m0}{1}} @@ -67,6 +63,7 @@ send_to_server: hosts = 127.0.0.1 port = PORT_D max_rcpt = 0 + HAP # ----- Retry ----- diff --git a/test/log/0622 b/test/log/0622 index 7f8edd25f..3d6843d9f 100644 --- a/test/log/0622 +++ b/test/log/0622 @@ -6,10 +6,25 @@ 1999-03-02 09:44:33 10HmaX-0005vi-00 -> e@test.ex <E@test.ex> R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 OK id=10HmaZ-0005vi-00" 1999-03-02 09:44:33 10HmaX-0005vi-00 -> f@test.ex <F@test.ex> R=client T=send_to_server H=127.0.0.1 [127.0.0.1] L C="250 OK id=10HmaZ-0005vi-00" 1999-03-02 09:44:33 10HmaX-0005vi-00 Completed +1999-03-02 09:44:33 10HmbB-0005vi-00 <= CALLER@myhost.test.ex U=CALLER P=local S=sss for A@test.ex B@test.ex C@test.ex D@test.ex E@test.ex F@test.ex +1999-03-02 09:44:33 10HmbB-0005vi-00 => a@test.ex <A@test.ex> R=client T=send_to_server H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbC-0005vi-00" +1999-03-02 09:44:33 10HmbB-0005vi-00 == b@test.ex <B@test.ex> R=client T=send_to_server defer (-44) H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<B@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 10HmbB-0005vi-00 == c@test.ex <C@test.ex> R=client T=send_to_server defer (-44) H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<C@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 10HmbB-0005vi-00 == d@test.ex <D@test.ex> R=client T=send_to_server defer (-44) H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<D@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 10HmbB-0005vi-00 == e@test.ex <E@test.ex> R=client T=send_to_server defer (-44) H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<E@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 10HmbB-0005vi-00 == f@test.ex <F@test.ex> R=client T=send_to_server defer (-44) H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<F@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 10HmbB-0005vi-00 => b@test.ex <B@test.ex> R=client T=send_to_server H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbD-0005vi-00" +1999-03-02 09:44:33 10HmbB-0005vi-00 == c@test.ex <C@test.ex> R=client T=send_to_server defer (-44) H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<C@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 10HmbB-0005vi-00 == d@test.ex <D@test.ex> R=client T=send_to_server defer (-44) H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after RCPT TO:<D@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 10HmbB-0005vi-00 -> e@test.ex <E@test.ex> R=client T=send_to_server H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbD-0005vi-00" +1999-03-02 09:44:33 10HmbB-0005vi-00 -> f@test.ex <F@test.ex> R=client T=send_to_server H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbD-0005vi-00" +1999-03-02 09:44:33 10HmbB-0005vi-00 => c@test.ex <C@test.ex> R=client T=send_to_server H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbE-0005vi-00" +1999-03-02 09:44:33 10HmbB-0005vi-00 -> d@test.ex <D@test.ex> R=client T=send_to_server H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbE-0005vi-00" +1999-03-02 09:44:33 10HmbB-0005vi-00 Completed ******** SERVER ******** 1999-03-02 09:44:33 exim x.yz daemon started: pid=pppp, no queue runs, listening for SMTP on port PORT_D -1999-03-02 09:44:33 New connection +1999-03-02 09:44:33 SMTP connection from [127.0.0.1] (TCP/IP connection count = 1) 1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <B@test.ex>: 452 4.5.3 Try again 1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <C@test.ex>: 452 4.5.3 Try again 1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <D@test.ex>: 452 4.5.3 Try again @@ -29,3 +44,29 @@ 1999-03-02 09:44:33 10HmbA-0005vi-00 => :blackhole: <D@test.ex> R=server 1999-03-02 09:44:33 10HmbA-0005vi-00 => :blackhole: <C@test.ex> R=server 1999-03-02 09:44:33 10HmbA-0005vi-00 Completed +1999-03-02 09:44:33 SMTP connection from localhost (myhost.test.ex) [127.0.0.1] closed by QUIT +1999-03-02 09:44:33 SMTP connection from [127.0.0.1] (TCP/IP connection count = 1) +1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <B@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <C@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <D@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <E@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <F@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 10HmbC-0005vi-00 <= CALLER@myhost.test.ex H=localhost (myhost.test.ex) [127.0.0.1] P=esmtp L- S=sss id=E10HmbB-0005vi-00@myhost.test.ex for A@test.ex +1999-03-02 09:44:33 10HmbC-0005vi-00 => :blackhole: <A@test.ex> R=server +1999-03-02 09:44:33 10HmbC-0005vi-00 Completed +1999-03-02 09:44:33 SMTP connection from localhost (myhost.test.ex) [127.0.0.1] closed by QUIT +1999-03-02 09:44:33 SMTP connection from [127.0.0.1] (TCP/IP connection count = 1) +1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <C@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <D@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 10HmbD-0005vi-00 <= CALLER@myhost.test.ex H=localhost (myhost.test.ex) [127.0.0.1] P=esmtp L- S=sss id=E10HmbB-0005vi-00@myhost.test.ex for B@test.ex E@test.ex F@test.ex +1999-03-02 09:44:33 10HmbD-0005vi-00 => :blackhole: <F@test.ex> R=server +1999-03-02 09:44:33 10HmbD-0005vi-00 => :blackhole: <E@test.ex> R=server +1999-03-02 09:44:33 10HmbD-0005vi-00 => :blackhole: <B@test.ex> R=server +1999-03-02 09:44:33 10HmbD-0005vi-00 Completed +1999-03-02 09:44:33 SMTP connection from localhost (myhost.test.ex) [127.0.0.1] closed by QUIT +1999-03-02 09:44:33 SMTP connection from [127.0.0.1] (TCP/IP connection count = 1) +1999-03-02 09:44:33 10HmbE-0005vi-00 <= CALLER@myhost.test.ex H=localhost (myhost.test.ex) [127.0.0.1] P=esmtp L- S=sss id=E10HmbB-0005vi-00@myhost.test.ex for C@test.ex D@test.ex +1999-03-02 09:44:33 10HmbE-0005vi-00 => :blackhole: <D@test.ex> R=server +1999-03-02 09:44:33 10HmbE-0005vi-00 => :blackhole: <C@test.ex> R=server +1999-03-02 09:44:33 10HmbE-0005vi-00 Completed +1999-03-02 09:44:33 SMTP connection from localhost (myhost.test.ex) [127.0.0.1] closed by QUIT diff --git a/test/rejectlog/0622 b/test/rejectlog/0622 index 701e35485..f92d0461e 100644 --- a/test/rejectlog/0622 +++ b/test/rejectlog/0622 @@ -7,3 +7,10 @@ 1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <F@test.ex>: 452 4.5.3 Try again 1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <C@test.ex>: 452 4.5.3 Try again 1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <D@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <B@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <C@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <D@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <E@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <F@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <C@test.ex>: 452 4.5.3 Try again +1999-03-02 09:44:33 H=localhost (myhost.test.ex) [127.0.0.1] F=<CALLER@myhost.test.ex> temporarily rejected RCPT <D@test.ex>: 452 4.5.3 Try again diff --git a/test/scripts/0000-Basic/0622 b/test/scripts/0000-Basic/0622 index 096980b80..e98a53aeb 100644 --- a/test/scripts/0000-Basic/0622 +++ b/test/scripts/0000-Basic/0622 @@ -8,10 +8,35 @@ To: A@test.ex,B@test.ex,C@test.ex,D@test.ex,E@test.ex,F@test.ex Testing **** +# "A" should go throuugh as one MAIL FROM message, B,E,F as a second, C,D +# as a third - due to the server responses. Note that the client logging +# gets overlapped; look at the server's id= logged with the 250 by the client. exim -M $msg1 **** # # +# +# +# Repeat without pipelining, just as a baseline check. +# The optimisation, that does another message attempt immediately on the open +# connection, is only there for the pipelined case at present. So we must +# kick the message three times for three separate connections. +# (A possible enhancement, if anyone cares. "first_addr" in +# smtp_deliver/sync_responses is the key). +# +exim -odq -t +To: A@test.ex,B@test.ex,C@test.ex,D@test.ex,E@test.ex,F@test.ex + +Testing +**** +exim -DHAP=hosts_avoid_pipelining=127.0.0.1 -M $msg1 +**** +exim -DHAP=hosts_avoid_pipelining=127.0.0.1 -M $msg1 +**** +exim -DHAP=hosts_avoid_pipelining=127.0.0.1 -M $msg1 +**** +# +# killdaemon no_msglog_check sleep 1 |