summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorJeremy Harris <jgh146exb@wizmail.org>2018-08-09 20:37:42 +0100
committerJeremy Harris <jgh146exb@wizmail.org>2018-08-09 21:19:17 +0100
commit8a6b4e02cd384193a5566e8601bdd97249b22284 (patch)
treede684b5461dca9486b14313e34ce21f7d1bf6286 /test
parent20751c768578c81f5136f58b4bd98109716894b0 (diff)
Fix cutthrough delivery for more than one iteration of address redirection. Bug 2296
Diffstat (limited to 'test')
-rw-r--r--test/confs/54005
l---------test/confs/54081
-rw-r--r--test/log/540817
-rw-r--r--test/scripts/5400-cutthrough/5408115
4 files changed, 138 insertions, 0 deletions
diff --git a/test/confs/5400 b/test/confs/5400
index 5a5e60a88..ad48ebda8 100644
--- a/test/confs/5400
+++ b/test/confs/5400
@@ -34,6 +34,11 @@ ar:
begin routers
+redir:
+ driver = redirect
+ local_parts = ^r
+ data = ${substr_1:$local_part}@$domain
+
dns:
driver = dnslookup
domains = localhost.test.ex : localhost4.test.ex : thishost.test.ex
diff --git a/test/confs/5408 b/test/confs/5408
new file mode 120000
index 000000000..8f6811b7e
--- /dev/null
+++ b/test/confs/5408
@@ -0,0 +1 @@
+5400 \ No newline at end of file
diff --git a/test/log/5408 b/test/log/5408
new file mode 100644
index 000000000..2b367ac3c
--- /dev/null
+++ b/test/log/5408
@@ -0,0 +1,17 @@
+**NOTE: The delivery lines in this file have been sorted.
+1999-03-02 09:44:33 rcpt for userx@domain.com
+1999-03-02 09:44:33 10HmaX-0005vi-00 >> userx@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
+1999-03-02 09:44:33 10HmaX-0005vi-00 <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss for userx@domain.com
+1999-03-02 09:44:33 10HmaX-0005vi-00 Completed
+1999-03-02 09:44:33 rcpt for ruserx@domain.com
+1999-03-02 09:44:33 10HmaY-0005vi-00 >> userx@domain.com <ruserx@domain.com> R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
+1999-03-02 09:44:33 10HmaY-0005vi-00 <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss for ruserx@domain.com
+1999-03-02 09:44:33 10HmaY-0005vi-00 Completed
+1999-03-02 09:44:33 rcpt for rruserx@domain.com
+1999-03-02 09:44:33 10HmaZ-0005vi-00 >> userx@domain.com <rruserx@domain.com> R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
+1999-03-02 09:44:33 10HmaZ-0005vi-00 <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss for rruserx@domain.com
+1999-03-02 09:44:33 10HmaZ-0005vi-00 Completed
+1999-03-02 09:44:33 rcpt for rrruserx@domain.com
+1999-03-02 09:44:33 10HmbA-0005vi-00 >> userx@domain.com <rrruserx@domain.com> R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK"
+1999-03-02 09:44:33 10HmbA-0005vi-00 <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss for rrruserx@domain.com
+1999-03-02 09:44:33 10HmbA-0005vi-00 Completed
diff --git a/test/scripts/5400-cutthrough/5408 b/test/scripts/5400-cutthrough/5408
new file mode 100644
index 000000000..93f4d3593
--- /dev/null
+++ b/test/scripts/5400-cutthrough/5408
@@ -0,0 +1,115 @@
+# cutthrough_delivery with router redirections
+need_ipv4
+munge loopback
+#
+# Plain, no redirect
+server PORT_S
+220 ESMTP
+EHLO
+250 OK
+MAIL FROM:
+250 Sender OK
+RCPT TO:<userx@domain.com>
+250 Recipient OK
+DATA
+354 Send data
+.
+250 OK
+QUIT
+250 OK
+****
+exim -bs
+EHLO myhost.test.ex
+MAIL FROM:<CALLER@myhost.test.ex>
+RCPT TO:<userx@domain.com>
+DATA
+
+.
+QUIT
+****
+#
+#
+# One redirect
+server PORT_S
+220 ESMTP
+EHLO
+250 OK
+MAIL FROM:
+250 Sender OK
+RCPT TO:<userx@domain.com>
+250 Recipient OK
+DATA
+354 Send data
+.
+250 OK
+QUIT
+250 OK
+****
+exim -bs
+EHLO myhost.test.ex
+MAIL FROM:<CALLER@myhost.test.ex>
+RCPT TO:<ruserx@domain.com>
+DATA
+
+.
+QUIT
+****
+#
+#
+# Two redirects
+server PORT_S
+220 ESMTP
+EHLO
+250 OK
+MAIL FROM:
+250 Sender OK
+RCPT TO:<userx@domain.com>
+250 Recipient OK
+DATA
+354 Send data
+.
+250 OK
+QUIT
+250 OK
+****
+exim -bs
+EHLO myhost.test.ex
+MAIL FROM:<CALLER@myhost.test.ex>
+RCPT TO:<rruserx@domain.com>
+DATA
+
+.
+QUIT
+****
+#
+#
+# Three redirects
+server PORT_S
+220 ESMTP
+EHLO
+250 OK
+MAIL FROM:
+250 Sender OK
+RCPT TO:<userx@domain.com>
+250 Recipient OK
+DATA
+354 Send data
+.
+250 OK
+QUIT
+250 OK
+****
+exim -bs
+EHLO myhost.test.ex
+MAIL FROM:<CALLER@myhost.test.ex>
+RCPT TO:<rrruserx@domain.com>
+DATA
+
+.
+QUIT
+****
+#
+#
+sortlog
+no_stdout_check
+# End