redirect router: taint-enforce filenames
[exim.git] / test / stderr / 5420
1 Exim version x.yz ....
2 adding SSLKEYLOGFILE=TESTSUITE/spool/sslkeys
3 configuration file is TESTSUITE/test-config
4 admin user
5  in hosts_connection_nolog? no (option unset)
6 LOG: smtp_connection MAIN
7   SMTP connection from CALLER
8  ╭considering: $smtp_active_hostname ESMTP Exim $version_number $tod_full
9  ├──expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
10  ╰─────result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
11  in dsn_advertise_hosts? no (option unset)
12  in pipelining_advertise_hosts? yes (matched "*")
13  in chunking_advertise_hosts? no (end of list)
14  in tls_advertise_hosts? yes (matched "*")
15  ╭considering: ${if eq {SERVER}{server}{queue}{cutthrough}}
16   ╭considering: SERVER}{server}{queue}{cutthrough}}
17   ├──expanding: SERVER
18   ╰─────result: SERVER
19   ╭considering: server}{queue}{cutthrough}}
20   ├──expanding: server
21   ╰─────result: server
22  ├──condition: eq {SERVER}{server}
23  ├─────result: false
24   ╭───scanning: queue}{cutthrough}}
25   ├──expanding: queue
26   ├─────result: queue
27   ╰───skipping: result is not used
28   ╭considering: cutthrough}}
29   ├──expanding: cutthrough
30   ╰─────result: cutthrough
31  ├──expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
32  ╰─────result: cutthrough
33 using ACL "cutthrough"
34 processing "accept" (TESTSUITE/test-config 22)
35 check control = cutthrough_delivery
36 check verify = recipient
37 domain.com in "test.ex : *.test.ex"? no (end of list)
38 domain.com in "! +local_domains"? yes (end of list)
39  ╭considering: $local_part
40  ├──expanding: $local_part
41  ╰─────result: userx
42             ╰──(tainted)
43 domain.com in "*"? yes (matched "*")
44 ----------- end verify ------------
45 accept: condition test succeeded in ACL "cutthrough"
46 end of ACL "cutthrough": ACCEPT
47 ----------- start cutthrough setup ------------
48 domain.com in "test.ex : *.test.ex"? no (end of list)
49 domain.com in "! +local_domains"? yes (end of list)
50  ╭considering: $local_part
51  ├──expanding: $local_part
52  ╰─────result: userx
53             ╰──(tainted)
54 domain.com in "*"? yes (matched "*")
55 Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ...  connected
56  ╭considering: $primary_hostname
57  ├──expanding: $primary_hostname
58  ╰─────result: myhost.test.ex
59   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
60 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
61   SMTP>> EHLO myhost.test.ex
62 cmd buf flush ddd bytes
63   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
64          250-SIZE 52428800
65          250-8BITMIME
66          250-PIPELINING
67          250-STARTTLS
68          250 HELP
69  ╭considering: ${if eq {$address_data}{usery}{*}{:}}
70   ╭considering: $address_data}{usery}{*}{:}}
71   ├──expanding: $address_data
72   ╰─────result: userx
73              ╰──(tainted)
74   ╭considering: usery}{*}{:}}
75   ├──expanding: usery
76   ╰─────result: usery
77  ├──condition: eq {$address_data}{usery}
78  ├─────result: false
79   ╭───scanning: *}{:}}
80   ├──expanding: *
81   ├─────result: *
82   ╰───skipping: result is not used
83   ╭considering: :}}
84   ├──expanding: :
85   ╰─────result: :
86  ├──expanding: ${if eq {$address_data}{usery}{*}{:}}
87  ╰─────result: :
88 127.0.0.1 in hosts_avoid_tls? no (end of list)
89  ╭considering: ${if eq {$address_data}{userz}{*}{:}}
90   ╭considering: $address_data}{userz}{*}{:}}
91   ├──expanding: $address_data
92   ╰─────result: userx
93              ╰──(tainted)
94   ╭considering: userz}{*}{:}}
95   ├──expanding: userz
96   ╰─────result: userz
97  ├──condition: eq {$address_data}{userz}
98  ├─────result: false
99   ╭───scanning: *}{:}}
100   ├──expanding: *
101   ├─────result: *
102   ╰───skipping: result is not used
103   ╭considering: :}}
104   ├──expanding: :
105   ╰─────result: :
106  ├──expanding: ${if eq {$address_data}{userz}{*}{:}}
107  ╰─────result: :
108 127.0.0.1 in hosts_verify_avoid_tls? no (end of list)
109   SMTP>> STARTTLS
110 cmd buf flush ddd bytes
111   SMTP<< 220 TLS go ahead
112 127.0.0.1 in tls_verify_hosts? no (option unset)
113 127.0.0.1 in tls_try_verify_hosts? yes (matched "*")
114 127.0.0.1 in tls_verify_cert_hostnames? yes (matched "*")
115   SMTP>> EHLO myhost.test.ex
116 cmd buf flush ddd bytes
117   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
118          250-SIZE 52428800
119          250-8BITMIME
120          250-PIPELINING
121          250 HELP
122 127.0.0.1 in hosts_avoid_pipelining? no (option unset)
123 using PIPELINING
124 not using DSN
125 127.0.0.1 in hosts_require_auth? no (option unset)
126   SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
127   SMTP>> RCPT TO:<userx@domain.com>
128 cmd buf flush ddd bytes
129 sync_responses expect mail
130   SMTP<< 250 OK
131 sync_responses expect rcpt
132   SMTP<< 250 Accepted
133 holding verify callout open for cutthrough delivery
134 ----------- end cutthrough setup ------------
135 processing "accept" (TESTSUITE/test-config 55)
136 accept: condition test succeeded in inline ACL
137 end of inline ACL: ACCEPT
138   SMTP>> DATA
139   SMTP<< 354 Enter message, ending with "." on a line by itself
140  ╭considering: ${tod_full}
141  ├──expanding: ${tod_full}
142  ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
143  ╭considering: Received: ${if def:sender_rcvhost {from $sender_rcvhost
144         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
145         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
146         }}(Exim $version_number)
147         ${if def:sender_address {(envelope-from <$sender_address>)
148         }}id $message_exim_id${if def:received_for {
149         for $received_for}}
150  ├──condition: def:sender_rcvhost
151  ├─────result: false
152   ╭───scanning: from $sender_rcvhost
153         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
154         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
155         }}(Exim $version_number)
156         ${if def:sender_address {(envelope-from <$sender_address>)
157         }}id $message_exim_id${if def:received_for {
158         for $received_for}}
159   ├──expanding: from $sender_rcvhost
160         
161   ├─────result: from 
162         
163   ╰───skipping: result is not used
164   ╭considering: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
165         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
166         }}(Exim $version_number)
167         ${if def:sender_address {(envelope-from <$sender_address>)
168         }}id $message_exim_id${if def:received_for {
169         for $received_for}}
170   ├──condition: def:sender_ident
171   ├─────result: true
172    ╭considering: from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
173         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
174         }}(Exim $version_number)
175         ${if def:sender_address {(envelope-from <$sender_address>)
176         }}id $message_exim_id${if def:received_for {
177         for $received_for}}
178    ╎╭considering: $sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
179    ╎  }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
180    ╎  }}(Exim $version_number)
181    ╎  ${if def:sender_address {(envelope-from <$sender_address>)
182    ╎  }}id $message_exim_id${if def:received_for {
183    ╎  for $received_for}}
184    ╎├──expanding: $sender_ident
185    ╎╰─────result: CALLER
186    ├──expanding: from ${quote_local_part:$sender_ident} 
187    ╰─────result: from CALLER 
188   ├──condition: def:sender_helo_name
189   ├─────result: true
190    ╭considering: (helo=$sender_helo_name)
191         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
192         }}(Exim $version_number)
193         ${if def:sender_address {(envelope-from <$sender_address>)
194         }}id $message_exim_id${if def:received_for {
195         for $received_for}}
196    ├──expanding: (helo=$sender_helo_name)
197         
198    ╰─────result: (helo=myhost.test.ex)
199         
200               ╰──(tainted)
201   ├──expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
202         }}
203   ╰─────result: from CALLER (helo=myhost.test.ex)
204         
205              ╰──(tainted)
206  ├──condition: def:received_protocol
207  ├─────result: true
208   ╭considering: with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
209         }}(Exim $version_number)
210         ${if def:sender_address {(envelope-from <$sender_address>)
211         }}id $message_exim_id${if def:received_for {
212         for $received_for}}
213   ├──expanding: with $received_protocol 
214   ╰─────result: with local-esmtp 
215  ├──condition: def:tls_in_ver
216  ├─────result: false
217   ╭───scanning:  ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
218         }}(Exim $version_number)
219         ${if def:sender_address {(envelope-from <$sender_address>)
220         }}id $message_exim_id${if def:received_for {
221         for $received_for}}
222   ├──expanding:  ($tls_in_ver)
223   ├─────result:  ()
224   ╰───skipping: result is not used
225  ├──condition: def:sender_address
226  ├─────result: true
227   ╭considering: (envelope-from <$sender_address>)
228         }}id $message_exim_id${if def:received_for {
229         for $received_for}}
230   ├──expanding: (envelope-from <$sender_address>)
231         
232   ╰─────result: (envelope-from <CALLER@myhost.test.ex>)
233         
234  ├──condition: def:received_for
235  ├─────result: true
236   ╭considering: 
237         for $received_for}}
238   ├──expanding: 
239         for $received_for
240   ╰─────result: 
241         for userx@domain.com
242              ╰──(tainted)
243  ├──expanding: Received: ${if def:sender_rcvhost {from $sender_rcvhost
244         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
245         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
246         }}(Exim $version_number)
247         ${if def:sender_address {(envelope-from <$sender_address>)
248         }}id $message_exim_id${if def:received_for {
249         for $received_for}}
250  ╰─────result: Received: from CALLER (helo=myhost.test.ex)
251         by myhost.test.ex with local-esmtp (Exim x.yz)
252         (envelope-from <CALLER@myhost.test.ex>)
253         id 10HmaX-0005vi-00
254         for userx@domain.com
255             ╰──(tainted)
256 ----------- start cutthrough headers send -----------
257 ----------- done cutthrough headers send ------------
258  ╭considering: ${tod_full}
259  ├──expanding: ${tod_full}
260  ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
261   SMTP>> .
262   SMTP<< 250 OK id=10HmaY-0005vi-00
263 LOG: MAIN
264   >> userx@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=no C="250 OK id=10HmaY-0005vi-00"
265   SMTP>> QUIT
266   SMTP<< 221 myhost.test.ex closing connection
267   SMTP(close)>>
268 ----------- cutthrough shutdown (delivered) ------------
269 LOG: MAIN
270   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
271 LOG: MAIN
272   Completed
273 LOG: smtp_connection MAIN
274   SMTP connection from CALLER closed by QUIT
275 >>>>>>>>>>>>>>>> Exim pid=pppp (msg setup toplevel) terminating with rc=0 >>>>>>>>>>>>>>>>
276 Exim version x.yz ....
277 adding SSLKEYLOGFILE=TESTSUITE/spool/sslkeys
278 configuration file is TESTSUITE/test-config
279 admin user
280  in hosts_connection_nolog? no (option unset)
281 LOG: smtp_connection MAIN
282   SMTP connection from CALLER
283  ╭considering: $smtp_active_hostname ESMTP Exim $version_number $tod_full
284  ├──expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
285  ╰─────result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
286  in dsn_advertise_hosts? no (option unset)
287  in pipelining_advertise_hosts? yes (matched "*")
288  in chunking_advertise_hosts? no (end of list)
289  in tls_advertise_hosts? yes (matched "*")
290  ╭considering: ${if eq {SERVER}{server}{queue}{cutthrough}}
291   ╭considering: SERVER}{server}{queue}{cutthrough}}
292   ├──expanding: SERVER
293   ╰─────result: SERVER
294   ╭considering: server}{queue}{cutthrough}}
295   ├──expanding: server
296   ╰─────result: server
297  ├──condition: eq {SERVER}{server}
298  ├─────result: false
299   ╭───scanning: queue}{cutthrough}}
300   ├──expanding: queue
301   ├─────result: queue
302   ╰───skipping: result is not used
303   ╭considering: cutthrough}}
304   ├──expanding: cutthrough
305   ╰─────result: cutthrough
306  ├──expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
307  ╰─────result: cutthrough
308 using ACL "cutthrough"
309 processing "accept" (TESTSUITE/test-config 22)
310 check control = cutthrough_delivery
311 check verify = recipient
312 domain.com in "test.ex : *.test.ex"? no (end of list)
313 domain.com in "! +local_domains"? yes (end of list)
314  ╭considering: $local_part
315  ├──expanding: $local_part
316  ╰─────result: usery
317             ╰──(tainted)
318 domain.com in "*"? yes (matched "*")
319 ----------- end verify ------------
320 accept: condition test succeeded in ACL "cutthrough"
321 end of ACL "cutthrough": ACCEPT
322 ----------- start cutthrough setup ------------
323 domain.com in "test.ex : *.test.ex"? no (end of list)
324 domain.com in "! +local_domains"? yes (end of list)
325  ╭considering: $local_part
326  ├──expanding: $local_part
327  ╰─────result: usery
328             ╰──(tainted)
329 domain.com in "*"? yes (matched "*")
330 Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ...  connected
331  ╭considering: $primary_hostname
332  ├──expanding: $primary_hostname
333  ╰─────result: myhost.test.ex
334   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
335 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
336   SMTP>> EHLO myhost.test.ex
337 cmd buf flush ddd bytes
338   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
339          250-SIZE 52428800
340          250-8BITMIME
341          250-PIPELINING
342          250-STARTTLS
343          250 HELP
344  ╭considering: ${if eq {$address_data}{usery}{*}{:}}
345   ╭considering: $address_data}{usery}{*}{:}}
346   ├──expanding: $address_data
347   ╰─────result: usery
348              ╰──(tainted)
349   ╭considering: usery}{*}{:}}
350   ├──expanding: usery
351   ╰─────result: usery
352  ├──condition: eq {$address_data}{usery}
353  ├─────result: true
354   ╭considering: *}{:}}
355   ├──expanding: *
356   ╰─────result: *
357   ╭───scanning: :}}
358   ├──expanding: :
359   ├─────result: :
360   ╰───skipping: result is not used
361  ├──expanding: ${if eq {$address_data}{usery}{*}{:}}
362  ╰─────result: *
363 127.0.0.1 in hosts_avoid_tls? yes (matched "*")
364 127.0.0.1 in hosts_avoid_pipelining? no (option unset)
365 using PIPELINING
366 not using DSN
367 127.0.0.1 in hosts_require_auth? no (option unset)
368   SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
369   SMTP>> RCPT TO:<usery@domain.com>
370 cmd buf flush ddd bytes
371 sync_responses expect mail
372   SMTP<< 250 OK
373 sync_responses expect rcpt
374   SMTP<< 250 Accepted
375 holding verify callout open for cutthrough delivery
376 ----------- end cutthrough setup ------------
377 processing "accept" (TESTSUITE/test-config 55)
378 accept: condition test succeeded in inline ACL
379 end of inline ACL: ACCEPT
380   SMTP>> DATA
381   SMTP<< 354 Enter message, ending with "." on a line by itself
382  ╭considering: ${tod_full}
383  ├──expanding: ${tod_full}
384  ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
385  ╭considering: Received: ${if def:sender_rcvhost {from $sender_rcvhost
386         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
387         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
388         }}(Exim $version_number)
389         ${if def:sender_address {(envelope-from <$sender_address>)
390         }}id $message_exim_id${if def:received_for {
391         for $received_for}}
392  ├──condition: def:sender_rcvhost
393  ├─────result: false
394   ╭───scanning: from $sender_rcvhost
395         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
396         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
397         }}(Exim $version_number)
398         ${if def:sender_address {(envelope-from <$sender_address>)
399         }}id $message_exim_id${if def:received_for {
400         for $received_for}}
401   ├──expanding: from $sender_rcvhost
402         
403   ├─────result: from 
404         
405   ╰───skipping: result is not used
406   ╭considering: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
407         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
408         }}(Exim $version_number)
409         ${if def:sender_address {(envelope-from <$sender_address>)
410         }}id $message_exim_id${if def:received_for {
411         for $received_for}}
412   ├──condition: def:sender_ident
413   ├─────result: true
414    ╭considering: from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
415         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
416         }}(Exim $version_number)
417         ${if def:sender_address {(envelope-from <$sender_address>)
418         }}id $message_exim_id${if def:received_for {
419         for $received_for}}
420    ╎╭considering: $sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
421    ╎  }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
422    ╎  }}(Exim $version_number)
423    ╎  ${if def:sender_address {(envelope-from <$sender_address>)
424    ╎  }}id $message_exim_id${if def:received_for {
425    ╎  for $received_for}}
426    ╎├──expanding: $sender_ident
427    ╎╰─────result: CALLER
428    ├──expanding: from ${quote_local_part:$sender_ident} 
429    ╰─────result: from CALLER 
430   ├──condition: def:sender_helo_name
431   ├─────result: true
432    ╭considering: (helo=$sender_helo_name)
433         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
434         }}(Exim $version_number)
435         ${if def:sender_address {(envelope-from <$sender_address>)
436         }}id $message_exim_id${if def:received_for {
437         for $received_for}}
438    ├──expanding: (helo=$sender_helo_name)
439         
440    ╰─────result: (helo=myhost.test.ex)
441         
442               ╰──(tainted)
443   ├──expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
444         }}
445   ╰─────result: from CALLER (helo=myhost.test.ex)
446         
447              ╰──(tainted)
448  ├──condition: def:received_protocol
449  ├─────result: true
450   ╭considering: with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
451         }}(Exim $version_number)
452         ${if def:sender_address {(envelope-from <$sender_address>)
453         }}id $message_exim_id${if def:received_for {
454         for $received_for}}
455   ├──expanding: with $received_protocol 
456   ╰─────result: with local-esmtp 
457  ├──condition: def:tls_in_ver
458  ├─────result: false
459   ╭───scanning:  ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
460         }}(Exim $version_number)
461         ${if def:sender_address {(envelope-from <$sender_address>)
462         }}id $message_exim_id${if def:received_for {
463         for $received_for}}
464   ├──expanding:  ($tls_in_ver)
465   ├─────result:  ()
466   ╰───skipping: result is not used
467  ├──condition: def:sender_address
468  ├─────result: true
469   ╭considering: (envelope-from <$sender_address>)
470         }}id $message_exim_id${if def:received_for {
471         for $received_for}}
472   ├──expanding: (envelope-from <$sender_address>)
473         
474   ╰─────result: (envelope-from <CALLER@myhost.test.ex>)
475         
476  ├──condition: def:received_for
477  ├─────result: true
478   ╭considering: 
479         for $received_for}}
480   ├──expanding: 
481         for $received_for
482   ╰─────result: 
483         for usery@domain.com
484              ╰──(tainted)
485  ├──expanding: Received: ${if def:sender_rcvhost {from $sender_rcvhost
486         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
487         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
488         }}(Exim $version_number)
489         ${if def:sender_address {(envelope-from <$sender_address>)
490         }}id $message_exim_id${if def:received_for {
491         for $received_for}}
492  ╰─────result: Received: from CALLER (helo=myhost.test.ex)
493         by myhost.test.ex with local-esmtp (Exim x.yz)
494         (envelope-from <CALLER@myhost.test.ex>)
495         id 10HmaZ-0005vi-00
496         for usery@domain.com
497             ╰──(tainted)
498 ----------- start cutthrough headers send -----------
499 ----------- done cutthrough headers send ------------
500  ╭considering: ${tod_full}
501  ├──expanding: ${tod_full}
502  ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
503   SMTP>> .
504   SMTP<< 250 OK id=10HmbA-0005vi-00
505 LOG: MAIN
506   >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbA-0005vi-00"
507   SMTP>> QUIT
508   SMTP<< 221 myhost.test.ex closing connection
509   SMTP(close)>>
510 ----------- cutthrough shutdown (delivered) ------------
511 LOG: MAIN
512   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
513 LOG: MAIN
514   Completed
515 LOG: smtp_connection MAIN
516   SMTP connection from CALLER closed by QUIT
517 >>>>>>>>>>>>>>>> Exim pid=pppp (msg setup toplevel) terminating with rc=0 >>>>>>>>>>>>>>>>
518 Exim version x.yz ....
519 adding SSLKEYLOGFILE=TESTSUITE/spool/sslkeys
520 configuration file is TESTSUITE/test-config
521 admin user
522  in hosts_connection_nolog? no (option unset)
523 LOG: smtp_connection MAIN
524   SMTP connection from CALLER
525  ╭considering: $smtp_active_hostname ESMTP Exim $version_number $tod_full
526  ├──expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
527  ╰─────result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
528  in dsn_advertise_hosts? no (option unset)
529  in pipelining_advertise_hosts? yes (matched "*")
530  in chunking_advertise_hosts? no (end of list)
531  in tls_advertise_hosts? yes (matched "*")
532  ╭considering: ${if eq {SERVER}{server}{queue}{cutthrough}}
533   ╭considering: SERVER}{server}{queue}{cutthrough}}
534   ├──expanding: SERVER
535   ╰─────result: SERVER
536   ╭considering: server}{queue}{cutthrough}}
537   ├──expanding: server
538   ╰─────result: server
539  ├──condition: eq {SERVER}{server}
540  ├─────result: false
541   ╭───scanning: queue}{cutthrough}}
542   ├──expanding: queue
543   ├─────result: queue
544   ╰───skipping: result is not used
545   ╭considering: cutthrough}}
546   ├──expanding: cutthrough
547   ╰─────result: cutthrough
548  ├──expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
549  ╰─────result: cutthrough
550 using ACL "cutthrough"
551 processing "accept" (TESTSUITE/test-config 22)
552 check control = cutthrough_delivery
553 check verify = recipient
554 domain.com in "test.ex : *.test.ex"? no (end of list)
555 domain.com in "! +local_domains"? yes (end of list)
556  ╭considering: $local_part
557  ├──expanding: $local_part
558  ╰─────result: usery
559             ╰──(tainted)
560 domain.com in "*"? yes (matched "*")
561 ----------- end verify ------------
562 accept: condition test succeeded in ACL "cutthrough"
563 end of ACL "cutthrough": ACCEPT
564 ----------- start cutthrough setup ------------
565 domain.com in "test.ex : *.test.ex"? no (end of list)
566 domain.com in "! +local_domains"? yes (end of list)
567  ╭considering: $local_part
568  ├──expanding: $local_part
569  ╰─────result: usery
570             ╰──(tainted)
571 domain.com in "*"? yes (matched "*")
572 Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ...  connected
573  ╭considering: $primary_hostname
574  ├──expanding: $primary_hostname
575  ╰─────result: myhost.test.ex
576   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
577 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
578   SMTP>> EHLO myhost.test.ex
579 cmd buf flush ddd bytes
580   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
581          250-SIZE 52428800
582          250-8BITMIME
583          250-PIPELINING
584          250-STARTTLS
585          250 HELP
586  ╭considering: ${if eq {$address_data}{usery}{*}{:}}
587   ╭considering: $address_data}{usery}{*}{:}}
588   ├──expanding: $address_data
589   ╰─────result: usery
590              ╰──(tainted)
591   ╭considering: usery}{*}{:}}
592   ├──expanding: usery
593   ╰─────result: usery
594  ├──condition: eq {$address_data}{usery}
595  ├─────result: true
596   ╭considering: *}{:}}
597   ├──expanding: *
598   ╰─────result: *
599   ╭───scanning: :}}
600   ├──expanding: :
601   ├─────result: :
602   ╰───skipping: result is not used
603  ├──expanding: ${if eq {$address_data}{usery}{*}{:}}
604  ╰─────result: *
605 127.0.0.1 in hosts_avoid_tls? yes (matched "*")
606 127.0.0.1 in hosts_avoid_pipelining? no (option unset)
607 using PIPELINING
608 not using DSN
609 127.0.0.1 in hosts_require_auth? no (option unset)
610   SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
611   SMTP>> RCPT TO:<usery@domain.com>
612 cmd buf flush ddd bytes
613 sync_responses expect mail
614   SMTP<< 250 OK
615 sync_responses expect rcpt
616   SMTP<< 250 Accepted
617 holding verify callout open for cutthrough delivery
618 ----------- end cutthrough setup ------------
619 processing "accept" (TESTSUITE/test-config 55)
620 accept: condition test succeeded in inline ACL
621 end of inline ACL: ACCEPT
622   SMTP>> DATA
623   SMTP<< 354 Enter message, ending with "." on a line by itself
624  ╭considering: ${tod_full}
625  ├──expanding: ${tod_full}
626  ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
627  ╭considering: Received: ${if def:sender_rcvhost {from $sender_rcvhost
628         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
629         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
630         }}(Exim $version_number)
631         ${if def:sender_address {(envelope-from <$sender_address>)
632         }}id $message_exim_id${if def:received_for {
633         for $received_for}}
634  ├──condition: def:sender_rcvhost
635  ├─────result: false
636   ╭───scanning: from $sender_rcvhost
637         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
638         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
639         }}(Exim $version_number)
640         ${if def:sender_address {(envelope-from <$sender_address>)
641         }}id $message_exim_id${if def:received_for {
642         for $received_for}}
643   ├──expanding: from $sender_rcvhost
644         
645   ├─────result: from 
646         
647   ╰───skipping: result is not used
648   ╭considering: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
649         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
650         }}(Exim $version_number)
651         ${if def:sender_address {(envelope-from <$sender_address>)
652         }}id $message_exim_id${if def:received_for {
653         for $received_for}}
654   ├──condition: def:sender_ident
655   ├─────result: true
656    ╭considering: from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
657         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
658         }}(Exim $version_number)
659         ${if def:sender_address {(envelope-from <$sender_address>)
660         }}id $message_exim_id${if def:received_for {
661         for $received_for}}
662    ╎╭considering: $sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
663    ╎  }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
664    ╎  }}(Exim $version_number)
665    ╎  ${if def:sender_address {(envelope-from <$sender_address>)
666    ╎  }}id $message_exim_id${if def:received_for {
667    ╎  for $received_for}}
668    ╎├──expanding: $sender_ident
669    ╎╰─────result: CALLER
670    ├──expanding: from ${quote_local_part:$sender_ident} 
671    ╰─────result: from CALLER 
672   ├──condition: def:sender_helo_name
673   ├─────result: true
674    ╭considering: (helo=$sender_helo_name)
675         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
676         }}(Exim $version_number)
677         ${if def:sender_address {(envelope-from <$sender_address>)
678         }}id $message_exim_id${if def:received_for {
679         for $received_for}}
680    ├──expanding: (helo=$sender_helo_name)
681         
682    ╰─────result: (helo=myhost.test.ex)
683         
684               ╰──(tainted)
685   ├──expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
686         }}
687   ╰─────result: from CALLER (helo=myhost.test.ex)
688         
689              ╰──(tainted)
690  ├──condition: def:received_protocol
691  ├─────result: true
692   ╭considering: with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
693         }}(Exim $version_number)
694         ${if def:sender_address {(envelope-from <$sender_address>)
695         }}id $message_exim_id${if def:received_for {
696         for $received_for}}
697   ├──expanding: with $received_protocol 
698   ╰─────result: with local-esmtp 
699  ├──condition: def:tls_in_ver
700  ├─────result: false
701   ╭───scanning:  ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
702         }}(Exim $version_number)
703         ${if def:sender_address {(envelope-from <$sender_address>)
704         }}id $message_exim_id${if def:received_for {
705         for $received_for}}
706   ├──expanding:  ($tls_in_ver)
707   ├─────result:  ()
708   ╰───skipping: result is not used
709  ├──condition: def:sender_address
710  ├─────result: true
711   ╭considering: (envelope-from <$sender_address>)
712         }}id $message_exim_id${if def:received_for {
713         for $received_for}}
714   ├──expanding: (envelope-from <$sender_address>)
715         
716   ╰─────result: (envelope-from <CALLER@myhost.test.ex>)
717         
718  ├──condition: def:received_for
719  ├─────result: true
720   ╭considering: 
721         for $received_for}}
722   ├──expanding: 
723         for $received_for
724   ╰─────result: 
725         for usery@domain.com
726              ╰──(tainted)
727  ├──expanding: Received: ${if def:sender_rcvhost {from $sender_rcvhost
728         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
729         }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
730         }}(Exim $version_number)
731         ${if def:sender_address {(envelope-from <$sender_address>)
732         }}id $message_exim_id${if def:received_for {
733         for $received_for}}
734  ╰─────result: Received: from CALLER (helo=myhost.test.ex)
735         by myhost.test.ex with local-esmtp (Exim x.yz)
736         (envelope-from <CALLER@myhost.test.ex>)
737         id 10HmbB-0005vi-00
738         for usery@domain.com
739             ╰──(tainted)
740 ----------- start cutthrough headers send -----------
741 ----------- done cutthrough headers send ------------
742  ╭considering: ${tod_full}
743  ├──expanding: ${tod_full}
744  ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
745   SMTP>> .
746   SMTP<< 250 OK id=10HmbC-0005vi-00
747 LOG: MAIN
748   >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbC-0005vi-00"
749   SMTP>> QUIT
750   SMTP<< 221 myhost.test.ex closing connection
751   SMTP(close)>>
752 ----------- cutthrough shutdown (delivered) ------------
753 LOG: MAIN
754   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
755 LOG: MAIN
756   Completed
757 LOG: smtp_connection MAIN
758   SMTP connection from CALLER closed by QUIT
759 >>>>>>>>>>>>>>>> Exim pid=pppp (msg setup toplevel) terminating with rc=0 >>>>>>>>>>>>>>>>
760
761 ******** SERVER ********