summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/README6
-rw-r--r--test/confs/05387
-rw-r--r--test/confs/056665
-rw-r--r--test/confs/34552
-rw-r--r--test/confs/34652
-rw-r--r--test/confs/540050
-rw-r--r--test/confs/540150
-rw-r--r--test/confs/541059
-rw-r--r--test/confs/542059
-rw-r--r--test/log/05274
-rw-r--r--test/log/05665
-rw-r--r--test/log/20141
-rw-r--r--test/log/540014
-rw-r--r--test/log/54013
-rw-r--r--test/log/541016
-rw-r--r--test/log/542016
-rw-r--r--test/rejectlog/05274
-rw-r--r--test/rejectlog/05662
-rwxr-xr-xtest/runtest82
-rw-r--r--test/scripts/0000-Basic/00027
-rw-r--r--test/scripts/0000-Basic/00941
-rw-r--r--test/scripts/0000-Basic/022722
-rw-r--r--test/scripts/0000-Basic/037638
-rw-r--r--test/scripts/0000-Basic/03811
-rw-r--r--test/scripts/0000-Basic/03986
-rw-r--r--test/scripts/0000-Basic/04136
-rw-r--r--test/scripts/0000-Basic/04326
-rw-r--r--test/scripts/0000-Basic/04626
-rw-r--r--test/scripts/0000-Basic/047318
-rw-r--r--test/scripts/0000-Basic/051816
-rw-r--r--test/scripts/0000-Basic/052711
-rw-r--r--test/scripts/0000-Basic/05384
-rw-r--r--test/scripts/0000-Basic/05408
-rw-r--r--test/scripts/0000-Basic/056673
-rw-r--r--test/scripts/2000-GnuTLS/20141
-rw-r--r--test/scripts/2000-GnuTLS/20271
-rw-r--r--test/scripts/2200-dnsdb/22021
-rw-r--r--test/scripts/5400-cutthrough/540094
-rw-r--r--test/scripts/5400-cutthrough/540127
-rw-r--r--test/scripts/5410-cutthrough-OpenSSL/541037
-rw-r--r--test/scripts/5410-cutthrough-OpenSSL/REQUIRES2
-rw-r--r--test/scripts/5420-cutthrough-GnuTLS/542034
-rw-r--r--test/scripts/5420-cutthrough-GnuTLS/REQUIRES2
-rw-r--r--test/stderr/022724
-rw-r--r--test/stderr/037645
-rw-r--r--test/stderr/03983
-rw-r--r--test/stderr/04329
-rw-r--r--test/stderr/04435
-rw-r--r--test/stderr/04627
-rw-r--r--test/stderr/04732
-rw-r--r--test/stderr/5400165
-rw-r--r--test/stderr/540140
-rw-r--r--test/stderr/5402274
-rw-r--r--test/stderr/5410420
-rw-r--r--test/stderr/5420420
-rw-r--r--test/stdout/00026
-rw-r--r--test/stdout/022722
-rw-r--r--test/stdout/037638
-rw-r--r--test/stdout/03986
-rw-r--r--test/stdout/04136
-rw-r--r--test/stdout/04326
-rw-r--r--test/stdout/04626
-rw-r--r--test/stdout/047318
-rw-r--r--test/stdout/051816
-rw-r--r--test/stdout/052720
-rw-r--r--test/stdout/05384
-rw-r--r--test/stdout/05408
-rw-r--r--test/stdout/056690
-rw-r--r--test/stdout/34502
-rw-r--r--test/stdout/34544
-rw-r--r--test/stdout/5400125
-rw-r--r--test/stdout/540138
-rw-r--r--test/stdout/540224
-rw-r--r--test/stdout/541036
-rw-r--r--test/stdout/542036
75 files changed, 2570 insertions, 224 deletions
diff --git a/test/README b/test/README
index 3628da98a..f51217537 100644
--- a/test/README
+++ b/test/README
@@ -715,6 +715,12 @@ This command causes the script to sleep for m milliseconds. Nothing is output
to the screen.
+ munge <name>
+
+This command requests custom munging of the test outputs. The munge names
+used are coded in the runtest script.
+
+
need_ipv4
This command must be at the head of a script. If no IPv4 interface has been
diff --git a/test/confs/0538 b/test/confs/0538
index 7f89ccc6a..5865e3110 100644
--- a/test/confs/0538
+++ b/test/confs/0538
@@ -38,6 +38,13 @@ r1:
route_list = * "<= 127.0.0.1:PORT_S"
self = send
verify_only
+ transport = t1
+
+
+begin transports
+
+t1:
+ driver = smtp
# End
diff --git a/test/confs/0566 b/test/confs/0566
new file mode 100644
index 000000000..e7a91c694
--- /dev/null
+++ b/test/confs/0566
@@ -0,0 +1,65 @@
+# Exim test configuration 0028
+
+exim_path = EXIM_PATH
+host_lookup_order = bydns
+primary_hostname = myhost.test.ex
+rfc1413_query_timeout = 0s
+spool_directory = DIR/spool
+log_file_path = DIR/spool/log/%slog
+gecos_pattern = ""
+gecos_name = CALLER_NAME
+
+# ----- Main settings -----
+
+domainlist local_domains = test.ex
+
+acl_smtp_rcpt = acl_rcpt
+acl_smtp_data = acl_data
+
+
+# ------ ACLs ------
+
+begin acl
+
+acl_rcpt:
+ accept endpass
+ message = SIZE value too big
+ condition = ${if > {$message_size}{10000}{no}{yes}}
+
+acl_data:
+ accept endpass
+ message = message too big - \$recipients=$recipients ($recipients_count)
+ condition = ${if > {$message_size}{10000}{no}{yes}}
+
+
+# ------ Routers ------
+
+begin routers
+
+r1:
+ driver = dnslookup
+ domains = ! +local_domains
+ transport = dev_null
+ no_more
+
+r2:
+ driver = accept
+ local_parts = userx : postmaster
+ transport = local_delivery
+
+
+# ------ Transports ------
+
+begin transports
+
+dev_null:
+ driver = appendfile
+ file = /dev/null
+ user = CALLER
+
+local_delivery:
+ driver = appendfile
+ file = DIR/test-mail/$local_part
+ user = CALLER
+
+# End
diff --git a/test/confs/3455 b/test/confs/3455
index 274de6316..ab26f43cc 100644
--- a/test/confs/3455
+++ b/test/confs/3455
@@ -36,7 +36,7 @@ plain:
server_condition = "\
${if and {{eq{$2}{userx}}{eq{$3}{secret1}}}{yes}{no}}"
server_set_id = $2
- client_condition = ${if !eq {$tls_cipher}{}}
+ client_condition = ${if !eq {$tls_out_cipher}{}}
client_send = ^userx^secret1
login:
diff --git a/test/confs/3465 b/test/confs/3465
index adadeb059..161fff526 100644
--- a/test/confs/3465
+++ b/test/confs/3465
@@ -36,7 +36,7 @@ plain:
server_condition = "\
${if and {{eq{$2}{userx}}{eq{$3}{secret1}}}{yes}{no}}"
server_set_id = $2
- client_condition = ${if !eq {$tls_cipher}{}}
+ client_condition = ${if !eq {$tls_out_cipher}{}}
client_send = ^userx^secret1
login:
diff --git a/test/confs/5400 b/test/confs/5400
new file mode 100644
index 000000000..8f2e8b585
--- /dev/null
+++ b/test/confs/5400
@@ -0,0 +1,50 @@
+# Exim test configuration 5400
+
+exim_path = EXIM_PATH
+host_lookup_order = bydns
+primary_hostname = myhost.test.ex
+rfc1413_query_timeout = 0s
+spool_directory = DIR/spool
+log_file_path = DIR/spool/log/%slog
+gecos_pattern = ""
+gecos_name = CALLER_NAME
+
+# ----- Main settings -----
+
+domainlist local_domains = test.ex : *.test.ex
+
+acl_smtp_rcpt = ar
+
+
+# ----- ACLs -----
+
+begin acl
+
+ar:
+ accept control = cutthrough_delivery
+ logwrite = rcpt for $local_part@$domain
+
+# ----- Routers -----
+
+begin routers
+
+all:
+ driver = manualroute
+ domains = ! +local_domains
+ route_list = * 127.0.0.1
+ self = send
+ transport = smtp
+ no_more
+
+
+# ----- Transports -----
+
+begin transports
+
+smtp:
+ driver = smtp
+ interface = HOSTIPV4
+ port = PORT_S
+
+
+# End
diff --git a/test/confs/5401 b/test/confs/5401
new file mode 100644
index 000000000..db018a6d4
--- /dev/null
+++ b/test/confs/5401
@@ -0,0 +1,50 @@
+# Exim test configuration 5401
+
+exim_path = EXIM_PATH
+host_lookup_order = bydns
+primary_hostname = myhost.test.ex
+rfc1413_query_timeout = 0s
+spool_directory = DIR/spool
+log_file_path = DIR/spool/log/%slog
+gecos_pattern = ""
+gecos_name = CALLER_NAME
+
+# ----- Main settings -----
+
+domainlist local_domains = test.ex : *.test.ex
+
+acl_smtp_rcpt = acl_rcpt
+
+# ----- ACLs -------
+
+begin acl
+
+acl_rcpt:
+ accept control = cutthrough_delivery
+ verify = recipient
+
+
+# ----- Routers -----
+
+begin routers
+
+all:
+ driver = manualroute
+ domains = ! +local_domains
+ route_list = * 127.0.0.1
+ self = send
+ transport = smtp
+ no_more
+
+
+# ----- Transports -----
+
+begin transports
+
+smtp:
+ driver = smtp
+ interface = HOSTIPV4
+ port = PORT_S
+
+
+# End
diff --git a/test/confs/5410 b/test/confs/5410
new file mode 100644
index 000000000..576967cac
--- /dev/null
+++ b/test/confs/5410
@@ -0,0 +1,59 @@
+# Exim test configuration 5410
+
+exim_path = EXIM_PATH
+host_lookup_order = bydns
+primary_hostname = myhost.test.ex
+rfc1413_query_timeout = 0s
+spool_directory = DIR/spool
+log_file_path = DIR/spool/log/%slog
+gecos_pattern = ""
+gecos_name = CALLER_NAME
+
+# ----- Main settings -----
+
+log_selector = +smtp_confirmation
+tls_advertise_hosts = *
+tls_certificate = ${if eq {SERVER}{server}{DIR/aux-fixed/cert1}fail}
+
+domainlist local_domains = test.ex : *.test.ex
+
+acl_smtp_rcpt = ${if eq {SERVER}{server}{queue}{cutthrough}}
+
+# ----- ACLs -------
+
+begin acl
+
+cutthrough:
+ accept control = cutthrough_delivery
+ verify = recipient
+
+queue:
+ accept control = queue_only
+
+# ----- Routers -----
+
+begin routers
+
+all:
+ driver = manualroute
+ domains = ! +local_domains
+ route_list = * 127.0.0.1
+ self = send
+ address_data = $local_part
+ transport = smtp
+ no_more
+
+
+# ----- Transports -----
+
+begin transports
+
+smtp:
+ driver = smtp
+ interface = HOSTIPV4
+ port = PORT_D
+ hosts_avoid_tls = ${if eq {$address_data}{usery}{*}{:}}
+ hosts_verify_avoid_tls = ${if eq {$address_data}{userz}{*}{:}}
+
+
+# End
diff --git a/test/confs/5420 b/test/confs/5420
new file mode 100644
index 000000000..2a7ebda1b
--- /dev/null
+++ b/test/confs/5420
@@ -0,0 +1,59 @@
+# Exim test configuration 5420
+
+exim_path = EXIM_PATH
+host_lookup_order = bydns
+primary_hostname = myhost.test.ex
+rfc1413_query_timeout = 0s
+spool_directory = DIR/spool
+log_file_path = DIR/spool/log/%slog
+gecos_pattern = ""
+gecos_name = CALLER_NAME
+
+# ----- Main settings -----
+
+log_selector = +smtp_confirmation
+tls_advertise_hosts = *
+tls_certificate = ${if eq {SERVER}{server}{DIR/aux-fixed/cert1}fail}
+
+domainlist local_domains = test.ex : *.test.ex
+
+acl_smtp_rcpt = ${if eq {SERVER}{server}{queue}{cutthrough}}
+
+# ----- ACLs -------
+
+begin acl
+
+cutthrough:
+ accept control = cutthrough_delivery
+ verify = recipient
+
+queue:
+ accept control = queue_only
+
+# ----- Routers -----
+
+begin routers
+
+all:
+ driver = manualroute
+ domains = ! +local_domains
+ route_list = * 127.0.0.1
+ self = send
+ address_data = $local_part
+ transport = smtp
+ no_more
+
+
+# ----- Transports -----
+
+begin transports
+
+smtp:
+ driver = smtp
+ interface = HOSTIPV4
+ port = PORT_D
+ hosts_avoid_tls = ${if eq {$address_data}{usery}{*}{:}}
+ hosts_verify_avoid_tls = ${if eq {$address_data}{userz}{*}{:}}
+
+
+# End
diff --git a/test/log/0527 b/test/log/0527
index 3da4433a1..702dbb7cc 100644
--- a/test/log/0527
+++ b/test/log/0527
@@ -1,2 +1,2 @@
-1999-03-02 09:44:33 U=CALLER sender verify fail for <unknown@x.x.x.x>: response to "RCPT TO:<unknown@x.x.x.x>" from 127.0.0.1 [127.0.0.1] was: 550 unrouteable address
-1999-03-02 09:44:33 U=CALLER F=<unknown@x.x.x.x> rejected RCPT <unknown@u.u.u.u>: Sender verify failed
+1999-03-02 09:44:33 U=CALLER sender verify defer for <unknown@x.x.x.x>: Could not complete sender verify callout
+1999-03-02 09:44:33 U=CALLER F=<unknown@x.x.x.x> temporarily rejected RCPT <unknown@u.u.u.u>: Could not complete sender verify callout
diff --git a/test/log/0566 b/test/log/0566
new file mode 100644
index 000000000..e59c7336d
--- /dev/null
+++ b/test/log/0566
@@ -0,0 +1,5 @@
+1999-03-02 09:44:33 ignoring AUTH=x@y from U=CALLER (client not authenticated)
+1999-03-02 09:44:33 ignoring AUTH=x@y from U=CALLER (client not authenticated)
+1999-03-02 09:44:33 ignoring AUTH=x@y from U=CALLER (client not authenticated)
+1999-03-02 09:44:33 U=CALLER F=<x@y> rejected RCPT <userx@test.ex>: SIZE value too big
+1999-03-02 09:44:33 U=CALLER F=<x@y> rejected RCPT <userx@test.ex>: SIZE value too big
diff --git a/test/log/2014 b/test/log/2014
index 554100b77..51d195fa3 100644
--- a/test/log/2014
+++ b/test/log/2014
@@ -4,6 +4,5 @@
1999-03-02 09:44:33 TLS error on connection from (rhu5.barb) [ip4.ip4.ip4.ip4] (certificate verification failed): invalid
1999-03-02 09:44:33 H=[127.0.0.1] F=<userx@test.ex> rejected RCPT <userx@test.ex>: certificate not verified: peerdn=C=UK,O=The Exim Maintainers,OU=Test Suite,CN=Phil Pennock
1999-03-02 09:44:33 exim x.yz daemon started: pid=pppp, no queue runs, listening for SMTP on port 1225
-1999-03-02 09:44:33 TLS error on connection from [ip4.ip4.ip4.ip4] (recv): A TLS packet with unexpected length was received.
1999-03-02 09:44:33 TLS error on connection from [ip4.ip4.ip4.ip4] (send): The specified session has been invalidated for some reason.
1999-03-02 09:44:33 H=[127.0.0.1] F=<userx@test.ex> rejected RCPT <userx@test.ex>: certificate not verified: peerdn=C=UK,O=The Exim Maintainers,OU=Test Suite,CN=Phil Pennock
diff --git a/test/log/5400 b/test/log/5400
new file mode 100644
index 000000000..2f049f7d1
--- /dev/null
+++ b/test/log/5400
@@ -0,0 +1,14 @@
+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]
+1999-03-02 09:44:33 10HmaX-0005vi-00 <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+1999-03-02 09:44:33 10HmaX-0005vi-00 Completed
+1999-03-02 09:44:33 rcpt for userz@domain.com
+1999-03-02 09:44:33 10HmaY-0005vi-00 >> userz@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1]
+1999-03-02 09:44:33 10HmaY-0005vi-00 <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+1999-03-02 09:44:33 10HmaY-0005vi-00 Completed
+1999-03-02 09:44:33 rcpt for usery@domain.com
+1999-03-02 09:44:33 rcpt for userx@domain.com
+1999-03-02 09:44:33 10HmaZ-0005vi-00 <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+1999-03-02 09:44:33 10HmaZ-0005vi-00 => usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1]
+1999-03-02 09:44:33 10HmaZ-0005vi-00 -> userx@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1]
+1999-03-02 09:44:33 10HmaZ-0005vi-00 Completed
diff --git a/test/log/5401 b/test/log/5401
new file mode 100644
index 000000000..092467872
--- /dev/null
+++ b/test/log/5401
@@ -0,0 +1,3 @@
+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]
+1999-03-02 09:44:33 10HmaX-0005vi-00 <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+1999-03-02 09:44:33 10HmaX-0005vi-00 Completed
diff --git a/test/log/5410 b/test/log/5410
new file mode 100644
index 000000000..efcee1b4f
--- /dev/null
+++ b/test/log/5410
@@ -0,0 +1,16 @@
+1999-03-02 09:44:33 exim x.yz daemon started: pid=pppp, no queue runs, listening for SMTP on port 1225
+1999-03-02 09:44:33 10HmaX-0005vi-00 <= CALLER@myhost.test.ex H=the.local.host.name (myhost.test.ex) [ip4.ip4.ip4.ip4] P=esmtps X=TLSv1:AES256-SHA:256 S=sss id=E10HmaY-0005vi-00@myhost.test.ex
+1999-03-02 09:44:33 10HmaX-0005vi-00 no immediate delivery: queued by ACL
+1999-03-02 09:44:33 10HmaY-0005vi-00 >> userx@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] X=TLSv1:AES256-SHA:256 C="250 OK id=10HmaX-0005vi-00"
+1999-03-02 09:44:33 10HmaY-0005vi-00 <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+1999-03-02 09:44:33 10HmaY-0005vi-00 Completed
+1999-03-02 09:44:33 10HmaZ-0005vi-00 <= CALLER@myhost.test.ex H=the.local.host.name (myhost.test.ex) [ip4.ip4.ip4.ip4] P=esmtp S=sss id=E10HmbA-0005vi-00@myhost.test.ex
+1999-03-02 09:44:33 10HmaZ-0005vi-00 no immediate delivery: queued by ACL
+1999-03-02 09:44:33 10HmbA-0005vi-00 >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmaZ-0005vi-00"
+1999-03-02 09:44:33 10HmbA-0005vi-00 <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+1999-03-02 09:44:33 10HmbA-0005vi-00 Completed
+1999-03-02 09:44:33 10HmbB-0005vi-00 <= CALLER@myhost.test.ex H=the.local.host.name (myhost.test.ex) [ip4.ip4.ip4.ip4] P=esmtp S=sss id=E10HmbC-0005vi-00@myhost.test.ex
+1999-03-02 09:44:33 10HmbB-0005vi-00 no immediate delivery: queued by ACL
+1999-03-02 09:44:33 10HmbC-0005vi-00 >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbB-0005vi-00"
+1999-03-02 09:44:33 10HmbC-0005vi-00 <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+1999-03-02 09:44:33 10HmbC-0005vi-00 Completed
diff --git a/test/log/5420 b/test/log/5420
new file mode 100644
index 000000000..5dcefb30f
--- /dev/null
+++ b/test/log/5420
@@ -0,0 +1,16 @@
+1999-03-02 09:44:33 exim x.yz daemon started: pid=pppp, no queue runs, listening for SMTP on port 1225
+1999-03-02 09:44:33 10HmaX-0005vi-00 <= CALLER@myhost.test.ex H=the.local.host.name (myhost.test.ex) [ip4.ip4.ip4.ip4] P=esmtps X=TLS1.x:xxxxRSA_AES_256_CBC_SHAnnn:256 S=sss id=E10HmaY-0005vi-00@myhost.test.ex
+1999-03-02 09:44:33 10HmaX-0005vi-00 no immediate delivery: queued by ACL
+1999-03-02 09:44:33 10HmaY-0005vi-00 >> userx@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] X=TLS1.x:xxxxRSA_AES_256_CBC_SHAnnn:256 C="250 OK id=10HmaX-0005vi-00"
+1999-03-02 09:44:33 10HmaY-0005vi-00 <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+1999-03-02 09:44:33 10HmaY-0005vi-00 Completed
+1999-03-02 09:44:33 10HmaZ-0005vi-00 <= CALLER@myhost.test.ex H=the.local.host.name (myhost.test.ex) [ip4.ip4.ip4.ip4] P=esmtp S=sss id=E10HmbA-0005vi-00@myhost.test.ex
+1999-03-02 09:44:33 10HmaZ-0005vi-00 no immediate delivery: queued by ACL
+1999-03-02 09:44:33 10HmbA-0005vi-00 >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmaZ-0005vi-00"
+1999-03-02 09:44:33 10HmbA-0005vi-00 <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+1999-03-02 09:44:33 10HmbA-0005vi-00 Completed
+1999-03-02 09:44:33 10HmbB-0005vi-00 <= CALLER@myhost.test.ex H=the.local.host.name (myhost.test.ex) [ip4.ip4.ip4.ip4] P=esmtp S=sss id=E10HmbC-0005vi-00@myhost.test.ex
+1999-03-02 09:44:33 10HmbB-0005vi-00 no immediate delivery: queued by ACL
+1999-03-02 09:44:33 10HmbC-0005vi-00 >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbB-0005vi-00"
+1999-03-02 09:44:33 10HmbC-0005vi-00 <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+1999-03-02 09:44:33 10HmbC-0005vi-00 Completed
diff --git a/test/rejectlog/0527 b/test/rejectlog/0527
index 3da4433a1..702dbb7cc 100644
--- a/test/rejectlog/0527
+++ b/test/rejectlog/0527
@@ -1,2 +1,2 @@
-1999-03-02 09:44:33 U=CALLER sender verify fail for <unknown@x.x.x.x>: response to "RCPT TO:<unknown@x.x.x.x>" from 127.0.0.1 [127.0.0.1] was: 550 unrouteable address
-1999-03-02 09:44:33 U=CALLER F=<unknown@x.x.x.x> rejected RCPT <unknown@u.u.u.u>: Sender verify failed
+1999-03-02 09:44:33 U=CALLER sender verify defer for <unknown@x.x.x.x>: Could not complete sender verify callout
+1999-03-02 09:44:33 U=CALLER F=<unknown@x.x.x.x> temporarily rejected RCPT <unknown@u.u.u.u>: Could not complete sender verify callout
diff --git a/test/rejectlog/0566 b/test/rejectlog/0566
new file mode 100644
index 000000000..67b5dc277
--- /dev/null
+++ b/test/rejectlog/0566
@@ -0,0 +1,2 @@
+1999-03-02 09:44:33 U=CALLER F=<x@y> rejected RCPT <userx@test.ex>: SIZE value too big
+1999-03-02 09:44:33 U=CALLER F=<x@y> rejected RCPT <userx@test.ex>: SIZE value too big
diff --git a/test/runtest b/test/runtest
index aa242d589..2756348f9 100755
--- a/test/runtest
+++ b/test/runtest
@@ -313,6 +313,7 @@ return @yield;
sub munge {
my($file) = $_[0];
+my($extra) = $_[1];
my($yield) = 0;
my(@saved) = ();
@@ -338,6 +339,13 @@ $spid = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
while(<IN>)
{
RESET_AFTER_EXTRA_LINE_READ:
+ # Custom munges
+ if ($extra)
+ {
+ next if $extra =~ m%^/% && eval $extra;
+ eval $extra if $extra =~ m/^s/;
+ }
+
# Check for "*** truncated ***"
$yield = 1 if /\*\*\* truncated \*\*\*/;
@@ -1022,6 +1030,7 @@ if ($_[1]) { $_ = "u"; print "... update forced\n"; }
# [2] where to put the munged copy
# [3] the name of the saved file
# [4] TRUE if this is a log file whose deliveries must be sorted
+# [5] optionally, a custom munge command
#
# Returns: 0 comparison succeeded or differences to be ignored
# 1 comparison failed; files may have been updated (=> re-compare)
@@ -1029,7 +1038,7 @@ if ($_[1]) { $_ = "u"; print "... update forced\n"; }
# Does not return if the user replies "Q" to a prompt.
sub check_file{
-my($rf,$rsf,$mf,$sf,$sortfile) = @_;
+my($rf,$rsf,$mf,$sf,$sortfile,$extra) = @_;
# If there is no saved file, the raw files must either not exist, or be
# empty. The test ! -s is TRUE if the file does not exist or is empty.
@@ -1077,11 +1086,11 @@ if (! -e $sf)
# data that does exist.
open(MUNGED, ">$mf") || tests_exit(-1, "Failed to open $mf: $!");
-my($truncated) = munge($rf) if -e $rf;
+my($truncated) = munge($rf, $extra) if -e $rf;
if (defined $rsf && -e $rsf)
{
print MUNGED "\n******** SERVER ********\n";
- $truncated |= munge($rsf);
+ $truncated |= munge($rsf, $extra);
}
close(MUNGED);
@@ -1203,46 +1212,75 @@ return 1;
##################################################
+# Custom munges
+# keyed by name of munge; value is a ref to a hash
+# which is keyed by file, value a string to look for.
+# Usable files are:
+# paniclog, rejectlog, mainlog, stdout, stderr, msglog, mail
+# Search strings starting with 's' do substitutions;
+# with '/' do line-skips.
+##################################################
+$munges =
+ { 'dnssec' =>
+ { 'stderr' => '/^Reverse DNS security status: unverified\n/', },
+
+ 'gnutls_unexpected' =>
+ { 'mainlog' => '/\(recv\): A TLS packet with unexpected length was received./', },
+
+ 'gnutls_handshake' =>
+ { 'mainlog' => 's/\(gnutls_handshake\): Error in the push function/\(gnutls_handshake\): A TLS packet with unexpected length was received/', },
+
+ };
+
+
+##################################################
# Subroutine to check the output of a test #
##################################################
# This function is called when the series of subtests is complete. It makes
-# use of check() file, whose arguments are:
+# use of check_file(), whose arguments are:
#
# [0] the name of the main raw output file
# [1] the name of the server raw output file or undef
# [2] where to put the munged copy
# [3] the name of the saved file
# [4] TRUE if this is a log file whose deliveries must be sorted
+# [5] an optional custom munge command
#
-# Arguments: none
+# Arguments: Optionally, name of a custom munge to run.
# Returns: 0 if the output compared equal
# 1 if re-run needed (files may have been updated)
sub check_output{
+my($mungename) = $_[0];
my($yield) = 0;
+my($munge) = $munges->{$mungename} if defined $mungename;
$yield = 1 if check_file("spool/log/paniclog",
"spool/log/serverpaniclog",
"test-paniclog-munged",
- "paniclog/$testno", 0);
+ "paniclog/$testno", 0,
+ $munge->{'paniclog'});
$yield = 1 if check_file("spool/log/rejectlog",
"spool/log/serverrejectlog",
"test-rejectlog-munged",
- "rejectlog/$testno", 0);
+ "rejectlog/$testno", 0,
+ $munge->{'rejectlog'});
$yield = 1 if check_file("spool/log/mainlog",
"spool/log/servermainlog",
"test-mainlog-munged",
- "log/$testno", $sortlog);
+ "log/$testno", $sortlog,
+ $munge->{'mainlog'});
if (!$stdout_skip)
{
$yield = 1 if check_file("test-stdout",
"test-stdout-server",
"test-stdout-munged",
- "stdout/$testno", 0);
+ "stdout/$testno", 0,
+ $munge->{'stdout'});
}
if (!$stderr_skip)
@@ -1250,7 +1288,8 @@ if (!$stderr_skip)
$yield = 1 if check_file("test-stderr",
"test-stderr-server",
"test-stderr-munged",
- "stderr/$testno", 0);
+ "stderr/$testno", 0,
+ $munge->{'stderr'});
}
# Compare any delivered messages, unless this test is skipped.
@@ -1289,7 +1328,8 @@ if (! $message_skip)
print ">> COMPARE $mail mail/$testno.$saved_mail\n" if $debug;
$yield = 1 if check_file($mail, undef, "test-mail-munged",
- "mail/$testno.$saved_mail", 0);
+ "mail/$testno.$saved_mail", 0,
+ $munge->{'mail'});
delete $expected_mails{"mail/$testno.$saved_mail"};
}
@@ -1359,7 +1399,8 @@ if (! $msglog_skip)
s/((?:[^\W_]{6}-){2}[^\W_]{2})
/new_value($1, "10Hm%s-0005vi-00", \$next_msgid)/egx;
$yield = 1 if check_file("spool/msglog/$msglog", undef,
- "test-msglog-munged", "msglog/$testno.$munged_msglog", 0);
+ "test-msglog-munged", "msglog/$testno.$munged_msglog", 0,
+ $munge->{'msglog'});
delete $expected_msglogs{"$testno.$munged_msglog"};
}
}
@@ -1453,6 +1494,7 @@ system("$cmd");
# 4 EOF was encountered after an initial return code line
# Optionally alse a second parameter, a hash-ref, with auxilliary information:
# exim_pid: pid of a run process
+# munge: name of a post-script results munger
sub run_command{
my($testno) = $_[0];
@@ -1665,6 +1707,18 @@ elsif (/^millisleep\s+(.*)$/)
}
+# The "munge" command selects one of a hardwired set of test-result modifications
+# to be made before result compares are run agains the golden set. This lets
+# us account for test-system dependent things which only affect a few, but known,
+# test-cases.
+# Currently only the last munge takes effect.
+
+if (/^munge\s+(.*)$/)
+ {
+ return (0, { munge => $1 });
+ }
+
+
# The "sleep" command does just that. For sleeps longer than 1 second we
# tell the user what's going on.
@@ -3104,6 +3158,8 @@ if ($have_ipv6 && $parm_ipv6 ne "::1")
$exp_v6 = $1 . ':0' x (8-length($exp_v6)) . ':' . $2;
} elsif ( $parm_ipv6 =~ /^::(.+[^:])$/ ) {
$exp_v6 = '0:' x (9-length($exp_v6)) . $1;
+ } else {
+ $exp_v6 = $parm_ipv6;
}
my(@components) = split /:/, $exp_v6;
my(@nibbles) = reverse (split /\s*/, shift @components);
@@ -3439,7 +3495,7 @@ foreach $test (@test_list)
if ($docheck)
{
- if (check_output() != 0)
+ if (check_output($TEST_STATE->{munge}) != 0)
{
print (("#" x 79) . "\n");
redo;
diff --git a/test/scripts/0000-Basic/0002 b/test/scripts/0000-Basic/0002
index f87251e1e..3b485ee97 100644
--- a/test/scripts/0000-Basic/0002
+++ b/test/scripts/0000-Basic/0002
@@ -4,6 +4,7 @@
# be present in the basic Exim binary which we require in order to run these
# tests at all. Specialized expansion tests also exist for optional features
# in other test scripts.
+munge dnssec
exim -be
@@ -238,6 +239,12 @@ hash: ${if eq {1}{2}{${hash_3:invalid}}{NO}}
md5: ${if eq {1}{2}{${md5:invalid}}{NO}}
mask: ${if eq {1}{2}{${mask:invalid}}{NO}}
+# Number suffixes in conditions
+1k: ${if >{1}{1k}{n}{y}}
+1K: ${if >{1}{1K}{n}{y}}
+1M: ${if >{1}{1M}{n}{y}}
+1G: ${if >{1}{1G}{n}{y}}
+
# Numeric overflow
# >32b should work, >64b not
diff --git a/test/scripts/0000-Basic/0094 b/test/scripts/0000-Basic/0094
index 9a915e06f..87fb5309f 100644
--- a/test/scripts/0000-Basic/0094
+++ b/test/scripts/0000-Basic/0094
@@ -1,4 +1,5 @@
# Reverse lookup failures
+munge dnssec
exim -bh V4NET.11.12.13
mail from:<userx@cam.ac.uk>
rcpt to:<userx@cam.ac.uk>
diff --git a/test/scripts/0000-Basic/0227 b/test/scripts/0000-Basic/0227
index 62832e012..7b091de4b 100644
--- a/test/scripts/0000-Basic/0227
+++ b/test/scripts/0000-Basic/0227
@@ -3,7 +3,7 @@ need_ipv4
#
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -24,7 +24,7 @@ QUIT
****
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -40,7 +40,7 @@ QUIT
****
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -56,7 +56,7 @@ QUIT
****
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
550 Error for <>
@@ -70,7 +70,7 @@ QUIT
****
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
550-Multiline error for <>
@@ -85,7 +85,7 @@ QUIT
****
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -101,7 +101,7 @@ QUIT
****
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -123,7 +123,7 @@ QUIT
****
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -142,7 +142,7 @@ QUIT
****
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -161,7 +161,7 @@ QUIT
****
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -183,7 +183,7 @@ QUIT
****
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
diff --git a/test/scripts/0000-Basic/0376 b/test/scripts/0000-Basic/0376
index 7430a6bce..6a819a6ae 100644
--- a/test/scripts/0000-Basic/0376
+++ b/test/scripts/0000-Basic/0376
@@ -3,7 +3,7 @@ need_ipv4
#
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -33,7 +33,7 @@ QUIT
# Test unsuccessful caching
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -55,7 +55,7 @@ QUIT
# Test caching of rejection of MAIL FROM:<>
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
550 REJECT MAIL FROM
@@ -75,7 +75,7 @@ QUIT
# Test caching of rejection of postmaster
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -103,7 +103,7 @@ QUIT
# Test caching of accepting of postmaster
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -131,7 +131,7 @@ QUIT
# Test caching of accepting a random address
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -153,7 +153,7 @@ QUIT
# Test caching of accepting a random address and postmaster
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -175,7 +175,7 @@ QUIT
# Test caching of rejecting a random address and postmaster
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -210,7 +210,7 @@ QUIT
# address has to be tested
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -232,7 +232,7 @@ QUIT
****
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -249,7 +249,7 @@ QUIT
# Test caching of rejecting a random address
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -271,7 +271,7 @@ QUIT
****
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -289,7 +289,7 @@ QUIT
sleep 2
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -312,7 +312,7 @@ QUIT
# Timeout on the RCPT for random
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -327,7 +327,7 @@ QUIT
# Postmaster_sender set non-empty
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -350,7 +350,7 @@ QUIT
# Header_sender sender set non-empty
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -370,7 +370,7 @@ QUIT
# Timeout on RCPT for header_sender (defer_ok test)
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -388,7 +388,7 @@ QUIT
# Test full postmaster check
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -413,7 +413,7 @@ QUIT
# Test postmaster_mailfrom with random
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
diff --git a/test/scripts/0000-Basic/0381 b/test/scripts/0000-Basic/0381
index c5f7d8441..738b0661d 100644
--- a/test/scripts/0000-Basic/0381
+++ b/test/scripts/0000-Basic/0381
@@ -1,4 +1,5 @@
# negatives with wildcard hosts when host has multiple names
+munge dnssec
exim -d -bs -oMa V4NET.99.99.97
mail from:<notgov@test.ex>
rcpt to:<x@test.ex>
diff --git a/test/scripts/0000-Basic/0398 b/test/scripts/0000-Basic/0398
index c98016a69..3465e26d6 100644
--- a/test/scripts/0000-Basic/0398
+++ b/test/scripts/0000-Basic/0398
@@ -3,7 +3,7 @@ need_ipv4
#
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -22,7 +22,7 @@ quit
****
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -38,7 +38,7 @@ quit
****
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
diff --git a/test/scripts/0000-Basic/0413 b/test/scripts/0000-Basic/0413
index 583ea2ca5..eb805808e 100644
--- a/test/scripts/0000-Basic/0413
+++ b/test/scripts/0000-Basic/0413
@@ -3,7 +3,7 @@ need_ipv4
#
server PORT_S 3
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -13,7 +13,7 @@ QUIT
250 OK
*eof
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -23,7 +23,7 @@ QUIT
250 OK
*eof
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
diff --git a/test/scripts/0000-Basic/0432 b/test/scripts/0000-Basic/0432
index 4d9935317..e83626ca3 100644
--- a/test/scripts/0000-Basic/0432
+++ b/test/scripts/0000-Basic/0432
@@ -7,7 +7,7 @@ quit
****
server PORT_S
220 server ready
-HELO
+EHLO
250 OK
MAIL
250 OK
@@ -30,7 +30,7 @@ quit
****
server PORT_S
220 server ready
-HELO
+EHLO
250 OK
MAIL
250 OK
@@ -46,7 +46,7 @@ quit
# Timeout stuff
server PORT_S
220 server ready
-HELO
+EHLO
*sleep 2
*eof
****
diff --git a/test/scripts/0000-Basic/0462 b/test/scripts/0000-Basic/0462
index d12ced725..da7b714bf 100644
--- a/test/scripts/0000-Basic/0462
+++ b/test/scripts/0000-Basic/0462
@@ -3,7 +3,7 @@ need_ipv4
#
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -27,7 +27,7 @@ QUIT
# This one fails the actual address
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -44,7 +44,7 @@ QUIT
# Same again, but with sender_verify_fail logging turned off
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
diff --git a/test/scripts/0000-Basic/0473 b/test/scripts/0000-Basic/0473
index 4624f5f01..3d17e5ed0 100644
--- a/test/scripts/0000-Basic/0473
+++ b/test/scripts/0000-Basic/0473
@@ -3,7 +3,7 @@ need_ipv4
#
server PORT_S 3
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -13,7 +13,7 @@ QUIT
250 OK
*eof
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -23,7 +23,7 @@ QUIT
250 OK
*eof
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
550 NOTOK
@@ -51,7 +51,7 @@ quit
****
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -68,7 +68,7 @@ quit
****
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -85,7 +85,7 @@ quit
****
server PORT_S
220 server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -109,7 +109,7 @@ quit
****
server PORT_S
220 server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -134,7 +134,7 @@ quit
****
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
@@ -152,7 +152,7 @@ quit
dump callout
server PORT_S
220 Server ready
-HELO
+EHLO
250 OK
MAIL FROM
250 OK
diff --git a/test/scripts/0000-Basic/0518 b/test/scripts/0000-Basic/0518
index 1a6da0129..6b092173c 100644
--- a/test/scripts/0000-Basic/0518
+++ b/test/scripts/0000-Basic/0518
@@ -3,7 +3,7 @@ need_ipv4
#
server PORT_S 8
220 Welcome
-HELO
+EHLO
250 Hi
MAIL FROM
250 OK
@@ -13,7 +13,7 @@ QUIT
250 OK
*eof
220 Welcome
-HELO
+EHLO
250 Hi
MAIL FROM
250 OK
@@ -23,7 +23,7 @@ QUIT
250 OK
*eof
220 Welcome
-HELO
+EHLO
250 Hi
MAIL FROM
250 OK
@@ -33,7 +33,7 @@ QUIT
250 OK
*eof
220 Welcome
-HELO
+EHLO
250 Hi
MAIL FROM
250 OK
@@ -43,7 +43,7 @@ QUIT
250 OK
*eof
220 Welcome
-HELO
+EHLO
250 Hi
MAIL FROM
250 OK
@@ -53,7 +53,7 @@ QUIT
250 OK
*eof
220 Welcome
-HELO
+EHLO
250 Hi
MAIL FROM
250 OK
@@ -63,7 +63,7 @@ QUIT
250 OK
*eof
220 Welcome
-HELO
+EHLO
250 Hi
MAIL FROM
250 OK
@@ -73,7 +73,7 @@ QUIT
250 OK
*eof
220 Welcome
-HELO
+EHLO
250 Hi
MAIL FROM
250 OK
diff --git a/test/scripts/0000-Basic/0527 b/test/scripts/0000-Basic/0527
index e65032b4d..9c880d644 100644
--- a/test/scripts/0000-Basic/0527
+++ b/test/scripts/0000-Basic/0527
@@ -1,17 +1,6 @@
# callout with no transport
need_ipv4
#
-server PORT_S
-220 Welcome
-HELO
-250 Hi
-MAIL FROM
-250 OK
-RCPT TO
-550 unrouteable address
-QUIT
-221 Bye
-****
exim -bs
mail from:<unknown@x.x.x.x>
rcpt to:<unknown@u.u.u.u>
diff --git a/test/scripts/0000-Basic/0538 b/test/scripts/0000-Basic/0538
index c464f3bf1..ccabcfbee 100644
--- a/test/scripts/0000-Basic/0538
+++ b/test/scripts/0000-Basic/0538
@@ -4,7 +4,7 @@ need_ipv4
# Do a sender address verify that rejects MAIL FROM:<>
server PORT_S
220 Welcome
-HELO
+EHLO
250 Hi
MAIL FROM
550 I'm misconfigured
@@ -18,7 +18,7 @@ quit
# Now do a recipient verify for the same domain, with use_sender
server PORT_S
220 Welcome
-HELO
+EHLO
250 Hi
MAIL FROM
250 OK
diff --git a/test/scripts/0000-Basic/0540 b/test/scripts/0000-Basic/0540
index 62bb4fbce..0866eefb9 100644
--- a/test/scripts/0000-Basic/0540
+++ b/test/scripts/0000-Basic/0540
@@ -3,7 +3,7 @@ need_ipv4
#
server PORT_S 4
220 Welcome
-HELO
+EHLO
250 Hi
MAIL FROM
250 OK
@@ -13,7 +13,7 @@ QUIT
250 OK
*eof
220 Welcome
-HELO
+EHLO
250 Hi
MAIL FROM
250 OK
@@ -23,7 +23,7 @@ QUIT
250 OK
*eof
220 Welcome
-HELO
+EHLO
250 Hi
MAIL FROM
250 OK
@@ -33,7 +33,7 @@ QUIT
250 OK
*eof
220 Welcome
-HELO
+EHLO
250 Hi
MAIL FROM
250 OK
diff --git a/test/scripts/0000-Basic/0566 b/test/scripts/0000-Basic/0566
new file mode 100644
index 000000000..c4dc0d8aa
--- /dev/null
+++ b/test/scripts/0000-Basic/0566
@@ -0,0 +1,73 @@
+# Optional MAIL FROM args processing
+#
+# SIZE alone
+exim -bs
+ehlo Testing
+mail from:<x@y> SIZE=1000
+rcpt to:<userx@test.ex>
+quit
+****
+# BODY alone
+exim -bs
+ehlo Testing
+mail from:<x@y> BODY=7BIT
+rcpt to:<userx@test.ex>
+quit
+****
+# SIZE then BODY
+exim -bs
+ehlo Testing
+mail from:<x@y> SIZE=1000 BODY=7BIT
+rcpt to:<userx@test.ex>
+quit
+****
+# BODY then SIZE
+exim -bs
+ehlo Testing
+mail from:<x@y> BODY=7BIT SIZE=1000
+rcpt to:<userx@test.ex>
+quit
+****
+# AUTH then BODY then SIZE
+exim -bs
+ehlo Testing
+mail from:<x@y> AUTH=x@y BODY=7BIT SIZE=1000
+rcpt to:<userx@test.ex>
+quit
+****
+# BODY then AUTH then SIZE
+exim -bs
+ehlo Testing
+mail from:<x@y> BODY=7BIT AUTH=x@y SIZE=1000
+rcpt to:<userx@test.ex>
+quit
+****
+# SIZE then BODY then AUTH
+exim -bs
+ehlo Testing
+mail from:<x@y> SIZE=1000 BODY=7BIT AUTH=x@y
+rcpt to:<userx@test.ex>
+quit
+****
+# SIZE then BODY then SIZE
+exim -bs
+ehlo Testing
+mail from:<x@y> SIZE=1000 BODY=7BIT SIZE=1200
+rcpt to:<userx@test.ex>
+quit
+****
+# (over)SIZE then BODY
+exim -bs
+ehlo Testing
+mail from:<x@y> SIZE=40004 BODY=8BITMIME
+rcpt to:<userx@test.ex>
+quit
+****
+# BODY then (over)SIZE
+exim -bs
+ehlo Testing
+mail from:<x@y> BODY=8BITMIME SIZE=40004
+rcpt to:<userx@test.ex>
+quit
+****
+no_msglog_check
diff --git a/test/scripts/2000-GnuTLS/2014 b/test/scripts/2000-GnuTLS/2014
index dfddfa54c..c5a01494a 100644
--- a/test/scripts/2000-GnuTLS/2014
+++ b/test/scripts/2000-GnuTLS/2014
@@ -1,5 +1,6 @@
# TLS server: mandatory, optional, and revoked certificates
gnutls
+munge gnutls_unexpected
exim -DSERVER=server -bd -oX PORT_D
****
# No certificate, certificate required
diff --git a/test/scripts/2000-GnuTLS/2027 b/test/scripts/2000-GnuTLS/2027
index 5d713121d..bf0b06fd9 100644
--- a/test/scripts/2000-GnuTLS/2027
+++ b/test/scripts/2000-GnuTLS/2027
@@ -1,5 +1,6 @@
# TLS server & client: no certificate in client
gnutls
+munge gnutls_handshake
exim -DSERVER=server -bd -oX PORT_D
****
exim userx@test.ex
diff --git a/test/scripts/2200-dnsdb/2202 b/test/scripts/2200-dnsdb/2202
index 0f0651d6f..e55fbc38b 100644
--- a/test/scripts/2200-dnsdb/2202
+++ b/test/scripts/2200-dnsdb/2202
@@ -1,4 +1,5 @@
# dns_again_means_nonexist
+munge dnssec
exim -d -bh HOSTIPV4
mail from:<xx@cioce.test.again.dns>
rcpt to:<a@b>
diff --git a/test/scripts/5400-cutthrough/5400 b/test/scripts/5400-cutthrough/5400
new file mode 100644
index 000000000..ccf5e7429
--- /dev/null
+++ b/test/scripts/5400-cutthrough/5400
@@ -0,0 +1,94 @@
+# cutthrough_delivery basic operation
+need_ipv4
+#
+server PORT_S
+220 ESMTP
+EHLO
+250 OK
+MAIL FROM:
+250 Sender OK
+RCPT TO:
+250 Recipient OK
+DATA
+354 Send data
+.
+250 OK
+QUIT
+250 OK
+****
+exim -d-all+acl+transport -bs
+EHLO myhost.test.ex
+MAIL FROM:<eximtest@myhost.test.ex>
+RCPT TO:<userx@domain.com>
+DATA
+
+.
+QUIT
+****
+# cutthrough_delivery into HELO-only server
+need_ipv4
+#
+server PORT_S
+220 SMTP only spoken here
+EHLO
+550 Not here, mate
+HELO
+250 OK
+MAIL FROM:
+250 Sender OK
+RCPT TO:
+250 Recipient OK
+DATA
+354 Send data
+.
+250 OK
+QUIT
+250 OK
+****
+exim -d-all+acl+transport -bs
+EHLO myhost.test.ex
+MAIL FROM:<eximtest@myhost.test.ex>
+RCPT TO:<userz@domain.com>
+DATA
+
+.
+QUIT
+****
+# cutthrough cancelled by multiple recipients
+server PORT_S 2
+220 ESMTP
+EHLO
+250 OK
+MAIL FROM:
+250 Sender OK
+RCPT TO:
+250 Recipient OK
+QUIT
+*eof
+220 ESMTP
+EHLO
+250 OK
+MAIL FROM:
+250 Sender OK
+RCPT TO:
+250 Recipient OK
+RCPT TO:
+250 Recipient OK
+DATA
+354 Send data
+.
+250 OK
+QUIT
+250 OK
+****
+exim -d-all+acl+transport -bs
+EHLO myhost.test.ex
+MAIL FROM:<eximtest@myhost.test.ex>
+RCPT TO:<usery@domain.com>
+RCPT TO:<userx@domain.com>
+DATA
+
+.
+QUIT
+****
+sleep 1
diff --git a/test/scripts/5400-cutthrough/5401 b/test/scripts/5400-cutthrough/5401
new file mode 100644
index 000000000..42a90f4cb
--- /dev/null
+++ b/test/scripts/5400-cutthrough/5401
@@ -0,0 +1,27 @@
+# cutthrough_delivery triggered by recipient-verify
+need_ipv4
+#
+server PORT_S
+220 ESMTP
+EHLO
+250 OK
+MAIL FROM:
+250 Sender OK
+RCPT TO:
+250 Recipient OK
+DATA
+354 Send data
+.
+250 OK
+QUIT
+250 OK
+****
+exim -d-all+acl+transport -bs
+EHLO myhost.test.ex
+MAIL FROM:<eximtest@myhost.test.ex>
+RCPT TO:<userx@domain.com>
+DATA
+
+.
+QUIT
+****
diff --git a/test/scripts/5410-cutthrough-OpenSSL/5410 b/test/scripts/5410-cutthrough-OpenSSL/5410
new file mode 100644
index 000000000..9938e00e5
--- /dev/null
+++ b/test/scripts/5410-cutthrough-OpenSSL/5410
@@ -0,0 +1,37 @@
+# cutthrough_delivery to target oferring TLS
+exim -DSERVER=server -bd -oX PORT_D
+****
+# this one should succeed
+exim -d-all+acl+transport+expand+lists -bs
+EHLO myhost.test.ex
+MAIL FROM:<eximtest@myhost.test.ex>
+RCPT TO:<userx@domain.com>
+DATA
+
+.
+QUIT
+****
+# via a transport setting hosts_avoid_tls
+# so this one should not use TLS
+exim -d-all+acl+transport+expand+lists -bs
+EHLO myhost.test.ex
+MAIL FROM:<eximtest@myhost.test.ex>
+RCPT TO:<usery@domain.com>
+DATA
+
+.
+QUIT
+****
+# via a transport setting hosts_verify_avoid_tls
+# so this one should not use TLS
+exim -d-all+acl+transport+expand+lists -bs
+EHLO myhost.test.ex
+MAIL FROM:<eximtest@myhost.test.ex>
+RCPT TO:<usery@domain.com>
+DATA
+
+.
+QUIT
+****
+killdaemon
+no_msglog_check
diff --git a/test/scripts/5410-cutthrough-OpenSSL/REQUIRES b/test/scripts/5410-cutthrough-OpenSSL/REQUIRES
new file mode 100644
index 000000000..9e2124e10
--- /dev/null
+++ b/test/scripts/5410-cutthrough-OpenSSL/REQUIRES
@@ -0,0 +1,2 @@
+support OpenSSL
+running IPv4
diff --git a/test/scripts/5420-cutthrough-GnuTLS/5420 b/test/scripts/5420-cutthrough-GnuTLS/5420
new file mode 100644
index 000000000..c43e1865b
--- /dev/null
+++ b/test/scripts/5420-cutthrough-GnuTLS/5420
@@ -0,0 +1,34 @@
+# cutthrough_delivery to target offering TLS
+exim -DSERVER=server -bd -oX PORT_D
+****
+exim -d-all+acl+transport+expand+lists -bs
+EHLO myhost.test.ex
+MAIL FROM:<eximtest@myhost.test.ex>
+RCPT TO:<userx@domain.com>
+DATA
+
+.
+QUIT
+****
+# via a transport setting hosts_avoid_tls
+exim -d-all+acl+transport+expand+lists -bs
+EHLO myhost.test.ex
+MAIL FROM:<eximtest@myhost.test.ex>
+RCPT TO:<usery@domain.com>
+DATA
+
+.
+QUIT
+****
+# via a transport setting hosts_verify_avoid_tls
+exim -d-all+acl+transport+expand+lists -bs
+EHLO myhost.test.ex
+MAIL FROM:<eximtest@myhost.test.ex>
+RCPT TO:<usery@domain.com>
+DATA
+
+.
+QUIT
+****
+killdaemon
+no_msglog_check
diff --git a/test/scripts/5420-cutthrough-GnuTLS/REQUIRES b/test/scripts/5420-cutthrough-GnuTLS/REQUIRES
new file mode 100644
index 000000000..d21ee471d
--- /dev/null
+++ b/test/scripts/5420-cutthrough-GnuTLS/REQUIRES
@@ -0,0 +1,2 @@
+support GnuTLS
+running IPv4
diff --git a/test/stderr/0227 b/test/stderr/0227
index 8a34bd454..31f5b584d 100644
--- a/test/stderr/0227
+++ b/test/stderr/0227
@@ -2,7 +2,7 @@ LOG: smtp_connection MAIN
SMTP connection from root
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -19,7 +19,7 @@ LOG: smtp_connection MAIN
SMTP connection from root
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -36,7 +36,7 @@ LOG: smtp_connection MAIN
SMTP connection from root
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -53,7 +53,7 @@ LOG: smtp_connection MAIN
SMTP connection from root
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 550 Error for <>
@@ -68,7 +68,7 @@ LOG: smtp_connection MAIN
SMTP connection from root
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 550-Multiline error for <>
@@ -84,7 +84,7 @@ LOG: smtp_connection MAIN
SMTP connection from root
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -99,7 +99,7 @@ LOG: smtp_connection MAIN
SMTP connection from root
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -123,7 +123,7 @@ LOG: smtp_connection MAIN
SMTP connection from root
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -138,7 +138,7 @@ LOG: smtp_connection MAIN
SMTP connection from root
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -153,12 +153,13 @@ LOG: smtp_connection MAIN
SMTP connection from root
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
SMTP>> RCPT TO:<ok@localhost1>
SMTP<< 250 OK
+Cutthrough cancelled by presence of postmaster verify
SMTP>> RSET
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
@@ -174,12 +175,13 @@ LOG: smtp_connection MAIN
SMTP connection from root
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
SMTP>> RCPT TO:<ok@localhost1>
SMTP<< 250 OK
+Cutthrough cancelled by presence of postmaster verify
SMTP>> RSET
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
diff --git a/test/stderr/0376 b/test/stderr/0376
index 3a6367578..857295978 100644
--- a/test/stderr/0376
+++ b/test/stderr/0376
@@ -14,7 +14,7 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -83,7 +83,7 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -137,7 +137,7 @@ callout cache: address record expired
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 550 REJECT MAIL FROM
@@ -187,12 +187,13 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
SMTP>> RCPT TO:<ok@otherhost>
SMTP<< 250 OK
+Cutthrough cancelled by presence of postmaster verify
SMTP>> RSET
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
@@ -246,12 +247,13 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
SMTP>> RCPT TO:<ok@otherhost2>
SMTP<< 250 OK
+Cutthrough cancelled by presence of postmaster verify
SMTP>> RSET
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
@@ -299,7 +301,7 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -343,7 +345,7 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -387,7 +389,7 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -399,6 +401,7 @@ Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 250 OK
SMTP>> RCPT TO:<ok@otherhost41>
SMTP<< 250 OK
+Cutthrough cancelled by presence of postmaster verify
SMTP>> RSET
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
@@ -447,12 +450,13 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
SMTP>> RCPT TO:<ok@otherhost21>
SMTP<< 250 OK
+Cutthrough cancelled by presence of postmaster verify
SMTP>> RSET
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
@@ -483,7 +487,7 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -512,7 +516,7 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -548,7 +552,7 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -577,7 +581,7 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -612,7 +616,7 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -643,12 +647,13 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
SMTP>> RCPT TO:<okokok@otherhost52>
SMTP<< 250 OK
+Cutthrough cancelled by presence of postmaster verify
SMTP>> RSET
SMTP<< 250 OK
SMTP>> MAIL FROM:<pmsend@a.domain>
@@ -679,7 +684,7 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<somesender@a.domain>
SMTP<< 250 OK
@@ -711,7 +716,7 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -740,12 +745,13 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
SMTP>> RCPT TO:<ok@otherhost9>
SMTP<< 250 OK
+Cutthrough cancelled by presence of postmaster verify
SMTP>> RSET
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
@@ -777,7 +783,7 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<postmaster@myhost.test.ex>
SMTP<< 250 OK
@@ -789,6 +795,7 @@ Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 250 OK
SMTP>> RCPT TO:<z@test.ex>
SMTP<< 250 OK
+Cutthrough cancelled by presence of postmaster verify
SMTP>> RSET
SMTP<< 250 OK
SMTP>> MAIL FROM:<pmsend@b.domain>
diff --git a/test/stderr/0398 b/test/stderr/0398
index f02458c39..db5c4cf79 100644
--- a/test/stderr/0398
+++ b/test/stderr/0398
@@ -126,7 +126,8 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO mail.test.ex
+127.0.0.1 in hosts_avoid_esmtp? no (option unset)
+ SMTP>> EHLO mail.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
diff --git a/test/stderr/0432 b/test/stderr/0432
index a35449b40..33e1b9892 100644
--- a/test/stderr/0432
+++ b/test/stderr/0432
@@ -89,7 +89,8 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 server ready
- SMTP>> HELO myhost.test.ex
+127.0.0.1 in hosts_avoid_esmtp? no (option unset)
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -242,7 +243,8 @@ MUNGED: ::1 will be omitted in what follows
>>> interface=NULL port=1224
>>> Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
>>> SMTP<< 220 server ready
->>> SMTP>> HELO myhost.test.ex
+>>> 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
+>>> SMTP>> EHLO myhost.test.ex
>>> SMTP<< 250 OK
>>> SMTP>> MAIL FROM:<>
>>> SMTP<< 250 OK
@@ -280,7 +282,8 @@ MUNGED: ::1 will be omitted in what follows
>>> interface=NULL port=1224
>>> Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
>>> SMTP<< 220 server ready
->>> SMTP>> HELO myhost.test.ex
+>>> 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
+>>> SMTP>> EHLO myhost.test.ex
>>> SMTP timeout
>>> ----------- end verify ------------
>>> accept: condition test deferred in ACL "mail"
diff --git a/test/stderr/0443 b/test/stderr/0443
index 6cf1dcf04..99dc1c6f6 100644
--- a/test/stderr/0443
+++ b/test/stderr/0443
@@ -16,9 +16,8 @@
>>> Attempting full verification using callout
>>> callout cache: no domain record found
>>> callout cache: no address record found
->>> interface=NULL port=25
->>> Connecting to ten-1.test.ex [V4NET.0.0.1]:25 ... failed: Network Error
+>>> cannot callout via null transport
>>> ----------- end verify ------------
>>> accept: condition test deferred in ACL "rcpt"
-LOG: H=[V4NET.0.0.1] sender verify defer for <x@ten-1.test.ex>: could not connect to ten-1.test.ex [V4NET.0.0.1]: Network Error
+LOG: H=[V4NET.0.0.1] sender verify defer for <x@ten-1.test.ex>: Could not complete sender verify callout
LOG: H=[V4NET.0.0.1] F=<x@ten-1.test.ex> temporarily rejected RCPT x@y: Could not complete sender verify callout
diff --git a/test/stderr/0462 b/test/stderr/0462
index 238959945..f9133d602 100644
--- a/test/stderr/0462
+++ b/test/stderr/0462
@@ -14,12 +14,13 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
SMTP>> RCPT TO:<Ok@localhost>
SMTP<< 250 OK
+Cutthrough cancelled by presence of postmaster verify
SMTP>> RSET
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
@@ -62,7 +63,7 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
@@ -95,7 +96,7 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO myhost.test.ex
+ SMTP>> EHLO myhost.test.ex
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
diff --git a/test/stderr/0473 b/test/stderr/0473
index a29575e16..090335d97 100644
--- a/test/stderr/0473
+++ b/test/stderr/0473
@@ -14,7 +14,7 @@ callout cache: no address record found
interface=NULL port=1224
Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
SMTP<< 220 Server ready
- SMTP>> HELO the.local.host.name
+ SMTP>> EHLO the.local.host.name
SMTP<< 250 OK
SMTP>> MAIL FROM:<>
SMTP<< 250 OK
diff --git a/test/stderr/5400 b/test/stderr/5400
new file mode 100644
index 000000000..11c861ba7
--- /dev/null
+++ b/test/stderr/5400
@@ -0,0 +1,165 @@
+Exim version x.yz ....
+configuration file is TESTSUITE/test-config
+admin user
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER
+using ACL "ar"
+processing "accept"
+check control = cutthrough_delivery
+check logwrite = rcpt for $local_part@$domain
+ = rcpt for userx@domain.com
+LOG: MAIN
+ rcpt for userx@domain.com
+created log directory TESTSUITE/spool/log
+accept: condition test succeeded in ACL "ar"
+----------- start cutthrough setup ------------
+Connecting to 127.0.0.1 [127.0.0.1]:1224 from ip4.ip4.ip4.ip4 ... connected
+ SMTP<< 220 ESMTP
+ SMTP>> EHLO myhost.test.ex
+ SMTP<< 250 OK
+ SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
+ SMTP<< 250 Sender OK
+ SMTP>> RCPT TO:<userx@domain.com>
+ SMTP<< 250 Recipient OK
+----------- end cutthrough setup ------------
+processing "accept"
+accept: condition test succeeded in inline ACL
+ SMTP>> DATA
+ SMTP<< 354 Send data
+ SMTP>>(nl)
+ SMTP>> .
+ SMTP<< 250 OK
+LOG: MAIN
+ >> userx@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1]
+ SMTP>> QUIT
+----------- cutthrough shutdown (delivered) ------------
+LOG: MAIN
+ <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+LOG: MAIN
+ Completed
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER closed by QUIT
+>>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
+Exim version x.yz ....
+configuration file is TESTSUITE/test-config
+admin user
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER
+using ACL "ar"
+processing "accept"
+check control = cutthrough_delivery
+check logwrite = rcpt for $local_part@$domain
+ = rcpt for userz@domain.com
+LOG: MAIN
+ rcpt for userz@domain.com
+accept: condition test succeeded in ACL "ar"
+----------- start cutthrough setup ------------
+Connecting to 127.0.0.1 [127.0.0.1]:1224 from ip4.ip4.ip4.ip4 ... connected
+ SMTP<< 220 SMTP only spoken here
+ SMTP>> EHLO myhost.test.ex
+ SMTP<< 550 Not here, mate
+ SMTP>> HELO myhost.test.ex
+ SMTP<< 250 OK
+ SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
+ SMTP<< 250 Sender OK
+ SMTP>> RCPT TO:<userz@domain.com>
+ SMTP<< 250 Recipient OK
+----------- end cutthrough setup ------------
+processing "accept"
+accept: condition test succeeded in inline ACL
+ SMTP>> DATA
+ SMTP<< 354 Send data
+ SMTP>>(nl)
+ SMTP>> .
+ SMTP<< 250 OK
+LOG: MAIN
+ >> userz@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1]
+ SMTP>> QUIT
+----------- cutthrough shutdown (delivered) ------------
+LOG: MAIN
+ <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+LOG: MAIN
+ Completed
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER closed by QUIT
+>>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
+Exim version x.yz ....
+configuration file is TESTSUITE/test-config
+admin user
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER
+using ACL "ar"
+processing "accept"
+check control = cutthrough_delivery
+check logwrite = rcpt for $local_part@$domain
+ = rcpt for usery@domain.com
+LOG: MAIN
+ rcpt for usery@domain.com
+accept: condition test succeeded in ACL "ar"
+----------- start cutthrough setup ------------
+Connecting to 127.0.0.1 [127.0.0.1]:1224 from ip4.ip4.ip4.ip4 ... connected
+ SMTP<< 220 ESMTP
+ SMTP>> EHLO myhost.test.ex
+ SMTP<< 250 OK
+ SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
+ SMTP<< 250 Sender OK
+ SMTP>> RCPT TO:<usery@domain.com>
+ SMTP<< 250 Recipient OK
+----------- end cutthrough setup ------------
+using ACL "ar"
+processing "accept"
+check control = cutthrough_delivery
+check logwrite = rcpt for $local_part@$domain
+ = rcpt for userx@domain.com
+LOG: MAIN
+ rcpt for userx@domain.com
+accept: condition test succeeded in ACL "ar"
+ SMTP>> QUIT
+----------- cutthrough shutdown (more than one recipient) ------------
+LOG: MAIN
+ <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER closed by QUIT
+>>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
+Exim version x.yz ....
+configuration file is TESTSUITE/test-config
+trusted user
+admin user
+skipping ACL configuration - not needed
+>>>>>>>>>>>>>>>> Remote deliveries >>>>>>>>>>>>>>>>
+--------> usery@domain.com <--------
+smtp transport entered
+ usery@domain.com
+ userx@domain.com
+checking status of 127.0.0.1
+127.0.0.1 [127.0.0.1]:1111 status = usable
+delivering 10HmaZ-0005vi-00 to 127.0.0.1 [127.0.0.1] (usery@domain.com, ...)
+Connecting to 127.0.0.1 [127.0.0.1]:1224 from ip4.ip4.ip4.ip4 ... connected
+ SMTP<< 220 ESMTP
+ SMTP>> EHLO myhost.test.ex
+ SMTP<< 250 OK
+not using PIPELINING
+ SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
+ SMTP<< 250 Sender OK
+ SMTP>> RCPT TO:<usery@domain.com>
+ SMTP<< 250 Recipient OK
+ SMTP>> RCPT TO:<userx@domain.com>
+ SMTP<< 250 Recipient OK
+ SMTP>> DATA
+ SMTP<< 354 Send data
+ SMTP>> writing message and terminating "."
+writing data block fd=dddd size=sss timeout=300
+ SMTP<< 250 OK
+ok=1 send_quit=1 send_rset=0 continue_more=0 yield=0 first_address is NULL
+transport_check_waiting entered
+ sequence=1 local_max=500 global_max=-1
+no messages waiting for 127.0.0.1
+ SMTP>> QUIT
+Leaving smtp transport
+LOG: MAIN
+ => usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1]
+LOG: MAIN
+ -> userx@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1]
+LOG: MAIN
+ Completed
+>>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
diff --git a/test/stderr/5401 b/test/stderr/5401
new file mode 100644
index 000000000..91f453e7c
--- /dev/null
+++ b/test/stderr/5401
@@ -0,0 +1,40 @@
+Exim version x.yz ....
+configuration file is TESTSUITE/test-config
+admin user
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER
+using ACL "acl_rcpt"
+processing "accept"
+check control = cutthrough_delivery
+check verify = recipient
+----------- end verify ------------
+accept: condition test succeeded in ACL "acl_rcpt"
+----------- start cutthrough setup ------------
+Connecting to 127.0.0.1 [127.0.0.1]:1224 from ip4.ip4.ip4.ip4 ... connected
+ SMTP<< 220 ESMTP
+ SMTP>> EHLO myhost.test.ex
+ SMTP<< 250 OK
+ SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
+ SMTP<< 250 Sender OK
+ SMTP>> RCPT TO:<userx@domain.com>
+ SMTP<< 250 Recipient OK
+----------- end cutthrough setup ------------
+processing "accept"
+accept: condition test succeeded in inline ACL
+ SMTP>> DATA
+ SMTP<< 354 Send data
+ SMTP>>(nl)
+ SMTP>> .
+ SMTP<< 250 OK
+LOG: MAIN
+ >> userx@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1]
+created log directory TESTSUITE/spool/log
+ SMTP>> QUIT
+----------- cutthrough shutdown (delivered) ------------
+LOG: MAIN
+ <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+LOG: MAIN
+ Completed
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER closed by QUIT
+>>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
diff --git a/test/stderr/5402 b/test/stderr/5402
new file mode 100644
index 000000000..7babe3546
--- /dev/null
+++ b/test/stderr/5402
@@ -0,0 +1,274 @@
+Exim version x.yz ....
+configuration file is TESTSUITE/test-config
+admin user
+ in hosts_connection_nolog? no (option unset)
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER
+expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+ result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+ in pipelining_advertise_hosts? yes (matched "*")
+ in tls_advertise_hosts? yes (matched "*")
+expanding: SERVER
+ result: SERVER
+expanding: server
+ result: server
+condition: eq {SERVER}{server}
+ result: false
+expanding: queue
+ result: queue
+skipping: result is not used
+expanding: cutthrough
+ result: cutthrough
+expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
+ result: cutthrough
+using ACL "cutthrough"
+processing "accept"
+check control = cutthrough_delivery
+check verify = recipient
+domain.com in "test.ex : *.test.ex"? no (end of list)
+domain.com in "! +local_domains"? yes (end of list)
+expanding: $local_part
+ result: userx
+domain.com in "*"? yes (matched "*")
+----------- end verify ------------
+accept: condition test succeeded in ACL "cutthrough"
+----------- start cutthrough setup ------------
+domain.com in "test.ex : *.test.ex"? no (end of list)
+domain.com in "! +local_domains"? yes (end of list)
+expanding: $local_part
+ result: userx
+domain.com in "*"? yes (matched "*")
+Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ... connected
+expanding: $primary_hostname
+ result: myhost.test.ex
+ SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+127.0.0.1 in hosts_avoid_esmtp? no (option unset)
+ SMTP>> EHLO myhost.test.ex
+ SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
+ 250-SIZE 52428800
+ 250-8BITMIME
+ 250-PIPELINING
+ 250-STARTTLS
+ 250 HELP
+expanding: $address_data
+ result: userx
+expanding: usery
+ result: usery
+condition: eq {$address_data}{usery}
+ result: false
+expanding: *
+ result: *
+skipping: result is not used
+expanding: :
+ result: :
+expanding: ${if eq {$address_data}{usery}{*}{:}}
+ result: :
+127.0.0.1 in hosts_avoid_tls? no (end of list)
+ SMTP>> STARTTLS
+ SMTP<< 220 TLS go ahead
+ SMTP>> EHLO myhost.test.ex
+ SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
+ 250-SIZE 52428800
+ 250-8BITMIME
+ 250-PIPELINING
+ 250 HELP
+ SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
+ SMTP<< 250 OK
+ SMTP>> RCPT TO:<userx@domain.com>
+ SMTP<< 250 Accepted
+----------- end cutthrough setup ------------
+processing "accept"
+accept: condition test succeeded in inline ACL
+ SMTP>> DATA
+ SMTP<< 354 Enter message, ending with "." on a line by itself
+expanding: ${tod_full}
+ result: Tue, 2 Mar 1999 09:44:33 +0000
+condition: def:sender_rcvhost
+ result: false
+expanding: from $sender_rcvhost
+
+ result: from
+
+skipping: result is not used
+condition: def:sender_ident
+ result: true
+expanding: $sender_ident
+ result: CALLER
+expanding: from ${quote_local_part:$sender_ident}
+ result: from CALLER
+condition: def:sender_helo_name
+ result: true
+expanding: (helo=$sender_helo_name)
+
+ result: (helo=myhost.test.ex)
+
+expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+ }}
+ result: from CALLER (helo=myhost.test.ex)
+
+condition: def:received_protocol
+ result: true
+expanding: with $received_protocol
+ result: with local-esmtp
+condition: def:sender_address
+ result: true
+expanding: (envelope-from <$sender_address>)
+
+ result: (envelope-from <CALLER@myhost.test.ex>)
+
+condition: def:received_for
+ result: true
+expanding:
+ for $received_for
+ result:
+ for userx@domain.com
+PDKIM <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+expanding: ${tod_full}
+ result: Tue, 2 Mar 1999 09:44:33 +0000
+ SMTP>> .
+ SMTP<< 250 OK id=10HmaX-0005vi-00
+LOG: MAIN
+ >> userx@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] X=TLSv1:AES256-SHA:256 C="250 OK id=10HmaX-0005vi-00"
+ SMTP>> QUIT
+----------- cutthrough shutdown (delivered) ------------
+LOG: MAIN
+ <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+LOG: MAIN
+ Completed
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER closed by QUIT
+>>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
+Exim version x.yz ....
+configuration file is TESTSUITE/test-config
+admin user
+ in hosts_connection_nolog? no (option unset)
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER
+expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+ result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+ in pipelining_advertise_hosts? yes (matched "*")
+ in tls_advertise_hosts? yes (matched "*")
+expanding: SERVER
+ result: SERVER
+expanding: server
+ result: server
+condition: eq {SERVER}{server}
+ result: false
+expanding: queue
+ result: queue
+skipping: result is not used
+expanding: cutthrough
+ result: cutthrough
+expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
+ result: cutthrough
+using ACL "cutthrough"
+processing "accept"
+check control = cutthrough_delivery
+check verify = recipient
+domain.com in "test.ex : *.test.ex"? no (end of list)
+domain.com in "! +local_domains"? yes (end of list)
+expanding: $local_part
+ result: usery
+domain.com in "*"? yes (matched "*")
+----------- end verify ------------
+accept: condition test succeeded in ACL "cutthrough"
+----------- start cutthrough setup ------------
+domain.com in "test.ex : *.test.ex"? no (end of list)
+domain.com in "! +local_domains"? yes (end of list)
+expanding: $local_part
+ result: usery
+domain.com in "*"? yes (matched "*")
+Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ... connected
+expanding: $primary_hostname
+ result: myhost.test.ex
+ SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+127.0.0.1 in hosts_avoid_esmtp? no (option unset)
+ SMTP>> EHLO myhost.test.ex
+ SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
+ 250-SIZE 52428800
+ 250-8BITMIME
+ 250-PIPELINING
+ 250-STARTTLS
+ 250 HELP
+expanding: $address_data
+ result: usery
+expanding: usery
+ result: usery
+condition: eq {$address_data}{usery}
+ result: true
+expanding: *
+ result: *
+expanding: :
+ result: :
+skipping: result is not used
+expanding: ${if eq {$address_data}{usery}{*}{:}}
+ result: *
+127.0.0.1 in hosts_avoid_tls? yes (matched "*")
+ SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
+ SMTP<< 250 OK
+ SMTP>> RCPT TO:<usery@domain.com>
+ SMTP<< 250 Accepted
+----------- end cutthrough setup ------------
+processing "accept"
+accept: condition test succeeded in inline ACL
+ SMTP>> DATA
+ SMTP<< 354 Enter message, ending with "." on a line by itself
+expanding: ${tod_full}
+ result: Tue, 2 Mar 1999 09:44:33 +0000
+condition: def:sender_rcvhost
+ result: false
+expanding: from $sender_rcvhost
+
+ result: from
+
+skipping: result is not used
+condition: def:sender_ident
+ result: true
+expanding: $sender_ident
+ result: CALLER
+expanding: from ${quote_local_part:$sender_ident}
+ result: from CALLER
+condition: def:sender_helo_name
+ result: true
+expanding: (helo=$sender_helo_name)
+
+ result: (helo=myhost.test.ex)
+
+expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+ }}
+ result: from CALLER (helo=myhost.test.ex)
+
+condition: def:received_protocol
+ result: true
+expanding: with $received_protocol
+ result: with local-esmtp
+condition: def:sender_address
+ result: true
+expanding: (envelope-from <$sender_address>)
+
+ result: (envelope-from <CALLER@myhost.test.ex>)
+
+condition: def:received_for
+ result: true
+expanding:
+ for $received_for
+ result:
+ for usery@domain.com
+PDKIM <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+expanding: ${tod_full}
+ result: Tue, 2 Mar 1999 09:44:33 +0000
+ SMTP>> .
+ SMTP<< 250 OK id=10HmaZ-0005vi-00
+LOG: MAIN
+ >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmaZ-0005vi-00"
+ SMTP>> QUIT
+----------- cutthrough shutdown (delivered) ------------
+LOG: MAIN
+ <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+LOG: MAIN
+ Completed
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER closed by QUIT
+>>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
+
+******** SERVER ********
diff --git a/test/stderr/5410 b/test/stderr/5410
new file mode 100644
index 000000000..f8b31a750
--- /dev/null
+++ b/test/stderr/5410
@@ -0,0 +1,420 @@
+Exim version x.yz ....
+configuration file is TESTSUITE/test-config
+admin user
+ in hosts_connection_nolog? no (option unset)
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER
+expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+ result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+ in pipelining_advertise_hosts? yes (matched "*")
+ in tls_advertise_hosts? yes (matched "*")
+expanding: SERVER
+ result: SERVER
+expanding: server
+ result: server
+condition: eq {SERVER}{server}
+ result: false
+expanding: queue
+ result: queue
+skipping: result is not used
+expanding: cutthrough
+ result: cutthrough
+expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
+ result: cutthrough
+using ACL "cutthrough"
+processing "accept"
+check control = cutthrough_delivery
+check verify = recipient
+domain.com in "test.ex : *.test.ex"? no (end of list)
+domain.com in "! +local_domains"? yes (end of list)
+expanding: $local_part
+ result: userx
+domain.com in "*"? yes (matched "*")
+----------- end verify ------------
+accept: condition test succeeded in ACL "cutthrough"
+----------- start cutthrough setup ------------
+domain.com in "test.ex : *.test.ex"? no (end of list)
+domain.com in "! +local_domains"? yes (end of list)
+expanding: $local_part
+ result: userx
+domain.com in "*"? yes (matched "*")
+Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ... connected
+expanding: $primary_hostname
+ result: myhost.test.ex
+ SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+127.0.0.1 in hosts_avoid_esmtp? no (option unset)
+ SMTP>> EHLO myhost.test.ex
+ SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
+ 250-SIZE 52428800
+ 250-8BITMIME
+ 250-PIPELINING
+ 250-STARTTLS
+ 250 HELP
+expanding: $address_data
+ result: userx
+expanding: usery
+ result: usery
+condition: eq {$address_data}{usery}
+ result: false
+expanding: *
+ result: *
+skipping: result is not used
+expanding: :
+ result: :
+expanding: ${if eq {$address_data}{usery}{*}{:}}
+ result: :
+127.0.0.1 in hosts_avoid_tls? no (end of list)
+expanding: $address_data
+ result: userx
+expanding: userz
+ result: userz
+condition: eq {$address_data}{userz}
+ result: false
+expanding: *
+ result: *
+skipping: result is not used
+expanding: :
+ result: :
+expanding: ${if eq {$address_data}{userz}{*}{:}}
+ result: :
+127.0.0.1 in hosts_verify_avoid_tls? no (end of list)
+ SMTP>> STARTTLS
+ SMTP<< 220 TLS go ahead
+ SMTP>> EHLO myhost.test.ex
+ SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
+ 250-SIZE 52428800
+ 250-8BITMIME
+ 250-PIPELINING
+ 250 HELP
+ SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
+ SMTP<< 250 OK
+ SMTP>> RCPT TO:<userx@domain.com>
+ SMTP<< 250 Accepted
+----------- end cutthrough setup ------------
+processing "accept"
+accept: condition test succeeded in inline ACL
+ SMTP>> DATA
+ SMTP<< 354 Enter message, ending with "." on a line by itself
+expanding: ${tod_full}
+ result: Tue, 2 Mar 1999 09:44:33 +0000
+condition: def:sender_rcvhost
+ result: false
+expanding: from $sender_rcvhost
+
+ result: from
+
+skipping: result is not used
+condition: def:sender_ident
+ result: true
+expanding: $sender_ident
+ result: CALLER
+expanding: from ${quote_local_part:$sender_ident}
+ result: from CALLER
+condition: def:sender_helo_name
+ result: true
+expanding: (helo=$sender_helo_name)
+
+ result: (helo=myhost.test.ex)
+
+expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+ }}
+ result: from CALLER (helo=myhost.test.ex)
+
+condition: def:received_protocol
+ result: true
+expanding: with $received_protocol
+ result: with local-esmtp
+condition: def:sender_address
+ result: true
+expanding: (envelope-from <$sender_address>)
+
+ result: (envelope-from <CALLER@myhost.test.ex>)
+
+condition: def:received_for
+ result: true
+expanding:
+ for $received_for
+ result:
+ for userx@domain.com
+PDKIM <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+expanding: ${tod_full}
+ result: Tue, 2 Mar 1999 09:44:33 +0000
+ SMTP>> .
+ SMTP<< 250 OK id=10HmaX-0005vi-00
+LOG: MAIN
+ >> userx@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] X=TLSv1:AES256-SHA:256 C="250 OK id=10HmaX-0005vi-00"
+ SMTP>> QUIT
+----------- cutthrough shutdown (delivered) ------------
+LOG: MAIN
+ <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+LOG: MAIN
+ Completed
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER closed by QUIT
+>>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
+Exim version x.yz ....
+configuration file is TESTSUITE/test-config
+admin user
+ in hosts_connection_nolog? no (option unset)
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER
+expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+ result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+ in pipelining_advertise_hosts? yes (matched "*")
+ in tls_advertise_hosts? yes (matched "*")
+expanding: SERVER
+ result: SERVER
+expanding: server
+ result: server
+condition: eq {SERVER}{server}
+ result: false
+expanding: queue
+ result: queue
+skipping: result is not used
+expanding: cutthrough
+ result: cutthrough
+expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
+ result: cutthrough
+using ACL "cutthrough"
+processing "accept"
+check control = cutthrough_delivery
+check verify = recipient
+domain.com in "test.ex : *.test.ex"? no (end of list)
+domain.com in "! +local_domains"? yes (end of list)
+expanding: $local_part
+ result: usery
+domain.com in "*"? yes (matched "*")
+----------- end verify ------------
+accept: condition test succeeded in ACL "cutthrough"
+----------- start cutthrough setup ------------
+domain.com in "test.ex : *.test.ex"? no (end of list)
+domain.com in "! +local_domains"? yes (end of list)
+expanding: $local_part
+ result: usery
+domain.com in "*"? yes (matched "*")
+Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ... connected
+expanding: $primary_hostname
+ result: myhost.test.ex
+ SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+127.0.0.1 in hosts_avoid_esmtp? no (option unset)
+ SMTP>> EHLO myhost.test.ex
+ SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
+ 250-SIZE 52428800
+ 250-8BITMIME
+ 250-PIPELINING
+ 250-STARTTLS
+ 250 HELP
+expanding: $address_data
+ result: usery
+expanding: usery
+ result: usery
+condition: eq {$address_data}{usery}
+ result: true
+expanding: *
+ result: *
+expanding: :
+ result: :
+skipping: result is not used
+expanding: ${if eq {$address_data}{usery}{*}{:}}
+ result: *
+127.0.0.1 in hosts_avoid_tls? yes (matched "*")
+ SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
+ SMTP<< 250 OK
+ SMTP>> RCPT TO:<usery@domain.com>
+ SMTP<< 250 Accepted
+----------- end cutthrough setup ------------
+processing "accept"
+accept: condition test succeeded in inline ACL
+ SMTP>> DATA
+ SMTP<< 354 Enter message, ending with "." on a line by itself
+expanding: ${tod_full}
+ result: Tue, 2 Mar 1999 09:44:33 +0000
+condition: def:sender_rcvhost
+ result: false
+expanding: from $sender_rcvhost
+
+ result: from
+
+skipping: result is not used
+condition: def:sender_ident
+ result: true
+expanding: $sender_ident
+ result: CALLER
+expanding: from ${quote_local_part:$sender_ident}
+ result: from CALLER
+condition: def:sender_helo_name
+ result: true
+expanding: (helo=$sender_helo_name)
+
+ result: (helo=myhost.test.ex)
+
+expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+ }}
+ result: from CALLER (helo=myhost.test.ex)
+
+condition: def:received_protocol
+ result: true
+expanding: with $received_protocol
+ result: with local-esmtp
+condition: def:sender_address
+ result: true
+expanding: (envelope-from <$sender_address>)
+
+ result: (envelope-from <CALLER@myhost.test.ex>)
+
+condition: def:received_for
+ result: true
+expanding:
+ for $received_for
+ result:
+ for usery@domain.com
+PDKIM <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+expanding: ${tod_full}
+ result: Tue, 2 Mar 1999 09:44:33 +0000
+ SMTP>> .
+ SMTP<< 250 OK id=10HmaZ-0005vi-00
+LOG: MAIN
+ >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmaZ-0005vi-00"
+ SMTP>> QUIT
+----------- cutthrough shutdown (delivered) ------------
+LOG: MAIN
+ <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+LOG: MAIN
+ Completed
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER closed by QUIT
+>>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
+Exim version x.yz ....
+configuration file is TESTSUITE/test-config
+admin user
+ in hosts_connection_nolog? no (option unset)
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER
+expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+ result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+ in pipelining_advertise_hosts? yes (matched "*")
+ in tls_advertise_hosts? yes (matched "*")
+expanding: SERVER
+ result: SERVER
+expanding: server
+ result: server
+condition: eq {SERVER}{server}
+ result: false
+expanding: queue
+ result: queue
+skipping: result is not used
+expanding: cutthrough
+ result: cutthrough
+expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
+ result: cutthrough
+using ACL "cutthrough"
+processing "accept"
+check control = cutthrough_delivery
+check verify = recipient
+domain.com in "test.ex : *.test.ex"? no (end of list)
+domain.com in "! +local_domains"? yes (end of list)
+expanding: $local_part
+ result: usery
+domain.com in "*"? yes (matched "*")
+----------- end verify ------------
+accept: condition test succeeded in ACL "cutthrough"
+----------- start cutthrough setup ------------
+domain.com in "test.ex : *.test.ex"? no (end of list)
+domain.com in "! +local_domains"? yes (end of list)
+expanding: $local_part
+ result: usery
+domain.com in "*"? yes (matched "*")
+Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ... connected
+expanding: $primary_hostname
+ result: myhost.test.ex
+ SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+127.0.0.1 in hosts_avoid_esmtp? no (option unset)
+ SMTP>> EHLO myhost.test.ex
+ SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
+ 250-SIZE 52428800
+ 250-8BITMIME
+ 250-PIPELINING
+ 250-STARTTLS
+ 250 HELP
+expanding: $address_data
+ result: usery
+expanding: usery
+ result: usery
+condition: eq {$address_data}{usery}
+ result: true
+expanding: *
+ result: *
+expanding: :
+ result: :
+skipping: result is not used
+expanding: ${if eq {$address_data}{usery}{*}{:}}
+ result: *
+127.0.0.1 in hosts_avoid_tls? yes (matched "*")
+ SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
+ SMTP<< 250 OK
+ SMTP>> RCPT TO:<usery@domain.com>
+ SMTP<< 250 Accepted
+----------- end cutthrough setup ------------
+processing "accept"
+accept: condition test succeeded in inline ACL
+ SMTP>> DATA
+ SMTP<< 354 Enter message, ending with "." on a line by itself
+expanding: ${tod_full}
+ result: Tue, 2 Mar 1999 09:44:33 +0000
+condition: def:sender_rcvhost
+ result: false
+expanding: from $sender_rcvhost
+
+ result: from
+
+skipping: result is not used
+condition: def:sender_ident
+ result: true
+expanding: $sender_ident
+ result: CALLER
+expanding: from ${quote_local_part:$sender_ident}
+ result: from CALLER
+condition: def:sender_helo_name
+ result: true
+expanding: (helo=$sender_helo_name)
+
+ result: (helo=myhost.test.ex)
+
+expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+ }}
+ result: from CALLER (helo=myhost.test.ex)
+
+condition: def:received_protocol
+ result: true
+expanding: with $received_protocol
+ result: with local-esmtp
+condition: def:sender_address
+ result: true
+expanding: (envelope-from <$sender_address>)
+
+ result: (envelope-from <CALLER@myhost.test.ex>)
+
+condition: def:received_for
+ result: true
+expanding:
+ for $received_for
+ result:
+ for usery@domain.com
+PDKIM <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+expanding: ${tod_full}
+ result: Tue, 2 Mar 1999 09:44:33 +0000
+ SMTP>> .
+ SMTP<< 250 OK id=10HmbB-0005vi-00
+LOG: MAIN
+ >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbB-0005vi-00"
+ SMTP>> QUIT
+----------- cutthrough shutdown (delivered) ------------
+LOG: MAIN
+ <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+LOG: MAIN
+ Completed
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER closed by QUIT
+>>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
+
+******** SERVER ********
diff --git a/test/stderr/5420 b/test/stderr/5420
new file mode 100644
index 000000000..e711184f5
--- /dev/null
+++ b/test/stderr/5420
@@ -0,0 +1,420 @@
+Exim version x.yz ....
+configuration file is TESTSUITE/test-config
+admin user
+ in hosts_connection_nolog? no (option unset)
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER
+expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+ result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+ in pipelining_advertise_hosts? yes (matched "*")
+ in tls_advertise_hosts? yes (matched "*")
+expanding: SERVER
+ result: SERVER
+expanding: server
+ result: server
+condition: eq {SERVER}{server}
+ result: false
+expanding: queue
+ result: queue
+skipping: result is not used
+expanding: cutthrough
+ result: cutthrough
+expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
+ result: cutthrough
+using ACL "cutthrough"
+processing "accept"
+check control = cutthrough_delivery
+check verify = recipient
+domain.com in "test.ex : *.test.ex"? no (end of list)
+domain.com in "! +local_domains"? yes (end of list)
+expanding: $local_part
+ result: userx
+domain.com in "*"? yes (matched "*")
+----------- end verify ------------
+accept: condition test succeeded in ACL "cutthrough"
+----------- start cutthrough setup ------------
+domain.com in "test.ex : *.test.ex"? no (end of list)
+domain.com in "! +local_domains"? yes (end of list)
+expanding: $local_part
+ result: userx
+domain.com in "*"? yes (matched "*")
+Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ... connected
+expanding: $primary_hostname
+ result: myhost.test.ex
+ SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+127.0.0.1 in hosts_avoid_esmtp? no (option unset)
+ SMTP>> EHLO myhost.test.ex
+ SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
+ 250-SIZE 52428800
+ 250-8BITMIME
+ 250-PIPELINING
+ 250-STARTTLS
+ 250 HELP
+expanding: $address_data
+ result: userx
+expanding: usery
+ result: usery
+condition: eq {$address_data}{usery}
+ result: false
+expanding: *
+ result: *
+skipping: result is not used
+expanding: :
+ result: :
+expanding: ${if eq {$address_data}{usery}{*}{:}}
+ result: :
+127.0.0.1 in hosts_avoid_tls? no (end of list)
+expanding: $address_data
+ result: userx
+expanding: userz
+ result: userz
+condition: eq {$address_data}{userz}
+ result: false
+expanding: *
+ result: *
+skipping: result is not used
+expanding: :
+ result: :
+expanding: ${if eq {$address_data}{userz}{*}{:}}
+ result: :
+127.0.0.1 in hosts_verify_avoid_tls? no (end of list)
+ SMTP>> STARTTLS
+ SMTP<< 220 TLS go ahead
+ SMTP>> EHLO myhost.test.ex
+ SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
+ 250-SIZE 52428800
+ 250-8BITMIME
+ 250-PIPELINING
+ 250 HELP
+ SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
+ SMTP<< 250 OK
+ SMTP>> RCPT TO:<userx@domain.com>
+ SMTP<< 250 Accepted
+----------- end cutthrough setup ------------
+processing "accept"
+accept: condition test succeeded in inline ACL
+ SMTP>> DATA
+ SMTP<< 354 Enter message, ending with "." on a line by itself
+expanding: ${tod_full}
+ result: Tue, 2 Mar 1999 09:44:33 +0000
+condition: def:sender_rcvhost
+ result: false
+expanding: from $sender_rcvhost
+
+ result: from
+
+skipping: result is not used
+condition: def:sender_ident
+ result: true
+expanding: $sender_ident
+ result: CALLER
+expanding: from ${quote_local_part:$sender_ident}
+ result: from CALLER
+condition: def:sender_helo_name
+ result: true
+expanding: (helo=$sender_helo_name)
+
+ result: (helo=myhost.test.ex)
+
+expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+ }}
+ result: from CALLER (helo=myhost.test.ex)
+
+condition: def:received_protocol
+ result: true
+expanding: with $received_protocol
+ result: with local-esmtp
+condition: def:sender_address
+ result: true
+expanding: (envelope-from <$sender_address>)
+
+ result: (envelope-from <CALLER@myhost.test.ex>)
+
+condition: def:received_for
+ result: true
+expanding:
+ for $received_for
+ result:
+ for userx@domain.com
+PDKIM <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+expanding: ${tod_full}
+ result: Tue, 2 Mar 1999 09:44:33 +0000
+ SMTP>> .
+ SMTP<< 250 OK id=10HmaX-0005vi-00
+LOG: MAIN
+ >> userx@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] X=TLS1.x:xxxxRSA_AES_256_CBC_SHAnnn:256 C="250 OK id=10HmaX-0005vi-00"
+ SMTP>> QUIT
+----------- cutthrough shutdown (delivered) ------------
+LOG: MAIN
+ <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+LOG: MAIN
+ Completed
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER closed by QUIT
+>>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
+Exim version x.yz ....
+configuration file is TESTSUITE/test-config
+admin user
+ in hosts_connection_nolog? no (option unset)
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER
+expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+ result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+ in pipelining_advertise_hosts? yes (matched "*")
+ in tls_advertise_hosts? yes (matched "*")
+expanding: SERVER
+ result: SERVER
+expanding: server
+ result: server
+condition: eq {SERVER}{server}
+ result: false
+expanding: queue
+ result: queue
+skipping: result is not used
+expanding: cutthrough
+ result: cutthrough
+expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
+ result: cutthrough
+using ACL "cutthrough"
+processing "accept"
+check control = cutthrough_delivery
+check verify = recipient
+domain.com in "test.ex : *.test.ex"? no (end of list)
+domain.com in "! +local_domains"? yes (end of list)
+expanding: $local_part
+ result: usery
+domain.com in "*"? yes (matched "*")
+----------- end verify ------------
+accept: condition test succeeded in ACL "cutthrough"
+----------- start cutthrough setup ------------
+domain.com in "test.ex : *.test.ex"? no (end of list)
+domain.com in "! +local_domains"? yes (end of list)
+expanding: $local_part
+ result: usery
+domain.com in "*"? yes (matched "*")
+Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ... connected
+expanding: $primary_hostname
+ result: myhost.test.ex
+ SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+127.0.0.1 in hosts_avoid_esmtp? no (option unset)
+ SMTP>> EHLO myhost.test.ex
+ SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
+ 250-SIZE 52428800
+ 250-8BITMIME
+ 250-PIPELINING
+ 250-STARTTLS
+ 250 HELP
+expanding: $address_data
+ result: usery
+expanding: usery
+ result: usery
+condition: eq {$address_data}{usery}
+ result: true
+expanding: *
+ result: *
+expanding: :
+ result: :
+skipping: result is not used
+expanding: ${if eq {$address_data}{usery}{*}{:}}
+ result: *
+127.0.0.1 in hosts_avoid_tls? yes (matched "*")
+ SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
+ SMTP<< 250 OK
+ SMTP>> RCPT TO:<usery@domain.com>
+ SMTP<< 250 Accepted
+----------- end cutthrough setup ------------
+processing "accept"
+accept: condition test succeeded in inline ACL
+ SMTP>> DATA
+ SMTP<< 354 Enter message, ending with "." on a line by itself
+expanding: ${tod_full}
+ result: Tue, 2 Mar 1999 09:44:33 +0000
+condition: def:sender_rcvhost
+ result: false
+expanding: from $sender_rcvhost
+
+ result: from
+
+skipping: result is not used
+condition: def:sender_ident
+ result: true
+expanding: $sender_ident
+ result: CALLER
+expanding: from ${quote_local_part:$sender_ident}
+ result: from CALLER
+condition: def:sender_helo_name
+ result: true
+expanding: (helo=$sender_helo_name)
+
+ result: (helo=myhost.test.ex)
+
+expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+ }}
+ result: from CALLER (helo=myhost.test.ex)
+
+condition: def:received_protocol
+ result: true
+expanding: with $received_protocol
+ result: with local-esmtp
+condition: def:sender_address
+ result: true
+expanding: (envelope-from <$sender_address>)
+
+ result: (envelope-from <CALLER@myhost.test.ex>)
+
+condition: def:received_for
+ result: true
+expanding:
+ for $received_for
+ result:
+ for usery@domain.com
+PDKIM <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+expanding: ${tod_full}
+ result: Tue, 2 Mar 1999 09:44:33 +0000
+ SMTP>> .
+ SMTP<< 250 OK id=10HmaZ-0005vi-00
+LOG: MAIN
+ >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmaZ-0005vi-00"
+ SMTP>> QUIT
+----------- cutthrough shutdown (delivered) ------------
+LOG: MAIN
+ <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+LOG: MAIN
+ Completed
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER closed by QUIT
+>>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
+Exim version x.yz ....
+configuration file is TESTSUITE/test-config
+admin user
+ in hosts_connection_nolog? no (option unset)
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER
+expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+ result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+ in pipelining_advertise_hosts? yes (matched "*")
+ in tls_advertise_hosts? yes (matched "*")
+expanding: SERVER
+ result: SERVER
+expanding: server
+ result: server
+condition: eq {SERVER}{server}
+ result: false
+expanding: queue
+ result: queue
+skipping: result is not used
+expanding: cutthrough
+ result: cutthrough
+expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
+ result: cutthrough
+using ACL "cutthrough"
+processing "accept"
+check control = cutthrough_delivery
+check verify = recipient
+domain.com in "test.ex : *.test.ex"? no (end of list)
+domain.com in "! +local_domains"? yes (end of list)
+expanding: $local_part
+ result: usery
+domain.com in "*"? yes (matched "*")
+----------- end verify ------------
+accept: condition test succeeded in ACL "cutthrough"
+----------- start cutthrough setup ------------
+domain.com in "test.ex : *.test.ex"? no (end of list)
+domain.com in "! +local_domains"? yes (end of list)
+expanding: $local_part
+ result: usery
+domain.com in "*"? yes (matched "*")
+Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ... connected
+expanding: $primary_hostname
+ result: myhost.test.ex
+ SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+127.0.0.1 in hosts_avoid_esmtp? no (option unset)
+ SMTP>> EHLO myhost.test.ex
+ SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
+ 250-SIZE 52428800
+ 250-8BITMIME
+ 250-PIPELINING
+ 250-STARTTLS
+ 250 HELP
+expanding: $address_data
+ result: usery
+expanding: usery
+ result: usery
+condition: eq {$address_data}{usery}
+ result: true
+expanding: *
+ result: *
+expanding: :
+ result: :
+skipping: result is not used
+expanding: ${if eq {$address_data}{usery}{*}{:}}
+ result: *
+127.0.0.1 in hosts_avoid_tls? yes (matched "*")
+ SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
+ SMTP<< 250 OK
+ SMTP>> RCPT TO:<usery@domain.com>
+ SMTP<< 250 Accepted
+----------- end cutthrough setup ------------
+processing "accept"
+accept: condition test succeeded in inline ACL
+ SMTP>> DATA
+ SMTP<< 354 Enter message, ending with "." on a line by itself
+expanding: ${tod_full}
+ result: Tue, 2 Mar 1999 09:44:33 +0000
+condition: def:sender_rcvhost
+ result: false
+expanding: from $sender_rcvhost
+
+ result: from
+
+skipping: result is not used
+condition: def:sender_ident
+ result: true
+expanding: $sender_ident
+ result: CALLER
+expanding: from ${quote_local_part:$sender_ident}
+ result: from CALLER
+condition: def:sender_helo_name
+ result: true
+expanding: (helo=$sender_helo_name)
+
+ result: (helo=myhost.test.ex)
+
+expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+ }}
+ result: from CALLER (helo=myhost.test.ex)
+
+condition: def:received_protocol
+ result: true
+expanding: with $received_protocol
+ result: with local-esmtp
+condition: def:sender_address
+ result: true
+expanding: (envelope-from <$sender_address>)
+
+ result: (envelope-from <CALLER@myhost.test.ex>)
+
+condition: def:received_for
+ result: true
+expanding:
+ for $received_for
+ result:
+ for usery@domain.com
+PDKIM <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+expanding: ${tod_full}
+ result: Tue, 2 Mar 1999 09:44:33 +0000
+ SMTP>> .
+ SMTP<< 250 OK id=10HmbB-0005vi-00
+LOG: MAIN
+ >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbB-0005vi-00"
+ SMTP>> QUIT
+----------- cutthrough shutdown (delivered) ------------
+LOG: MAIN
+ <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
+LOG: MAIN
+ Completed
+LOG: smtp_connection MAIN
+ SMTP connection from CALLER closed by QUIT
+>>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
+
+******** SERVER ********
diff --git a/test/stdout/0002 b/test/stdout/0002
index c009fbd12..2acfb63ea 100644
--- a/test/stdout/0002
+++ b/test/stdout/0002
@@ -220,6 +220,12 @@
> md5: NO
> mask: NO
>
+> # Number suffixes in conditions
+> 1k: y
+> 1K: y
+> 1M: y
+> 1G: y
+>
> # Numeric overflow
> # >32b should work, >64b not
>
diff --git a/test/stdout/0227 b/test/stdout/0227
index 3682f296c..46057c824 100644
--- a/test/stdout/0227
+++ b/test/stdout/0227
@@ -96,7 +96,7 @@
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -108,7 +108,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -120,7 +120,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -132,7 +132,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
550 Error for <>
@@ -142,7 +142,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
550-Multiline error for <>
@@ -153,7 +153,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -165,7 +165,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -178,7 +178,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -190,7 +190,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -202,7 +202,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -220,7 +220,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
diff --git a/test/stdout/0376 b/test/stdout/0376
index 342a94ed4..a0af2cb92 100644
--- a/test/stdout/0376
+++ b/test/stdout/0376
@@ -153,7 +153,7 @@
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -165,7 +165,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -177,7 +177,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
550 REJECT MAIL FROM
@@ -187,7 +187,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -205,7 +205,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -223,7 +223,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -235,7 +235,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -247,7 +247,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -271,7 +271,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -289,7 +289,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -301,7 +301,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -319,7 +319,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -331,7 +331,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -349,7 +349,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -359,7 +359,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -377,7 +377,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<somesender@a.domain>
250 OK
@@ -389,7 +389,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -399,7 +399,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -419,7 +419,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<postmaster@myhost.test.ex>
250 OK
diff --git a/test/stdout/0398 b/test/stdout/0398
index f65d493b4..882015d49 100644
--- a/test/stdout/0398
+++ b/test/stdout/0398
@@ -27,7 +27,7 @@
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO mail.test.ex
+EHLO mail.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -39,7 +39,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO mail.test.ex
+EHLO mail.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -51,7 +51,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO mail.test.ex
+EHLO mail.test.ex
250 OK
MAIL FROM:<>
250 OK
diff --git a/test/stdout/0413 b/test/stdout/0413
index 18da4529a..5c320fc94 100644
--- a/test/stdout/0413
+++ b/test/stdout/0413
@@ -10,7 +10,7 @@
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO mail.test.ex
+EHLO mail.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -22,7 +22,7 @@ Expected EOF read from client
Listening on port 1224 ...
Connection request from [ip4.ip4.ip4.ip4]
220 Server ready
-HELO mail.test.ex
+EHLO mail.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -34,7 +34,7 @@ Expected EOF read from client
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO mail.test.ex
+EHLO mail.test.ex
250 OK
MAIL FROM:<>
250 OK
diff --git a/test/stdout/0432 b/test/stdout/0432
index d6ac41709..e36d048a3 100644
--- a/test/stdout/0432
+++ b/test/stdout/0432
@@ -51,7 +51,7 @@
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -63,7 +63,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -75,7 +75,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
*sleep 2
Expected EOF read from client
End of script
diff --git a/test/stdout/0462 b/test/stdout/0462
index 004a788af..585e2e08f 100644
--- a/test/stdout/0462
+++ b/test/stdout/0462
@@ -31,7 +31,7 @@
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -49,7 +49,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
@@ -61,7 +61,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 OK
MAIL FROM:<>
250 OK
diff --git a/test/stdout/0473 b/test/stdout/0473
index 00112d38d..9fff9a601 100644
--- a/test/stdout/0473
+++ b/test/stdout/0473
@@ -123,7 +123,7 @@
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO the.local.host.name
+EHLO the.local.host.name
250 OK
MAIL FROM:<s1@test.ex>
250 OK
@@ -135,7 +135,7 @@ Expected EOF read from client
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO the.local.host.name
+EHLO the.local.host.name
250 OK
MAIL FROM:<s2@test.ex>
250 OK
@@ -147,7 +147,7 @@ Expected EOF read from client
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO the.local.host.name
+EHLO the.local.host.name
250 OK
MAIL FROM:<s3@other.ex>
550 NOTOK
@@ -157,7 +157,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO the.local.host.name
+EHLO the.local.host.name
250 OK
MAIL FROM:<>
250 OK
@@ -169,7 +169,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO the.local.host.name
+EHLO the.local.host.name
250 OK
MAIL FROM:<postmaster@the.local.host.name>
250 OK
@@ -181,7 +181,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 server ready
-HELO the.local.host.name
+EHLO the.local.host.name
250 OK
MAIL FROM:<x9@test.ex>
250 OK
@@ -193,7 +193,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 server ready
-HELO the.local.host.name
+EHLO the.local.host.name
250 OK
MAIL FROM:<>
250 OK
@@ -205,7 +205,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO the.local.host.name
+EHLO the.local.host.name
250 OK
MAIL FROM:<postmaster@the.local.host.name>
250 OK
@@ -217,7 +217,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Server ready
-HELO the.local.host.name
+EHLO the.local.host.name
250 OK
MAIL FROM:<>
250 OK
diff --git a/test/stdout/0518 b/test/stdout/0518
index e94f8aa09..478b304b4 100644
--- a/test/stdout/0518
+++ b/test/stdout/0518
@@ -14,7 +14,7 @@
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Welcome
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 Hi
MAIL FROM:<>
250 OK
@@ -26,7 +26,7 @@ Expected EOF read from client
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Welcome
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 Hi
MAIL FROM:<>
250 OK
@@ -38,7 +38,7 @@ Expected EOF read from client
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Welcome
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 Hi
MAIL FROM:<>
250 OK
@@ -50,7 +50,7 @@ Expected EOF read from client
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Welcome
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 Hi
MAIL FROM:<>
250 OK
@@ -62,7 +62,7 @@ Expected EOF read from client
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Welcome
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 Hi
MAIL FROM:<>
250 OK
@@ -74,7 +74,7 @@ Expected EOF read from client
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Welcome
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 Hi
MAIL FROM:<>
250 OK
@@ -86,7 +86,7 @@ Expected EOF read from client
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Welcome
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 Hi
MAIL FROM:<>
250 OK
@@ -98,7 +98,7 @@ Expected EOF read from client
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Welcome
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 Hi
MAIL FROM:<>
250 OK
diff --git a/test/stdout/0527 b/test/stdout/0527
index 180c02a10..98cca1761 100644
--- a/test/stdout/0527
+++ b/test/stdout/0527
@@ -1,22 +1,4 @@
220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
250 OK
-550-Verification failed for <unknown@x.x.x.x>
-550-Called: 127.0.0.1
-550-Sent: RCPT TO:<unknown@x.x.x.x>
-550-Response: 550 unrouteable address
-550 Sender verify failed
+451 Could not complete sender verify callout
221 myhost.test.ex closing connection
-
-******** SERVER ********
-Listening on port 1224 ...
-Connection request from [127.0.0.1]
-220 Welcome
-HELO myhost.test.ex
-250 Hi
-MAIL FROM:<>
-250 OK
-RCPT TO:<unknown@x.x.x.x>
-550 unrouteable address
-QUIT
-221 Bye
-End of script
diff --git a/test/stdout/0538 b/test/stdout/0538
index c7bd59226..7a1905817 100644
--- a/test/stdout/0538
+++ b/test/stdout/0538
@@ -29,7 +29,7 @@
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Welcome
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 Hi
MAIL FROM:<>
550 I'm misconfigured
@@ -39,7 +39,7 @@ End of script
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Welcome
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 Hi
MAIL FROM:<userx@ok.example>
250 OK
diff --git a/test/stdout/0540 b/test/stdout/0540
index 935f990f1..4d788a5e9 100644
--- a/test/stdout/0540
+++ b/test/stdout/0540
@@ -10,7 +10,7 @@
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Welcome
-HELO localhost
+EHLO localhost
250 Hi
MAIL FROM:<>
250 OK
@@ -22,7 +22,7 @@ Expected EOF read from client
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Welcome
-HELO aname
+EHLO aname
250 Hi
MAIL FROM:<>
250 OK
@@ -34,7 +34,7 @@ Expected EOF read from client
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Welcome
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 Hi
MAIL FROM:<>
250 OK
@@ -46,7 +46,7 @@ Expected EOF read from client
Listening on port 1224 ...
Connection request from [127.0.0.1]
220 Welcome
-HELO myhost.test.ex
+EHLO myhost.test.ex
250 Hi
MAIL FROM:<>
250 OK
diff --git a/test/stdout/0566 b/test/stdout/0566
new file mode 100644
index 000000000..cb221f611
--- /dev/null
+++ b/test/stdout/0566
@@ -0,0 +1,90 @@
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at Testing
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250 HELP
+250 OK
+250 Accepted
+221 myhost.test.ex closing connection
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at Testing
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250 HELP
+250 OK
+250 Accepted
+221 myhost.test.ex closing connection
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at Testing
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250 HELP
+250 OK
+250 Accepted
+221 myhost.test.ex closing connection
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at Testing
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250 HELP
+250 OK
+250 Accepted
+221 myhost.test.ex closing connection
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at Testing
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250 HELP
+250 OK
+250 Accepted
+221 myhost.test.ex closing connection
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at Testing
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250 HELP
+250 OK
+250 Accepted
+221 myhost.test.ex closing connection
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at Testing
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250 HELP
+250 OK
+250 Accepted
+221 myhost.test.ex closing connection
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at Testing
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250 HELP
+250 OK
+250 Accepted
+221 myhost.test.ex closing connection
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at Testing
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250 HELP
+250 OK
+550 SIZE value too big
+221 myhost.test.ex closing connection
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at Testing
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250 HELP
+250 OK
+550 SIZE value too big
+221 myhost.test.ex closing connection
diff --git a/test/stdout/3450 b/test/stdout/3450
index 3c2ee8a31..1bd2e21d2 100644
--- a/test/stdout/3450
+++ b/test/stdout/3450
@@ -62,7 +62,7 @@ SSL info: SSLv3 flush data
SSL info: SSLv3 read finished A
SSL info: SSL negotiation finished successfully
SSL info: SSL negotiation finished successfully
-SSL connection using DHE-RSA-AES256-SHA
+SSL connection using AES256-SHA
Succeeded in starting TLS
>>> ehlo foobar
??? 250-
diff --git a/test/stdout/3454 b/test/stdout/3454
index 1deec37c5..ae2eab337 100644
--- a/test/stdout/3454
+++ b/test/stdout/3454
@@ -34,7 +34,7 @@ SSL info: SSLv3 flush data
SSL info: SSLv3 read finished A
SSL info: SSL negotiation finished successfully
SSL info: SSL negotiation finished successfully
-SSL connection using DHE-RSA-AES256-SHA
+SSL connection using AES256-SHA
Succeeded in starting TLS
>>> auth plain AHVzZXJ4AHNlY3JldA==
??? 503
@@ -76,7 +76,7 @@ SSL info: SSLv3 flush data
SSL info: SSLv3 read finished A
SSL info: SSL negotiation finished successfully
SSL info: SSL negotiation finished successfully
-SSL connection using DHE-RSA-AES256-SHA
+SSL connection using AES256-SHA
Succeeded in starting TLS
>>> ehlo foobar
??? 250-myhost
diff --git a/test/stdout/5400 b/test/stdout/5400
new file mode 100644
index 000000000..74c2d2358
--- /dev/null
+++ b/test/stdout/5400
@@ -0,0 +1,125 @@
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at myhost.test.ex
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250 HELP
+250 OK
+250 Accepted
+354 Enter message, ending with "." on a line by itself
+250 OK id=10HmaX-0005vi-00
+221 myhost.test.ex closing connection
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at myhost.test.ex
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250 HELP
+250 OK
+250 Accepted
+354 Enter message, ending with "." on a line by itself
+250 OK id=10HmaY-0005vi-00
+221 myhost.test.ex closing connection
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at myhost.test.ex
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250 HELP
+250 OK
+250 Accepted
+250 Accepted
+354 Enter message, ending with "." on a line by itself
+250 OK id=10HmaZ-0005vi-00
+221 myhost.test.ex closing connection
+
+******** SERVER ********
+Listening on port 1224 ...
+Connection request from [ip4.ip4.ip4.ip4]
+220 ESMTP
+EHLO myhost.test.ex
+250 OK
+MAIL FROM:<CALLER@myhost.test.ex>
+250 Sender OK
+RCPT TO:<userx@domain.com>
+250 Recipient OK
+DATA
+354 Send data
+Received: from CALLER (helo=myhost.test.ex)
+ by myhost.test.ex with local-esmtp (Exim x.yz)
+ (envelope-from <CALLER@myhost.test.ex>)
+ id 10HmaX-0005vi-00
+ for userx@domain.com; Tue, 2 Mar 1999 09:44:33 +0000
+Message-Id: <E10HmaX-0005vi-00@myhost.test.ex>
+From: CALLER_NAME <CALLER@myhost.test.ex>
+Date: Tue, 2 Mar 1999 09:44:33 +0000
+
+.
+250 OK
+QUIT
+250 OK
+End of script
+Listening on port 1224 ...
+Connection request from [ip4.ip4.ip4.ip4]
+220 SMTP only spoken here
+EHLO myhost.test.ex
+550 Not here, mate
+HELO myhost.test.ex
+250 OK
+MAIL FROM:<CALLER@myhost.test.ex>
+250 Sender OK
+RCPT TO:<userz@domain.com>
+250 Recipient OK
+DATA
+354 Send data
+Received: from CALLER (helo=myhost.test.ex)
+ by myhost.test.ex with local-esmtp (Exim x.yz)
+ (envelope-from <CALLER@myhost.test.ex>)
+ id 10HmaY-0005vi-00
+ for userz@domain.com; Tue, 2 Mar 1999 09:44:33 +0000
+Message-Id: <E10HmaY-0005vi-00@myhost.test.ex>
+From: CALLER_NAME <CALLER@myhost.test.ex>
+Date: Tue, 2 Mar 1999 09:44:33 +0000
+
+.
+250 OK
+QUIT
+250 OK
+End of script
+Listening on port 1224 ...
+Connection request from [ip4.ip4.ip4.ip4]
+220 ESMTP
+EHLO myhost.test.ex
+250 OK
+MAIL FROM:<CALLER@myhost.test.ex>
+250 Sender OK
+RCPT TO:<usery@domain.com>
+250 Recipient OK
+QUIT
+Expected EOF read from client
+Listening on port 1224 ...
+Connection request from [ip4.ip4.ip4.ip4]
+220 ESMTP
+EHLO myhost.test.ex
+250 OK
+MAIL FROM:<CALLER@myhost.test.ex>
+250 Sender OK
+RCPT TO:<usery@domain.com>
+250 Recipient OK
+RCPT TO:<userx@domain.com>
+250 Recipient OK
+DATA
+354 Send data
+Received: from CALLER (helo=myhost.test.ex)
+ by myhost.test.ex with local-esmtp (Exim x.yz)
+ (envelope-from <CALLER@myhost.test.ex>)
+ id 10HmaZ-0005vi-00; Tue, 2 Mar 1999 09:44:33 +0000
+Message-Id: <E10HmaZ-0005vi-00@myhost.test.ex>
+From: CALLER_NAME <CALLER@myhost.test.ex>
+Date: Tue, 2 Mar 1999 09:44:33 +0000
+
+.
+250 OK
+QUIT
+250 OK
+End of script
diff --git a/test/stdout/5401 b/test/stdout/5401
new file mode 100644
index 000000000..1ceb0bffb
--- /dev/null
+++ b/test/stdout/5401
@@ -0,0 +1,38 @@
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at myhost.test.ex
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250 HELP
+250 OK
+250 Accepted
+354 Enter message, ending with "." on a line by itself
+250 OK id=10HmaX-0005vi-00
+221 myhost.test.ex closing connection
+
+******** SERVER ********
+Listening on port 1224 ...
+Connection request from [ip4.ip4.ip4.ip4]
+220 ESMTP
+EHLO myhost.test.ex
+250 OK
+MAIL FROM:<CALLER@myhost.test.ex>
+250 Sender OK
+RCPT TO:<userx@domain.com>
+250 Recipient OK
+DATA
+354 Send data
+Received: from CALLER (helo=myhost.test.ex)
+ by myhost.test.ex with local-esmtp (Exim x.yz)
+ (envelope-from <CALLER@myhost.test.ex>)
+ id 10HmaX-0005vi-00
+ for userx@domain.com; Tue, 2 Mar 1999 09:44:33 +0000
+Message-Id: <E10HmaX-0005vi-00@myhost.test.ex>
+From: CALLER_NAME <CALLER@myhost.test.ex>
+Date: Tue, 2 Mar 1999 09:44:33 +0000
+
+.
+250 OK
+QUIT
+250 OK
+End of script
diff --git a/test/stdout/5402 b/test/stdout/5402
new file mode 100644
index 000000000..252c82917
--- /dev/null
+++ b/test/stdout/5402
@@ -0,0 +1,24 @@
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at myhost.test.ex
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250-STARTTLS
+250 HELP
+250 OK
+250 Accepted
+354 Enter message, ending with "." on a line by itself
+250 OK id=10HmaY-0005vi-00
+221 myhost.test.ex closing connection
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at myhost.test.ex
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250-STARTTLS
+250 HELP
+250 OK
+250 Accepted
+354 Enter message, ending with "." on a line by itself
+250 OK id=10HmbA-0005vi-00
+221 myhost.test.ex closing connection
diff --git a/test/stdout/5410 b/test/stdout/5410
new file mode 100644
index 000000000..edf01f8ba
--- /dev/null
+++ b/test/stdout/5410
@@ -0,0 +1,36 @@
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at myhost.test.ex
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250-STARTTLS
+250 HELP
+250 OK
+250 Accepted
+354 Enter message, ending with "." on a line by itself
+250 OK id=10HmaY-0005vi-00
+221 myhost.test.ex closing connection
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at myhost.test.ex
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250-STARTTLS
+250 HELP
+250 OK
+250 Accepted
+354 Enter message, ending with "." on a line by itself
+250 OK id=10HmbA-0005vi-00
+221 myhost.test.ex closing connection
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at myhost.test.ex
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250-STARTTLS
+250 HELP
+250 OK
+250 Accepted
+354 Enter message, ending with "." on a line by itself
+250 OK id=10HmbC-0005vi-00
+221 myhost.test.ex closing connection
diff --git a/test/stdout/5420 b/test/stdout/5420
new file mode 100644
index 000000000..edf01f8ba
--- /dev/null
+++ b/test/stdout/5420
@@ -0,0 +1,36 @@
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at myhost.test.ex
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250-STARTTLS
+250 HELP
+250 OK
+250 Accepted
+354 Enter message, ending with "." on a line by itself
+250 OK id=10HmaY-0005vi-00
+221 myhost.test.ex closing connection
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at myhost.test.ex
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250-STARTTLS
+250 HELP
+250 OK
+250 Accepted
+354 Enter message, ending with "." on a line by itself
+250 OK id=10HmbA-0005vi-00
+221 myhost.test.ex closing connection
+220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250-myhost.test.ex Hello CALLER at myhost.test.ex
+250-SIZE 52428800
+250-8BITMIME
+250-PIPELINING
+250-STARTTLS
+250 HELP
+250 OK
+250 Accepted
+354 Enter message, ending with "." on a line by itself
+250 OK id=10HmbC-0005vi-00
+221 myhost.test.ex closing connection