Fix argument checking for ${readsocket }
[users/heiko/exim.git] / test / scripts / 5400-cutthrough / 5400
1 # cutthrough_delivery basic operation
2 need_ipv4
3 munge loopback
4 #
5 server PORT_S
6 220 ESMTP
7 EHLO
8 250 OK
9 MAIL FROM:
10 250 Sender OK
11 RCPT TO:
12 250 Recipient OK
13 DATA
14 354 Send data
15 .
16 250 OK
17 QUIT
18 250 OK
19 ****
20 exim -bs
21 EHLO myhost.test.ex
22 MAIL FROM:<CALLER@myhost.test.ex>
23 RCPT TO:<userx@domain.com>
24 DATA
25
26 .
27 QUIT
28 ****
29 # cutthrough_delivery into HELO-only server
30 server PORT_S
31 220 SMTP only spoken here
32 EHLO
33 550 Not here, mate
34 HELO
35 250 OK
36 MAIL FROM:
37 250 Sender OK
38 RCPT TO:
39 250 Recipient OK
40 DATA
41 354 Send data
42 .
43 250 OK
44 QUIT
45 250 OK
46 ****
47 exim -bs
48 EHLO myhost.test.ex
49 MAIL FROM:<CALLER@myhost.test.ex>
50 RCPT TO:<userz@domain.com>
51 DATA
52
53 .
54 QUIT
55 ****
56 # cutthrough for 2 recipients in one domain
57 server PORT_S
58 220 ESMTP
59 EHLO
60 250 OK
61 MAIL FROM:
62 250 Sender OK
63 RCPT TO:
64 250 Recipient OK
65 RCPT TO:
66 250 Recipient OK
67 DATA
68 354 Send data
69 .
70 250 OK
71 QUIT
72 250 OK
73 ****
74 exim -bs
75 EHLO myhost.test.ex
76 MAIL FROM:<CALLER@myhost.test.ex>
77 RCPT TO:<usery@domain.com>
78 RCPT TO:<userx@domain.com>
79 DATA
80
81 .
82 QUIT
83 ****
84 #
85 #
86 #
87 #
88 #
89 # cutthrough_delivery basic operation, again
90 server PORT_S
91 220 ESMTP
92 EHLO
93 250 OK
94 MAIL FROM:
95 250 Sender OK
96 RCPT TO:
97 250 Recipient OK
98 DATA
99 354 Send data
100 .
101 250 OK
102 QUIT
103 250 OK
104 ****
105 exim -bs
106 EHLO myhost.test.ex
107 MAIL FROM:<CALLER@myhost.test.ex>
108 RCPT TO:<userx@domain.com>
109 DATA
110 X-hdr-rtr: qqq
111 X-hdr-tpt: zzz
112
113 body
114 .
115 QUIT
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 for the second
124 server PORT_S 2
125 220 ESMTP
126 EHLO
127 250 OK
128 MAIL FROM:
129 250 Sender OK
130 RCPT TO:
131 550 Not that one
132 QUIT
133 250 OK
134 *eof
135 220 ESMTP
136 EHLO
137 250 OK
138 MAIL FROM:
139 250 Sender OK
140 RCPT TO:
141 250 ok rcpt-1
142 DATA
143 354 Send data
144 .
145 250 OK
146 QUIT
147 250 OK
148 ****
149 #
150 # Foregound delivery needed else the following subtest reception logging happens before this ones
151 # delivery process logs and terminates; the interlock is only on the parent exim terminating.
152 exim -bs -odf
153 EHLO myhost.test.ex
154 MAIL FROM:<CALLER@myhost.test.ex>
155 RCPT TO:<no@domain.com>
156 RCPT TO:<userx@domain.com>
157 DATA
158
159 .
160 QUIT
161 ****
162 #
163 #
164 #
165 #
166 # cutthrough for 2 recipients in one domain
167 # second one denied
168 # so we get a 2nd conn with the traditional delivery of the 1st
169 server PORT_S 2
170 220 ESMTP
171 EHLO
172 250 OK
173 MAIL FROM:
174 250 Sender OK
175 RCPT TO:
176 250 first recipient ok
177 RCPT TO:
178 550 Not that one
179 QUIT
180 250 OK
181 *eof
182 220 ESMTP
183 EHLO
184 250 OK
185 MAIL FROM:
186 250 Sender OK
187 RCPT TO:
188 250 ok rcpt-1
189 DATA
190 354 Send data
191 .
192 250 OK
193 QUIT
194 250 OK
195 ****
196 exim -bs -odf
197 EHLO myhost.test.ex
198 MAIL FROM:<CALLER@myhost.test.ex>
199 RCPT TO:<userx@domain.com>
200 RCPT TO:<no@domain.com>
201 DATA
202
203 .
204 QUIT
205 ****
206 #
207 #
208 #
209 #
210 #
211 # cutthrough for 2 recipients in one domain
212 # second one uses a different transport
213 # so we get a 2nd conn with 2nd rcpt, doing the fake verify
214 # then 3rd & 4th conns with the traditional deliveries on the different transports
215 server PORT_S 4
216 220 ESMTP
217 EHLO
218 250 OK
219 MAIL FROM:
220 250 Sender OK
221 RCPT TO:
222 250 first recipient ok
223 QUIT
224 250 OK
225 *eof
226 220 ESMTP
227 EHLO
228 250 OK
229 MAIL FROM:
230 250 Sender OK
231 RCPT TO:
232 250 second recipient ok
233 QUIT
234 250 OK
235 *eof
236 220 ESMTP
237 EHLO
238 250 OK
239 MAIL FROM:
240 250 Sender OK
241 RCPT TO:
242 250 ok rcpt-1
243 DATA
244 354 Send data
245 .
246 250 OK
247 QUIT
248 250 OK
249 *eof
250 220 ESMTP
251 EHLO
252 250 OK
253 MAIL FROM:
254 250 Sender OK
255 RCPT TO:
256 250 ok rcpt-2
257 DATA
258 354 Send data
259 .
260 250 OK
261 QUIT
262 250 OK
263 ****
264 exim -bs -odf
265 EHLO myhost.test.ex
266 MAIL FROM:<CALLER@myhost.test.ex>
267 RCPT TO:<userx@domain.com>
268 RCPT TO:<special_tpt@domain.com>
269 DATA
270
271 .
272 QUIT
273 ****
274 #
275 #
276 #
277 #
278 #
279 # cutthrough for 2 recipients in different domains, handled by the same tpt & host
280 server PORT_S
281 220 ESMTP
282 EHLO
283 250 OK
284 MAIL FROM:
285 250 Sender OK
286 RCPT TO:
287 250 ok rcpt-1
288 RCPT TO:
289 250 ok rcpt-2
290 DATA
291 354 Send data
292 .
293 250 OK
294 QUIT
295 250 OK
296 ****
297 exim -bs
298 EHLO myhost.test.ex
299 MAIL FROM:<CALLER@myhost.test.ex>
300 RCPT TO:<userx@domain1.com>
301 RCPT TO:<usery@domain2.com>
302 DATA
303
304 .
305 QUIT
306 ****
307 #
308 #
309 #
310 #
311 #
312 # cutthrough for 2 recipients in different domains, handled by the same tpt but different hosts
313 # so we get a 2nd conn with 2nd rcpt, doing the fake verify
314 # then 3rd & 4th conns with the traditional deliveries on the different transports
315 server PORT_S 4
316 220 ESMTP
317 EHLO
318 250 OK
319 MAIL FROM:
320 250 Sender OK
321 RCPT TO:
322 250 first recipient ok
323 QUIT
324 250 OK
325 *eof
326 220 ESMTP
327 EHLO
328 250 OK
329 MAIL FROM:
330 250 Sender OK
331 RCPT TO:
332 250 second recipient ok
333 QUIT
334 250 OK
335 *eof
336 220 ESMTP
337 EHLO
338 250 OK
339 MAIL FROM:
340 250 Sender OK
341 RCPT TO:
342 250 ok rcpt-1
343 DATA
344 354 Send data
345 .
346 250 OK
347 QUIT
348 250 OK
349 *eof
350 220 ESMTP
351 EHLO
352 250 OK
353 MAIL FROM:
354 250 Sender OK
355 RCPT TO:
356 250 ok rcpt-2
357 DATA
358 354 Send data
359 .
360 250 OK
361 QUIT
362 250 OK
363 ****
364 exim -bs -odf
365 EHLO myhost.test.ex
366 MAIL FROM:<CALLER@myhost.test.ex>
367 RCPT TO:<userx@domain.com>
368 RCPT TO:<usery@special.com>
369 DATA
370
371 .
372 QUIT
373 ****
374 #
375 #
376 #
377 #
378 #
379 # cutthrough for 2 recipients in different domains, handled by the same tpt & host
380 # but via a dnslookup router (all previous were manualroute)
381 server PORT_S
382 220 ESMTP
383 EHLO
384 250 OK
385 MAIL FROM:
386 250 Sender OK
387 RCPT TO:
388 250 ok rcpt-1
389 RCPT TO:
390 250 ok rcpt-2
391 DATA
392 354 Send data
393 .
394 250 OK
395 QUIT
396 250 OK
397 ****
398 exim -bs -odf
399 EHLO myhost.test.ex
400 MAIL FROM:<CALLER@myhost.test.ex>
401 RCPT TO:<userx@localhost4.test.ex>
402 RCPT TO:<usery@thishost.test.ex>
403 DATA
404
405 .
406 QUIT
407 ****
408 #
409 #
410 #
411 # data having line with (logical, doubled on wire) single dot
412 server PORT_S
413 220 ESMTP
414 EHLO
415 250 OK
416 MAIL FROM:
417 250 Sender OK
418 RCPT TO:
419 250 Recipient OK
420 DATA
421 354 Send data
422 .
423 250 OK
424 QUIT
425 250 OK
426 ****
427 exim -bs -odf
428 EHLO myhost.test.ex
429 MAIL FROM:<CALLER@myhost.test.ex>
430 RCPT TO:<userx@domain.com>
431 DATA
432 Subject: singledot test
433
434 This data has a line with a single dot... next:
435 ..
436 and this is the line right after.
437 Next we have a line with a leading dot:
438 ..test
439 and this is the next line.
440
441 .
442 QUIT
443 ****
444 #
445 #
446 sortlog
447 # End