X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/528fde2aff25fbe284332ad2ec4b8cb5fc8c7859..c26e27d5b81ed5640c00ee87f1d4287fb066dc12:/test/scripts/5400-cutthrough/5400?ds=sidebyside diff --git a/test/scripts/5400-cutthrough/5400 b/test/scripts/5400-cutthrough/5400 index 4aa332b86..10406c255 100644 --- a/test/scripts/5400-cutthrough/5400 +++ b/test/scripts/5400-cutthrough/5400 @@ -1,8 +1,36 @@ # cutthrough_delivery basic operation need_ipv4 +munge loopback # 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 -bs +EHLO myhost.test.ex +MAIL FROM: +RCPT TO: +DATA + +. +QUIT +**** +# cutthrough_delivery into HELO-only server +server PORT_S +220 SMTP only spoken here +EHLO +550 Not here, mate HELO 250 OK MAIL FROM: @@ -16,25 +44,93 @@ DATA QUIT 250 OK **** -exim -d-all+acl+transport -bs +exim -bs +EHLO myhost.test.ex +MAIL FROM: +RCPT TO: +DATA + +. +QUIT +**** +# cutthrough for 2 recipients in one domain +server PORT_S +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 -bs EHLO myhost.test.ex -MAIL FROM: +MAIL FROM: +RCPT TO: RCPT TO: DATA . QUIT **** -# cutthrough cancelled by multiple recipients -server PORT_S 2 +# +# +# +# +# +# cutthrough_delivery basic operation, again +server PORT_S 220 ESMTP -HELO +EHLO 250 OK MAIL FROM: 250 Sender OK RCPT TO: 250 Recipient OK +DATA +354 Send data +. +250 OK QUIT +250 OK +**** +exim -bs +EHLO myhost.test.ex +MAIL FROM: +RCPT TO: +DATA +X-hdr-rtr: qqq +X-hdr-tpt: zzz + +body +. +QUIT +**** +# +# +# +# +# cutthrough for 2 recipients in one domain +# first one denied +# so we get a 2nd conn with the traditional delivery for the second +server PORT_S 2 +220 ESMTP +EHLO +250 OK +MAIL FROM: +250 Sender OK +RCPT TO: +550 Not that one +QUIT +250 OK *eof 220 ESMTP EHLO @@ -42,7 +138,283 @@ EHLO MAIL FROM: 250 Sender OK RCPT TO: -250 Recipient OK +250 ok rcpt-1 +DATA +354 Send data +. +250 OK +QUIT +250 OK +**** +# +# Foregound delivery needed else the following subtest reception logging happens before this ones +# delivery process logs and terminates; the interlock is only on the parent exim terminating. +exim -bs -odf +EHLO myhost.test.ex +MAIL FROM: +RCPT TO: +RCPT TO: +DATA + +. +QUIT +**** +# +# +# +# +# cutthrough for 2 recipients in one domain +# second one denied +# so we get a 2nd conn with the traditional delivery of the 1st +server PORT_S 2 +220 ESMTP +EHLO +250 OK +MAIL FROM: +250 Sender OK +RCPT TO: +250 first recipient ok +RCPT TO: +550 Not that one +QUIT +250 OK +*eof +220 ESMTP +EHLO +250 OK +MAIL FROM: +250 Sender OK +RCPT TO: +250 ok rcpt-1 +DATA +354 Send data +. +250 OK +QUIT +250 OK +**** +exim -bs -odf +EHLO myhost.test.ex +MAIL FROM: +RCPT TO: +RCPT TO: +DATA + +. +QUIT +**** +# +# +# +# +# +# cutthrough for 2 recipients in one domain +# second one uses a different transport +# so we get a 2nd conn with 2nd rcpt, doing the fake verify +# then 3rd & 4th conns with the traditional deliveries on the different transports +server PORT_S 4 +220 ESMTP +EHLO +250 OK +MAIL FROM: +250 Sender OK +RCPT TO: +250 first recipient ok +QUIT +250 OK +*eof +220 ESMTP +EHLO +250 OK +MAIL FROM: +250 Sender OK +RCPT TO: +250 second recipient ok +QUIT +250 OK +*eof +220 ESMTP +EHLO +250 OK +MAIL FROM: +250 Sender OK +RCPT TO: +250 ok rcpt-1 +DATA +354 Send data +. +250 OK +QUIT +250 OK +*eof +220 ESMTP +EHLO +250 OK +MAIL FROM: +250 Sender OK +RCPT TO: +250 ok rcpt-2 +DATA +354 Send data +. +250 OK +QUIT +250 OK +**** +exim -bs -odf +EHLO myhost.test.ex +MAIL FROM: +RCPT TO: +RCPT TO: +DATA + +. +QUIT +**** +# +# +# +# +# +# cutthrough for 2 recipients in different domains, handled by the same tpt & host +server PORT_S +220 ESMTP +EHLO +250 OK +MAIL FROM: +250 Sender OK +RCPT TO: +250 ok rcpt-1 +RCPT TO: +250 ok rcpt-2 +DATA +354 Send data +. +250 OK +QUIT +250 OK +**** +exim -bs +EHLO myhost.test.ex +MAIL FROM: +RCPT TO: +RCPT TO: +DATA + +. +QUIT +**** +# +# +# +# +# +# cutthrough for 2 recipients in different domains, handled by the same tpt but different hosts +# so we get a 2nd conn with 2nd rcpt, doing the fake verify +# then 3rd & 4th conns with the traditional deliveries on the different transports +server PORT_S 4 +220 ESMTP +EHLO +250 OK +MAIL FROM: +250 Sender OK +RCPT TO: +250 first recipient ok +QUIT +250 OK +*eof +220 ESMTP +EHLO +250 OK +MAIL FROM: +250 Sender OK +RCPT TO: +250 second recipient ok +QUIT +250 OK +*eof +220 ESMTP +EHLO +250 OK +MAIL FROM: +250 Sender OK +RCPT TO: +250 ok rcpt-1 +DATA +354 Send data +. +250 OK +QUIT +250 OK +*eof +220 ESMTP +EHLO +250 OK +MAIL FROM: +250 Sender OK +RCPT TO: +250 ok rcpt-2 +DATA +354 Send data +. +250 OK +QUIT +250 OK +**** +exim -bs -odf +EHLO myhost.test.ex +MAIL FROM: +RCPT TO: +RCPT TO: +DATA + +. +QUIT +**** +# +# +# +# +# +# cutthrough for 2 recipients in different domains, handled by the same tpt & host +# but via a dnslookup router (all previous were manualroute) +server PORT_S +220 ESMTP +EHLO +250 OK +MAIL FROM: +250 Sender OK +RCPT TO: +250 ok rcpt-1 +RCPT TO: +250 ok rcpt-2 +DATA +354 Send data +. +250 OK +QUIT +250 OK +**** +exim -bs -odf +EHLO myhost.test.ex +MAIL FROM: +RCPT TO: +RCPT TO: +DATA + +. +QUIT +**** +# +# +# +# data having line with (logical, doubled on wire) single dot +server PORT_S +220 ESMTP +EHLO +250 OK +MAIL FROM: +250 Sender OK RCPT TO: 250 Recipient OK DATA @@ -52,13 +424,24 @@ DATA QUIT 250 OK **** -exim -d-all+acl+transport -bs +exim -bs -odf EHLO myhost.test.ex -MAIL FROM: +MAIL FROM: RCPT TO: -RCPT TO: DATA +Subject: singledot test + +This data has a line with a single dot... next: +.. +and this is the line right after. +Next we have a line with a leading dot: +..test +and this is the next line. . QUIT **** +# +# +sortlog +# End