Cutthrough: Fix bug with dot-only line
[exim.git] / test / scripts / 5400-cutthrough / 5400
CommitLineData
528fde2a
JH
1# cutthrough_delivery basic operation
2need_ipv4
ac9a0d91 3munge loopback
528fde2a
JH
4#
5server PORT_S
6220 ESMTP
cb9d95ae 7EHLO
528fde2a
JH
8250 OK
9MAIL FROM:
10250 Sender OK
11RCPT TO:
12250 Recipient OK
13DATA
14354 Send data
15.
16250 OK
17QUIT
18250 OK
19****
5032d1cf 20exim -bs
528fde2a 21EHLO myhost.test.ex
9d6bb16d 22MAIL FROM:<CALLER@myhost.test.ex>
528fde2a
JH
23RCPT TO:<userx@domain.com>
24DATA
25
24f66b4d
JH
26.
27QUIT
28****
29# cutthrough_delivery into HELO-only server
24f66b4d
JH
30server PORT_S
31220 SMTP only spoken here
32EHLO
33550 Not here, mate
34HELO
35250 OK
36MAIL FROM:
37250 Sender OK
38RCPT TO:
39250 Recipient OK
40DATA
41354 Send data
42.
43250 OK
44QUIT
45250 OK
46****
5032d1cf 47exim -bs
24f66b4d 48EHLO myhost.test.ex
9d6bb16d 49MAIL FROM:<CALLER@myhost.test.ex>
24f66b4d
JH
50RCPT TO:<userz@domain.com>
51DATA
52
528fde2a
JH
53.
54QUIT
55****
5032d1cf
JH
56# cutthrough for 2 recipients in one domain
57server PORT_S
528fde2a 58220 ESMTP
cb9d95ae 59EHLO
528fde2a
JH
60250 OK
61MAIL FROM:
62250 Sender OK
63RCPT TO:
64250 Recipient OK
5032d1cf
JH
65RCPT TO:
66250 Recipient OK
67DATA
68354 Send data
69.
70250 OK
528fde2a 71QUIT
5032d1cf
JH
72250 OK
73****
74exim -bs
75EHLO myhost.test.ex
76MAIL FROM:<CALLER@myhost.test.ex>
77RCPT TO:<usery@domain.com>
78RCPT TO:<userx@domain.com>
79DATA
80
81.
82QUIT
83****
84#
85#
86#
87#
88#
89# cutthrough_delivery basic operation, again
90server PORT_S
528fde2a
JH
91220 ESMTP
92EHLO
93250 OK
94MAIL FROM:
95250 Sender OK
96RCPT TO:
97250 Recipient OK
5032d1cf
JH
98DATA
99354 Send data
100.
101250 OK
102QUIT
103250 OK
104****
105exim -bs
106EHLO myhost.test.ex
107MAIL FROM:<CALLER@myhost.test.ex>
108RCPT TO:<userx@domain.com>
109DATA
110X-hdr-rtr: qqq
111X-hdr-tpt: zzz
112
113body
114.
115QUIT
116****
117#
118#
119#
120#
121# cutthrough for 2 recipients in one domain
122# first one denied
123# so we get a 2nd conn with the traditional delivery
124# (for both because it's not a real verify=recipient)
125server PORT_S 2
126220 ESMTP
127EHLO
128250 OK
129MAIL FROM:
130250 Sender OK
528fde2a 131RCPT TO:
5032d1cf
JH
132550 Not that one
133QUIT
134250 OK
135*eof
136220 ESMTP
137EHLO
138250 OK
139MAIL FROM:
140250 Sender OK
141RCPT TO:
142250 ok rcpt-1
143RCPT TO:
144250 ok rcpt-2
528fde2a
JH
145DATA
146354 Send data
147.
148250 OK
149QUIT
150250 OK
151****
a753aaff
JH
152#
153# Foregound delivery needed else the following subtest reception logging happens before this ones
154# delivery process logs and terminates; the interlock is only on the parent exim terminating.
155exim -bs -odf
528fde2a 156EHLO myhost.test.ex
9d6bb16d 157MAIL FROM:<CALLER@myhost.test.ex>
5032d1cf 158RCPT TO:<no@domain.com>
24f66b4d 159RCPT TO:<userx@domain.com>
528fde2a
JH
160DATA
161
162.
163QUIT
164****
511a6c14 165#
511a6c14
JH
166#
167#
168#
5032d1cf
JH
169# cutthrough for 2 recipients in one domain
170# second one denied
171# so we get a 2nd conn with the traditional delivery
172# (for both because it's not a real verify=recipient)
173server PORT_S 2
174220 ESMTP
175EHLO
176250 OK
177MAIL FROM:
178250 Sender OK
179RCPT TO:
180250 first recipient ok
181RCPT TO:
182550 Not that one
183QUIT
184250 OK
185*eof
186220 ESMTP
187EHLO
188250 OK
189MAIL FROM:
190250 Sender OK
191RCPT TO:
192250 ok rcpt-1
193RCPT TO:
194250 ok rcpt-2
195DATA
196354 Send data
197.
198250 OK
199QUIT
200250 OK
201****
a753aaff 202exim -bs -odf
5032d1cf
JH
203EHLO myhost.test.ex
204MAIL FROM:<CALLER@myhost.test.ex>
205RCPT TO:<userx@domain.com>
206RCPT TO:<no@domain.com>
207DATA
208
209.
210QUIT
211****
212#
213#
214#
215#
216#
217# cutthrough for 2 recipients in one domain
218# second one uses a different transport
219# so we get a 2nd conn with 2nd rcpt, doing the fake verify
220# then 3rd & 4th conns with the traditional deliveries on the different transports
221server PORT_S 4
222220 ESMTP
223EHLO
224250 OK
225MAIL FROM:
226250 Sender OK
227RCPT TO:
228250 first recipient ok
229QUIT
230250 OK
231*eof
232220 ESMTP
233EHLO
234250 OK
235MAIL FROM:
236250 Sender OK
237RCPT TO:
238250 second recipient ok
239QUIT
240250 OK
241*eof
242220 ESMTP
243EHLO
244250 OK
245MAIL FROM:
246250 Sender OK
247RCPT TO:
248250 ok rcpt-1
249DATA
250354 Send data
251.
252250 OK
253QUIT
254250 OK
255*eof
256220 ESMTP
257EHLO
258250 OK
259MAIL FROM:
260250 Sender OK
261RCPT TO:
262250 ok rcpt-2
263DATA
264354 Send data
265.
266250 OK
267QUIT
268250 OK
269****
a753aaff 270exim -bs -odf
5032d1cf
JH
271EHLO myhost.test.ex
272MAIL FROM:<CALLER@myhost.test.ex>
273RCPT TO:<userx@domain.com>
274RCPT TO:<special_tpt@domain.com>
275DATA
276
277.
278QUIT
279****
280#
281#
282#
283#
284#
285# cutthrough for 2 recipients in different domains, handled by the same tpt & host
511a6c14
JH
286server PORT_S
287220 ESMTP
288EHLO
289250 OK
290MAIL FROM:
291250 Sender OK
292RCPT TO:
5032d1cf
JH
293250 ok rcpt-1
294RCPT TO:
295250 ok rcpt-2
511a6c14
JH
296DATA
297354 Send data
298.
299250 OK
300QUIT
301250 OK
302****
5032d1cf
JH
303exim -bs
304EHLO myhost.test.ex
305MAIL FROM:<CALLER@myhost.test.ex>
306RCPT TO:<userx@domain1.com>
307RCPT TO:<usery@domain2.com>
308DATA
309
310.
311QUIT
312****
313#
314#
315#
316#
317#
318# cutthrough for 2 recipients in different domains, handled by the same tpt but different hosts
319# so we get a 2nd conn with 2nd rcpt, doing the fake verify
320# then 3rd & 4th conns with the traditional deliveries on the different transports
321server PORT_S 4
322220 ESMTP
323EHLO
324250 OK
325MAIL FROM:
326250 Sender OK
327RCPT TO:
328250 first recipient ok
329QUIT
330250 OK
331*eof
332220 ESMTP
333EHLO
334250 OK
335MAIL FROM:
336250 Sender OK
337RCPT TO:
338250 second recipient ok
339QUIT
340250 OK
341*eof
342220 ESMTP
343EHLO
344250 OK
345MAIL FROM:
346250 Sender OK
347RCPT TO:
348250 ok rcpt-1
349DATA
350354 Send data
351.
352250 OK
353QUIT
354250 OK
355*eof
356220 ESMTP
357EHLO
358250 OK
359MAIL FROM:
360250 Sender OK
361RCPT TO:
362250 ok rcpt-2
363DATA
364354 Send data
365.
366250 OK
367QUIT
368250 OK
369****
a753aaff 370exim -bs -odf
511a6c14
JH
371EHLO myhost.test.ex
372MAIL FROM:<CALLER@myhost.test.ex>
373RCPT TO:<userx@domain.com>
5032d1cf
JH
374RCPT TO:<usery@special.com>
375DATA
376
377.
378QUIT
379****
380#
381#
382#
383#
384#
385# cutthrough for 2 recipients in different domains, handled by the same tpt & host
386# but via a dnslookup router (all previous were manualroute)
387server PORT_S
388220 ESMTP
389EHLO
390250 OK
391MAIL FROM:
392250 Sender OK
393RCPT TO:
394250 ok rcpt-1
395RCPT TO:
396250 ok rcpt-2
397DATA
398354 Send data
399.
400250 OK
401QUIT
402250 OK
403****
a753aaff 404exim -bs -odf
5032d1cf
JH
405EHLO myhost.test.ex
406MAIL FROM:<CALLER@myhost.test.ex>
ac9a0d91 407RCPT TO:<userx@localhost4.test.ex>
5032d1cf 408RCPT TO:<usery@thishost.test.ex>
511a6c14 409DATA
511a6c14 410
511a6c14
JH
411.
412QUIT
413****
5032d1cf
JH
414#
415#
416#
1bc460a6
JH
417# data having line with (logical, doubled on wire) single dot
418server PORT_S
419220 ESMTP
420EHLO
421250 OK
422MAIL FROM:
423250 Sender OK
424RCPT TO:
425250 Recipient OK
426DATA
427354 Send data
428.
429250 OK
430QUIT
431250 OK
432****
433exim -bs -odf
434EHLO myhost.test.ex
435MAIL FROM:<CALLER@myhost.test.ex>
436RCPT TO:<userx@domain.com>
437DATA
438Subject: singledot test
439
440This data has a line with a single dot... next:
441..
442and this is the line right after.
443Next we have a line with a leading dot:
444..test
445and this is the next line.
446
447.
448QUIT
449****
450#
5032d1cf 451#
a753aaff 452# End