Testsuite: Patch for lost server -> exim interlock
[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
124 # (for both because it's not a real verify=recipient)
125 server PORT_S 2
126 220 ESMTP
127 EHLO
128 250 OK
129 MAIL FROM:
130 250 Sender OK
131 RCPT TO:
132 550 Not that one
133 QUIT
134 250 OK
135 *eof
136 220 ESMTP
137 EHLO
138 250 OK
139 MAIL FROM:
140 250 Sender OK
141 RCPT TO:
142 250 ok rcpt-1
143 RCPT TO:
144 250 ok rcpt-2
145 DATA
146 354 Send data
147 .
148 250 OK
149 QUIT
150 250 OK
151 ****
152 exim -bs
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 # The "exim" above should have waited on completion for the "server" before
164 # but apparently not; without this delay ordering is messed up.
165 # Unsatifactory.
166 millisleep 500
167 #
168 #
169 #
170 # cutthrough for 2 recipients in one domain
171 # second one denied
172 # so we get a 2nd conn with the traditional delivery
173 # (for both because it's not a real verify=recipient)
174 server PORT_S 2
175 220 ESMTP
176 EHLO
177 250 OK
178 MAIL FROM:
179 250 Sender OK
180 RCPT TO:
181 250 first recipient ok
182 RCPT TO:
183 550 Not that one
184 QUIT
185 250 OK
186 *eof
187 220 ESMTP
188 EHLO
189 250 OK
190 MAIL FROM:
191 250 Sender OK
192 RCPT TO:
193 250 ok rcpt-1
194 RCPT TO:
195 250 ok rcpt-2
196 DATA
197 354 Send data
198 .
199 250 OK
200 QUIT
201 250 OK
202 ****
203 exim -bs
204 EHLO myhost.test.ex
205 MAIL FROM:<CALLER@myhost.test.ex>
206 RCPT TO:<userx@domain.com>
207 RCPT TO:<no@domain.com>
208 DATA
209
210 .
211 QUIT
212 ****
213 #
214 #
215 millisleep 500
216 #
217 #
218 #
219 # cutthrough for 2 recipients in one domain
220 # second one uses a different transport
221 # so we get a 2nd conn with 2nd rcpt, doing the fake verify
222 # then 3rd & 4th conns with the traditional deliveries on the different transports
223 server PORT_S 4
224 220 ESMTP
225 EHLO
226 250 OK
227 MAIL FROM:
228 250 Sender OK
229 RCPT TO:
230 250 first recipient ok
231 QUIT
232 250 OK
233 *eof
234 220 ESMTP
235 EHLO
236 250 OK
237 MAIL FROM:
238 250 Sender OK
239 RCPT TO:
240 250 second recipient ok
241 QUIT
242 250 OK
243 *eof
244 220 ESMTP
245 EHLO
246 250 OK
247 MAIL FROM:
248 250 Sender OK
249 RCPT TO:
250 250 ok rcpt-1
251 DATA
252 354 Send data
253 .
254 250 OK
255 QUIT
256 250 OK
257 *eof
258 220 ESMTP
259 EHLO
260 250 OK
261 MAIL FROM:
262 250 Sender OK
263 RCPT TO:
264 250 ok rcpt-2
265 DATA
266 354 Send data
267 .
268 250 OK
269 QUIT
270 250 OK
271 ****
272 exim -bs
273 EHLO myhost.test.ex
274 MAIL FROM:<CALLER@myhost.test.ex>
275 RCPT TO:<userx@domain.com>
276 RCPT TO:<special_tpt@domain.com>
277 DATA
278
279 .
280 QUIT
281 ****
282 #
283 #
284 millisleep 500
285 #
286 #
287 #
288 # cutthrough for 2 recipients in different domains, handled by the same tpt & host
289 server PORT_S
290 220 ESMTP
291 EHLO
292 250 OK
293 MAIL FROM:
294 250 Sender OK
295 RCPT TO:
296 250 ok rcpt-1
297 RCPT TO:
298 250 ok rcpt-2
299 DATA
300 354 Send data
301 .
302 250 OK
303 QUIT
304 250 OK
305 ****
306 exim -bs
307 EHLO myhost.test.ex
308 MAIL FROM:<CALLER@myhost.test.ex>
309 RCPT TO:<userx@domain1.com>
310 RCPT TO:<usery@domain2.com>
311 DATA
312
313 .
314 QUIT
315 ****
316 #
317 #
318 #
319 #
320 #
321 # cutthrough for 2 recipients in different domains, handled by the same tpt but different hosts
322 # so we get a 2nd conn with 2nd rcpt, doing the fake verify
323 # then 3rd & 4th conns with the traditional deliveries on the different transports
324 server PORT_S 4
325 220 ESMTP
326 EHLO
327 250 OK
328 MAIL FROM:
329 250 Sender OK
330 RCPT TO:
331 250 first recipient ok
332 QUIT
333 250 OK
334 *eof
335 220 ESMTP
336 EHLO
337 250 OK
338 MAIL FROM:
339 250 Sender OK
340 RCPT TO:
341 250 second recipient ok
342 QUIT
343 250 OK
344 *eof
345 220 ESMTP
346 EHLO
347 250 OK
348 MAIL FROM:
349 250 Sender OK
350 RCPT TO:
351 250 ok rcpt-1
352 DATA
353 354 Send data
354 .
355 250 OK
356 QUIT
357 250 OK
358 *eof
359 220 ESMTP
360 EHLO
361 250 OK
362 MAIL FROM:
363 250 Sender OK
364 RCPT TO:
365 250 ok rcpt-2
366 DATA
367 354 Send data
368 .
369 250 OK
370 QUIT
371 250 OK
372 ****
373 exim -bs
374 EHLO myhost.test.ex
375 MAIL FROM:<CALLER@myhost.test.ex>
376 RCPT TO:<userx@domain.com>
377 RCPT TO:<usery@special.com>
378 DATA
379
380 .
381 QUIT
382 ****
383 #
384 #
385 millisleep 500
386 #
387 #
388 #
389 # cutthrough for 2 recipients in different domains, handled by the same tpt & host
390 # but via a dnslookup router (all previous were manualroute)
391 server PORT_S
392 220 ESMTP
393 EHLO
394 250 OK
395 MAIL FROM:
396 250 Sender OK
397 RCPT TO:
398 250 ok rcpt-1
399 RCPT TO:
400 250 ok rcpt-2
401 DATA
402 354 Send data
403 .
404 250 OK
405 QUIT
406 250 OK
407 ****
408 exim -bs
409 EHLO myhost.test.ex
410 MAIL FROM:<CALLER@myhost.test.ex>
411 RCPT TO:<userx@localhost4.test.ex>
412 RCPT TO:<usery@thishost.test.ex>
413 DATA
414
415 .
416 QUIT
417 ****
418 #
419 #
420 #
421 #
422 #
423 sleep 1