summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Arlott <bugzilla.exim.simon@arlott.org>2021-02-08 19:04:30 +0000
committerJeremy Harris <jgh146exb@wizmail.org>2021-02-08 19:06:22 +0000
commit5ce86c4f552071ad7408c40324d5211ab2a2da82 (patch)
tree40443656dbfbde38f0d9304287695c0f569b6542
parentb664a2512489bbeab422ff4bb8329591903d9341 (diff)
Testsuite: expand testcase. Bug 2693
-rw-r--r--test/confs/06229
-rw-r--r--test/log/062243
-rw-r--r--test/rejectlog/06227
-rw-r--r--test/scripts/0000-Basic/062225
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