CHUNKING: handle protocol errors during reception
[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  ├considering:  ESMTP Exim $version_number $tod_full
10  ├───────text:  ESMTP Exim 
11  ├considering: $version_number $tod_full
12  ├considering:  $tod_full
13  ├───────text:  
14  ├considering: $tod_full
15  ├──expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
16  ╰─────result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
17  in dsn_advertise_hosts? no (option unset)
18  in pipelining_advertise_hosts? yes (matched "*")
19  in chunking_advertise_hosts? no (end of list)
20  in tls_advertise_hosts? yes (matched "*")
21  ╭considering: ${if eq {SERVER}{server}{queue}{cutthrough}}
22   ╭considering: SERVER}{server}{queue}{cutthrough}}
23   ├───────text: SERVER
24   ├considering: }{server}{queue}{cutthrough}}
25   ├──expanding: SERVER
26   ╰─────result: SERVER
27   ╭considering: server}{queue}{cutthrough}}
28   ├───────text: server
29   ├considering: }{queue}{cutthrough}}
30   ├──expanding: server
31   ╰─────result: server
32  ├──condition: eq {SERVER}{server}
33  ├─────result: false
34   ╭───scanning: queue}{cutthrough}}
35   ├───────text: queue
36   ├───scanning: }{cutthrough}}
37   ├──expanding: queue
38   ├─────result: queue
39   ╰───skipping: result is not used
40   ╭considering: cutthrough}}
41   ├───────text: cutthrough
42   ├considering: }}
43   ├──expanding: cutthrough
44   ╰─────result: cutthrough
45  ├──expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
46  ╰─────result: cutthrough
47 using ACL "cutthrough"
48 processing "accept" (TESTSUITE/test-config 22)
49 check control = cutthrough_delivery
50 check verify = recipient
51 domain.com in "test.ex : *.test.ex"? no (end of list)
52 domain.com in "! +local_domains"? yes (end of list)
53  ╭considering: $local_part
54  ├──expanding: $local_part
55  ╰─────result: userx
56             ╰──(tainted)
57 domain.com in "*"? yes (matched "*")
58 ----------- end verify ------------
59 accept: condition test succeeded in ACL "cutthrough"
60 end of ACL "cutthrough": ACCEPT
61 ----------- start cutthrough setup ------------
62 domain.com in "test.ex : *.test.ex"? no (end of list)
63 domain.com in "! +local_domains"? yes (end of list)
64  ╭considering: $local_part
65  ├──expanding: $local_part
66  ╰─────result: userx
67             ╰──(tainted)
68 domain.com in "*"? yes (matched "*")
69 Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ...  connected
70  ╭considering: $primary_hostname
71  ├──expanding: $primary_hostname
72  ╰─────result: myhost.test.ex
73   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
74 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
75   SMTP>> EHLO myhost.test.ex
76 cmd buf flush ddd bytes
77   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
78          250-SIZE 52428800
79          250-8BITMIME
80          250-PIPELINING
81          250-STARTTLS
82          250 HELP
83  ╭considering: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
84   ╭considering: $host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
85   ├considering: }{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
86   ├──expanding: $host
87   ╰─────result: 127.0.0.1
88   ╭considering: .outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
89   ├───────text: .outlook.com
90   ├considering: \$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
91   ├backslashed: '\$'
92   ├considering: }} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
93   ├──expanding: .outlook.com\$
94   ╰─────result: .outlook.com$
95   ╭───scanning: $item}{\N^250-([\w.]+)\s\N}}} {$1}}
96   ├───scanning: }{\N^250-([\w.]+)\s\N}}} {$1}}
97   ├──expanding: $item
98   ├─────result: 
99   ╰───skipping: result is not used
100   ╭───scanning: \N^250-([\w.]+)\s\N}}} {$1}}
101   ├──protected: ^250-([\w.]+)\s
102   ├───scanning: }}} {$1}}
103   ├──expanding: \N^250-([\w.]+)\s\N
104   ├─────result: ^250-([\w.]+)\s
105   ╰───skipping: result is not used
106  ├──condition: and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}}
107  ├─────result: false
108   ╭───scanning: $1}}
109   ├───scanning: }}
110   ├──expanding: $1
111   ├─────result: 
112   ╰───skipping: result is not used
113  ├──expanding: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
114  ╰─────result: 
115  ╭considering: ${if eq {$address_data}{usery}{*}{:}}
116   ╭considering: $address_data}{usery}{*}{:}}
117   ├considering: }{usery}{*}{:}}
118   ├──expanding: $address_data
119   ╰─────result: userx
120              ╰──(tainted)
121   ╭considering: usery}{*}{:}}
122   ├───────text: usery
123   ├considering: }{*}{:}}
124   ├──expanding: usery
125   ╰─────result: usery
126  ├──condition: eq {$address_data}{usery}
127  ├─────result: false
128   ╭───scanning: *}{:}}
129   ├───────text: *
130   ├───scanning: }{:}}
131   ├──expanding: *
132   ├─────result: *
133   ╰───skipping: result is not used
134   ╭considering: :}}
135   ├───────text: :
136   ├considering: }}
137   ├──expanding: :
138   ╰─────result: :
139  ├──expanding: ${if eq {$address_data}{usery}{*}{:}}
140  ╰─────result: :
141 127.0.0.1 in hosts_avoid_tls? no (end of list)
142  ╭considering: ${if eq {$address_data}{userz}{*}{:}}
143   ╭considering: $address_data}{userz}{*}{:}}
144   ├considering: }{userz}{*}{:}}
145   ├──expanding: $address_data
146   ╰─────result: userx
147              ╰──(tainted)
148   ╭considering: userz}{*}{:}}
149   ├───────text: userz
150   ├considering: }{*}{:}}
151   ├──expanding: userz
152   ╰─────result: userz
153  ├──condition: eq {$address_data}{userz}
154  ├─────result: false
155   ╭───scanning: *}{:}}
156   ├───────text: *
157   ├───scanning: }{:}}
158   ├──expanding: *
159   ├─────result: *
160   ╰───skipping: result is not used
161   ╭considering: :}}
162   ├───────text: :
163   ├considering: }}
164   ├──expanding: :
165   ╰─────result: :
166  ├──expanding: ${if eq {$address_data}{userz}{*}{:}}
167  ╰─────result: :
168 127.0.0.1 in hosts_verify_avoid_tls? no (end of list)
169   SMTP>> STARTTLS
170 cmd buf flush ddd bytes
171   SMTP<< 220 TLS go ahead
172 127.0.0.1 in tls_verify_hosts? no (option unset)
173 127.0.0.1 in tls_try_verify_hosts? yes (matched "*")
174 127.0.0.1 in tls_verify_cert_hostnames? yes (matched "*")
175   SMTP>> EHLO myhost.test.ex
176 cmd buf flush ddd bytes
177   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
178          250-SIZE 52428800
179          250-8BITMIME
180          250-PIPELINING
181          250 HELP
182 127.0.0.1 in hosts_avoid_pipelining? no (option unset)
183 using PIPELINING
184 not using DSN
185 127.0.0.1 in hosts_require_auth? no (option unset)
186   SMTP|> MAIL FROM:<CALLER@myhost.test.ex>
187   SMTP>> RCPT TO:<userx@domain.com>
188 cmd buf flush ddd bytes
189 sync_responses expect mail
190   SMTP<< 250 OK
191 sync_responses expect rcpt for userx@domain.com
192   SMTP<< 250 Accepted
193 holding verify callout open for cutthrough delivery
194 ----------- end cutthrough setup ------------
195 processing "accept" (TESTSUITE/test-config 55)
196 accept: condition test succeeded in inline ACL
197 end of inline ACL: ACCEPT
198   SMTP>> DATA
199   SMTP<< 354 Enter message, ending with "." on a line by itself
200  ╭considering: ${tod_full}
201  ├──expanding: ${tod_full}
202  ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
203  ╭considering: Received: ${if def:sender_rcvhost {from $sender_rcvhost
204         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
205         }}}}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
206         }}(Exim $version_number)
207         ${if def:sender_address {(envelope-from <$sender_address>)
208         }}id $message_exim_id${if def:received_for {
209         for $received_for}}
210  ├───────text: Received: 
211  ├considering: ${if def:sender_rcvhost {from $sender_rcvhost
212         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
213         }}}}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
214         }}(Exim $version_number)
215         ${if def:sender_address {(envelope-from <$sender_address>)
216         }}id $message_exim_id${if def:received_for {
217         for $received_for}}
218  ├──condition: def:sender_rcvhost
219  ├─────result: false
220   ╭───scanning: from $sender_rcvhost
221         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
222         }}}}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
223         }}(Exim $version_number)
224         ${if def:sender_address {(envelope-from <$sender_address>)
225         }}id $message_exim_id${if def:received_for {
226         for $received_for}}
227   ├───────text: from 
228   ├───scanning: $sender_rcvhost
229         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
230         }}}}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
231         }}(Exim $version_number)
232         ${if def:sender_address {(envelope-from <$sender_address>)
233         }}id $message_exim_id${if def:received_for {
234         for $received_for}}
235   ├───scanning: 
236         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
237         }}}}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
238         }}(Exim $version_number)
239         ${if def:sender_address {(envelope-from <$sender_address>)
240         }}id $message_exim_id${if def:received_for {
241         for $received_for}}
242   ├───────text: 
243         
244   ├───scanning: }{${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   ├──expanding: from $sender_rcvhost
251         
252   ├─────result: from 
253         
254   ╰───skipping: result is not used
255   ╭considering: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
256         }}}}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
257         }}(Exim $version_number)
258         ${if def:sender_address {(envelope-from <$sender_address>)
259         }}id $message_exim_id${if def:received_for {
260         for $received_for}}
261   ├──condition: def:sender_ident
262   ├─────result: true
263    ╭considering: from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
264         }}}}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
265         }}(Exim $version_number)
266         ${if def:sender_address {(envelope-from <$sender_address>)
267         }}id $message_exim_id${if def:received_for {
268         for $received_for}}
269    ├───────text: from 
270    ├considering: ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
271         }}}}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
272         }}(Exim $version_number)
273         ${if def:sender_address {(envelope-from <$sender_address>)
274         }}id $message_exim_id${if def:received_for {
275         for $received_for}}
276    ╎╭considering: $sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
277    ╎  }}}}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
278    ╎  }}(Exim $version_number)
279    ╎  ${if def:sender_address {(envelope-from <$sender_address>)
280    ╎  }}id $message_exim_id${if def:received_for {
281    ╎  for $received_for}}
282    ╎├considering: } }}${if def:sender_helo_name {(helo=$sender_helo_name)
283    ╎  }}}}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
284    ╎  }}(Exim $version_number)
285    ╎  ${if def:sender_address {(envelope-from <$sender_address>)
286    ╎  }}id $message_exim_id${if def:received_for {
287    ╎  for $received_for}}
288    ╎├──expanding: $sender_ident
289    ╎╰─────result: CALLER
290    ├─────op-res: CALLER
291    ├considering:  }}${if def:sender_helo_name {(helo=$sender_helo_name)
292         }}}}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
293         }}(Exim $version_number)
294         ${if def:sender_address {(envelope-from <$sender_address>)
295         }}id $message_exim_id${if def:received_for {
296         for $received_for}}
297    ├───────text:  
298    ├considering: }}${if def:sender_helo_name {(helo=$sender_helo_name)
299         }}}}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
300         }}(Exim $version_number)
301         ${if def:sender_address {(envelope-from <$sender_address>)
302         }}id $message_exim_id${if def:received_for {
303         for $received_for}}
304    ├──expanding: from ${quote_local_part:$sender_ident} 
305    ╰─────result: from CALLER 
306   ├───item-res: from CALLER 
307   ├considering: ${if def:sender_helo_name {(helo=$sender_helo_name)
308         }}}}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
309         }}(Exim $version_number)
310         ${if def:sender_address {(envelope-from <$sender_address>)
311         }}id $message_exim_id${if def:received_for {
312         for $received_for}}
313   ├──condition: def:sender_helo_name
314   ├─────result: true
315    ╭considering: (helo=$sender_helo_name)
316         }}}}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
317         }}(Exim $version_number)
318         ${if def:sender_address {(envelope-from <$sender_address>)
319         }}id $message_exim_id${if def:received_for {
320         for $received_for}}
321    ├───────text: (helo=
322    ├considering: $sender_helo_name)
323         }}}}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
324         }}(Exim $version_number)
325         ${if def:sender_address {(envelope-from <$sender_address>)
326         }}id $message_exim_id${if def:received_for {
327         for $received_for}}
328    ├considering: )
329         }}}}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
330         }}(Exim $version_number)
331         ${if def:sender_address {(envelope-from <$sender_address>)
332         }}id $message_exim_id${if def:received_for {
333         for $received_for}}
334    ├───────text: )
335         
336    ├considering: }}}}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
337         }}(Exim $version_number)
338         ${if def:sender_address {(envelope-from <$sender_address>)
339         }}id $message_exim_id${if def:received_for {
340         for $received_for}}
341    ├──expanding: (helo=$sender_helo_name)
342         
343    ╰─────result: (helo=myhost.test.ex)
344         
345               ╰──(tainted)
346   ├───item-res: (helo=myhost.test.ex)
347         
348              ╰──(tainted)
349   ├considering: }}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
350         }}(Exim $version_number)
351         ${if def:sender_address {(envelope-from <$sender_address>)
352         }}id $message_exim_id${if def:received_for {
353         for $received_for}}
354   ├──expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
355         }}
356   ╰─────result: from CALLER (helo=myhost.test.ex)
357         
358              ╰──(tainted)
359  ├───item-res: from CALLER (helo=myhost.test.ex)
360         
361             ╰──(tainted)
362  ├considering: 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
363         }}(Exim $version_number)
364         ${if def:sender_address {(envelope-from <$sender_address>)
365         }}id $message_exim_id${if def:received_for {
366         for $received_for}}
367  ├───────text: by 
368  ├considering: $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
369         }}(Exim $version_number)
370         ${if def:sender_address {(envelope-from <$sender_address>)
371         }}id $message_exim_id${if def:received_for {
372         for $received_for}}
373  ├considering:  ${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
374         }}(Exim $version_number)
375         ${if def:sender_address {(envelope-from <$sender_address>)
376         }}id $message_exim_id${if def:received_for {
377         for $received_for}}
378  ├───────text:  
379  ├considering: ${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
380         }}(Exim $version_number)
381         ${if def:sender_address {(envelope-from <$sender_address>)
382         }}id $message_exim_id${if def:received_for {
383         for $received_for}}
384  ├──condition: def:received_protocol
385  ├─────result: true
386   ╭considering: with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
387         }}(Exim $version_number)
388         ${if def:sender_address {(envelope-from <$sender_address>)
389         }}id $message_exim_id${if def:received_for {
390         for $received_for}}
391   ├───────text: with 
392   ├considering: $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
393         }}(Exim $version_number)
394         ${if def:sender_address {(envelope-from <$sender_address>)
395         }}id $message_exim_id${if def:received_for {
396         for $received_for}}
397   ├considering:  }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
398         }}(Exim $version_number)
399         ${if def:sender_address {(envelope-from <$sender_address>)
400         }}id $message_exim_id${if def:received_for {
401         for $received_for}}
402   ├───────text:  
403   ├considering: }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
404         }}(Exim $version_number)
405         ${if def:sender_address {(envelope-from <$sender_address>)
406         }}id $message_exim_id${if def:received_for {
407         for $received_for}}
408   ├──expanding: with $received_protocol 
409   ╰─────result: with local-esmtp 
410  ├───item-res: with local-esmtp 
411             ╰──(tainted)
412  ├considering: ${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
413         }}(Exim $version_number)
414         ${if def:sender_address {(envelope-from <$sender_address>)
415         }}id $message_exim_id${if def:received_for {
416         for $received_for}}
417         }}id $message_exim_id${if def:received_for {
418         for $received_for}}
419   ├──expanding:  ($tls_in_ver)
420   ├─────result:  ()
421   ╰───skipping: result is not used
422  ├───item-res: 
423             ╰──(tainted)
424  ├considering: ${if def:tls_in_cipher_std { tls $tls_in_cipher_std
425         }}(Exim $version_number)
426         ${if def:sender_address {(envelope-from <$sender_address>)
427         }}id $message_exim_id${if def:received_for {
428         for $received_for}}
429  ├──condition: def:tls_in_cipher_std
430  ├─────result: false
431   ╭───scanning:  tls $tls_in_cipher_std
432         }}(Exim $version_number)
433         ${if def:sender_address {(envelope-from <$sender_address>)
434         }}id $message_exim_id${if def:received_for {
435         for $received_for}}
436   ├───────text:  tls 
437   ├───scanning: $tls_in_cipher_std
438         }}(Exim $version_number)
439         ${if def:sender_address {(envelope-from <$sender_address>)
440         }}id $message_exim_id${if def:received_for {
441         for $received_for}}
442   ├───scanning: 
443         }}(Exim $version_number)
444         ${if def:sender_address {(envelope-from <$sender_address>)
445         }}id $message_exim_id${if def:received_for {
446         for $received_for}}
447   ├───────text: 
448         
449   ├───scanning: }}(Exim $version_number)
450         ${if def:sender_address {(envelope-from <$sender_address>)
451         }}id $message_exim_id${if def:received_for {
452         for $received_for}}
453   ├──expanding:  tls $tls_in_cipher_std
454         
455   ├─────result:  tls 
456         
457   ╰───skipping: result is not used
458  ├───item-res: 
459             ╰──(tainted)
460  ├considering: (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  ├───────text: (Exim 
465  ├considering: $version_number)
466         ${if def:sender_address {(envelope-from <$sender_address>)
467         }}id $message_exim_id${if def:received_for {
468         for $received_for}}
469  ├considering: )
470         ${if def:sender_address {(envelope-from <$sender_address>)
471         }}id $message_exim_id${if def:received_for {
472         for $received_for}}
473  ├───────text: )
474         
475  ├considering: ${if def:sender_address {(envelope-from <$sender_address>)
476         }}id $message_exim_id${if def:received_for {
477         for $received_for}}
478  ├──condition: def:sender_address
479  ├─────result: true
480   ╭considering: (envelope-from <$sender_address>)
481         }}id $message_exim_id${if def:received_for {
482         for $received_for}}
483   ├───────text: (envelope-from <
484   ├considering: $sender_address>)
485         }}id $message_exim_id${if def:received_for {
486         for $received_for}}
487   ├considering: >)
488         }}id $message_exim_id${if def:received_for {
489         for $received_for}}
490   ├───────text: >)
491         
492   ├considering: }}id $message_exim_id${if def:received_for {
493         for $received_for}}
494   ├──expanding: (envelope-from <$sender_address>)
495         
496   ╰─────result: (envelope-from <CALLER@myhost.test.ex>)
497         
498  ├───item-res: (envelope-from <CALLER@myhost.test.ex>)
499         
500             ╰──(tainted)
501  ├considering: id $message_exim_id${if def:received_for {
502         for $received_for}}
503  ├───────text: id 
504  ├considering: $message_exim_id${if def:received_for {
505         for $received_for}}
506  ├considering: ${if def:received_for {
507         for $received_for}}
508  ├──condition: def:received_for
509  ├─────result: true
510   ╭considering: 
511         for $received_for}}
512   ├───────text: 
513         for 
514   ├considering: $received_for}}
515   ├considering: }}
516   ├──expanding: 
517         for $received_for
518   ╰─────result: 
519         for userx@domain.com
520              ╰──(tainted)
521  ├───item-res: 
522         for userx@domain.com
523             ╰──(tainted)
524  ├──expanding: Received: ${if def:sender_rcvhost {from $sender_rcvhost
525         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
526         }}}}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
527         }}(Exim $version_number)
528         ${if def:sender_address {(envelope-from <$sender_address>)
529         }}id $message_exim_id${if def:received_for {
530         for $received_for}}
531  ╰─────result: Received: from CALLER (helo=myhost.test.ex)
532         by myhost.test.ex with local-esmtp (Exim x.yz)
533         (envelope-from <CALLER@myhost.test.ex>)
534         id 10HmaX-0005vi-00
535         for userx@domain.com
536             ╰──(tainted)
537 ----------- start cutthrough headers send -----------
538 ----------- done cutthrough headers send ------------
539  ╭considering: ${tod_full}
540  ├──expanding: ${tod_full}
541  ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
542   SMTP>> .
543   SMTP<< 250 OK id=10HmaY-0005vi-00
544 LOG: MAIN
545   >> 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"
546   SMTP>> QUIT
547   SMTP<< 221 myhost.test.ex closing connection
548   SMTP(close)>>
549 cmdlog: '220:EHLO:250-:STARTTLS:220:EHLO:250-:MAIL|:RCPT:250:250:DATA:354:250:QUIT:221'
550 ----------- cutthrough shutdown (delivered) ------------
551 LOG: MAIN
552   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
553 LOG: MAIN
554   Completed
555 LOG: smtp_connection MAIN
556   SMTP connection from CALLER closed by QUIT
557 >>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
558 Exim version x.yz ....
559 adding SSLKEYLOGFILE=TESTSUITE/spool/sslkeys
560 configuration file is TESTSUITE/test-config
561 admin user
562  in hosts_connection_nolog? no (option unset)
563 LOG: smtp_connection MAIN
564   SMTP connection from CALLER
565  ╭considering: $smtp_active_hostname ESMTP Exim $version_number $tod_full
566  ├considering:  ESMTP Exim $version_number $tod_full
567  ├───────text:  ESMTP Exim 
568  ├considering: $version_number $tod_full
569  ├considering:  $tod_full
570  ├───────text:  
571  ├considering: $tod_full
572  ├──expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
573  ╰─────result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
574  in dsn_advertise_hosts? no (option unset)
575  in pipelining_advertise_hosts? yes (matched "*")
576  in chunking_advertise_hosts? no (end of list)
577  in tls_advertise_hosts? yes (matched "*")
578  ╭considering: ${if eq {SERVER}{server}{queue}{cutthrough}}
579   ╭considering: SERVER}{server}{queue}{cutthrough}}
580   ├───────text: SERVER
581   ├considering: }{server}{queue}{cutthrough}}
582   ├──expanding: SERVER
583   ╰─────result: SERVER
584   ╭considering: server}{queue}{cutthrough}}
585   ├───────text: server
586   ├considering: }{queue}{cutthrough}}
587   ├──expanding: server
588   ╰─────result: server
589  ├──condition: eq {SERVER}{server}
590  ├─────result: false
591   ╭───scanning: queue}{cutthrough}}
592   ├───────text: queue
593   ├───scanning: }{cutthrough}}
594   ├──expanding: queue
595   ├─────result: queue
596   ╰───skipping: result is not used
597   ╭considering: cutthrough}}
598   ├───────text: cutthrough
599   ├considering: }}
600   ├──expanding: cutthrough
601   ╰─────result: cutthrough
602  ├──expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
603  ╰─────result: cutthrough
604 using ACL "cutthrough"
605 processing "accept" (TESTSUITE/test-config 22)
606 check control = cutthrough_delivery
607 check verify = recipient
608 domain.com in "test.ex : *.test.ex"? no (end of list)
609 domain.com in "! +local_domains"? yes (end of list)
610  ╭considering: $local_part
611  ├──expanding: $local_part
612  ╰─────result: usery
613             ╰──(tainted)
614 domain.com in "*"? yes (matched "*")
615 ----------- end verify ------------
616 accept: condition test succeeded in ACL "cutthrough"
617 end of ACL "cutthrough": ACCEPT
618 ----------- start cutthrough setup ------------
619 domain.com in "test.ex : *.test.ex"? no (end of list)
620 domain.com in "! +local_domains"? yes (end of list)
621  ╭considering: $local_part
622  ├──expanding: $local_part
623  ╰─────result: usery
624             ╰──(tainted)
625 domain.com in "*"? yes (matched "*")
626 Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ...  connected
627  ╭considering: $primary_hostname
628  ├──expanding: $primary_hostname
629  ╰─────result: myhost.test.ex
630   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
631 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
632   SMTP>> EHLO myhost.test.ex
633 cmd buf flush ddd bytes
634   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
635          250-SIZE 52428800
636          250-8BITMIME
637          250-PIPELINING
638          250-STARTTLS
639          250 HELP
640  ╭considering: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
641   ╭considering: $host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
642   ├considering: }{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
643   ├──expanding: $host
644   ╰─────result: 127.0.0.1
645   ╭considering: .outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
646   ├───────text: .outlook.com
647   ├considering: \$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
648   ├backslashed: '\$'
649   ├considering: }} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
650   ├──expanding: .outlook.com\$
651   ╰─────result: .outlook.com$
652   ╭───scanning: $item}{\N^250-([\w.]+)\s\N}}} {$1}}
653   ├───scanning: }{\N^250-([\w.]+)\s\N}}} {$1}}
654   ├──expanding: $item
655   ├─────result: 
656   ╰───skipping: result is not used
657   ╭───scanning: \N^250-([\w.]+)\s\N}}} {$1}}
658   ├──protected: ^250-([\w.]+)\s
659   ├───scanning: }}} {$1}}
660   ├──expanding: \N^250-([\w.]+)\s\N
661   ├─────result: ^250-([\w.]+)\s
662   ╰───skipping: result is not used
663  ├──condition: and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}}
664  ├─────result: false
665   ╭───scanning: $1}}
666   ├───scanning: }}
667   ├──expanding: $1
668   ├─────result: 
669   ╰───skipping: result is not used
670  ├──expanding: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
671  ╰─────result: 
672  ╭considering: ${if eq {$address_data}{usery}{*}{:}}
673   ╭considering: $address_data}{usery}{*}{:}}
674   ├considering: }{usery}{*}{:}}
675   ├──expanding: $address_data
676   ╰─────result: usery
677              ╰──(tainted)
678   ╭considering: usery}{*}{:}}
679   ├───────text: usery
680   ├considering: }{*}{:}}
681   ├──expanding: usery
682   ╰─────result: usery
683  ├──condition: eq {$address_data}{usery}
684  ├─────result: true
685   ╭considering: *}{:}}
686   ├───────text: *
687   ├considering: }{:}}
688   ├──expanding: *
689   ╰─────result: *
690   ╭───scanning: :}}
691   ├───────text: :
692   ├───scanning: }}
693   ├──expanding: :
694   ├─────result: :
695   ╰───skipping: result is not used
696  ├──expanding: ${if eq {$address_data}{usery}{*}{:}}
697  ╰─────result: *
698 127.0.0.1 in hosts_avoid_tls? yes (matched "*")
699 127.0.0.1 in hosts_avoid_pipelining? no (option unset)
700 using PIPELINING
701 not using DSN
702 127.0.0.1 in hosts_require_auth? no (option unset)
703   SMTP|> MAIL FROM:<CALLER@myhost.test.ex>
704   SMTP>> RCPT TO:<usery@domain.com>
705 cmd buf flush ddd bytes
706 sync_responses expect mail
707   SMTP<< 250 OK
708 sync_responses expect rcpt for usery@domain.com
709   SMTP<< 250 Accepted
710 holding verify callout open for cutthrough delivery
711 ----------- end cutthrough setup ------------
712 processing "accept" (TESTSUITE/test-config 55)
713 accept: condition test succeeded in inline ACL
714 end of inline ACL: ACCEPT
715   SMTP>> DATA
716   SMTP<< 354 Enter message, ending with "." on a line by itself
717  ╭considering: ${tod_full}
718  ├──expanding: ${tod_full}
719  ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
720  ╭considering: Received: ${if def:sender_rcvhost {from $sender_rcvhost
721         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
722         }}}}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
723         }}(Exim $version_number)
724         ${if def:sender_address {(envelope-from <$sender_address>)
725         }}id $message_exim_id${if def:received_for {
726         for $received_for}}
727  ├───────text: Received: 
728  ├considering: ${if def:sender_rcvhost {from $sender_rcvhost
729         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
730         }}}}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
731         }}(Exim $version_number)
732         ${if def:sender_address {(envelope-from <$sender_address>)
733         }}id $message_exim_id${if def:received_for {
734         for $received_for}}
735  ├──condition: def:sender_rcvhost
736  ├─────result: false
737   ╭───scanning: from $sender_rcvhost
738         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
739         }}}}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
740         }}(Exim $version_number)
741         ${if def:sender_address {(envelope-from <$sender_address>)
742         }}id $message_exim_id${if def:received_for {
743         for $received_for}}
744   ├───────text: from 
745   ├───scanning: $sender_rcvhost
746         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
747         }}}}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
748         }}(Exim $version_number)
749         ${if def:sender_address {(envelope-from <$sender_address>)
750         }}id $message_exim_id${if def:received_for {
751         for $received_for}}
752   ├───scanning: 
753         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
754         }}}}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
755         }}(Exim $version_number)
756         ${if def:sender_address {(envelope-from <$sender_address>)
757         }}id $message_exim_id${if def:received_for {
758         for $received_for}}
759   ├───────text: 
760         
761   ├───scanning: }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
762         }}}}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
763         }}(Exim $version_number)
764         ${if def:sender_address {(envelope-from <$sender_address>)
765         }}id $message_exim_id${if def:received_for {
766         for $received_for}}
767   ├──expanding: from $sender_rcvhost
768         
769   ├─────result: from 
770         
771   ╰───skipping: result is not used
772   ╭considering: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
773         }}}}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
774         }}(Exim $version_number)
775         ${if def:sender_address {(envelope-from <$sender_address>)
776         }}id $message_exim_id${if def:received_for {
777         for $received_for}}
778   ├──condition: def:sender_ident
779   ├─────result: true
780    ╭considering: from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
781         }}}}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
782         }}(Exim $version_number)
783         ${if def:sender_address {(envelope-from <$sender_address>)
784         }}id $message_exim_id${if def:received_for {
785         for $received_for}}
786    ├───────text: from 
787    ├considering: ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
788         }}}}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
789         }}(Exim $version_number)
790         ${if def:sender_address {(envelope-from <$sender_address>)
791         }}id $message_exim_id${if def:received_for {
792         for $received_for}}
793    ╎╭considering: $sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
794    ╎  }}}}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
795    ╎  }}(Exim $version_number)
796    ╎  ${if def:sender_address {(envelope-from <$sender_address>)
797    ╎  }}id $message_exim_id${if def:received_for {
798    ╎  for $received_for}}
799    ╎├considering: } }}${if def:sender_helo_name {(helo=$sender_helo_name)
800    ╎  }}}}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
801    ╎  }}(Exim $version_number)
802    ╎  ${if def:sender_address {(envelope-from <$sender_address>)
803    ╎  }}id $message_exim_id${if def:received_for {
804    ╎  for $received_for}}
805    ╎├──expanding: $sender_ident
806    ╎╰─────result: CALLER
807    ├─────op-res: CALLER
808    ├considering:  }}${if def:sender_helo_name {(helo=$sender_helo_name)
809         }}}}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
810         }}(Exim $version_number)
811         ${if def:sender_address {(envelope-from <$sender_address>)
812         }}id $message_exim_id${if def:received_for {
813         for $received_for}}
814    ├───────text:  
815    ├considering: }}${if def:sender_helo_name {(helo=$sender_helo_name)
816         }}}}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
817         }}(Exim $version_number)
818         ${if def:sender_address {(envelope-from <$sender_address>)
819         }}id $message_exim_id${if def:received_for {
820         for $received_for}}
821    ├──expanding: from ${quote_local_part:$sender_ident} 
822    ╰─────result: from CALLER 
823   ├───item-res: from CALLER 
824   ├considering: ${if def:sender_helo_name {(helo=$sender_helo_name)
825         }}}}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
826         }}(Exim $version_number)
827         ${if def:sender_address {(envelope-from <$sender_address>)
828         }}id $message_exim_id${if def:received_for {
829         for $received_for}}
830   ├──condition: def:sender_helo_name
831   ├─────result: true
832    ╭considering: (helo=$sender_helo_name)
833         }}}}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
834         }}(Exim $version_number)
835         ${if def:sender_address {(envelope-from <$sender_address>)
836         }}id $message_exim_id${if def:received_for {
837         for $received_for}}
838    ├───────text: (helo=
839    ├considering: $sender_helo_name)
840         }}}}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
841         }}(Exim $version_number)
842         ${if def:sender_address {(envelope-from <$sender_address>)
843         }}id $message_exim_id${if def:received_for {
844         for $received_for}}
845    ├considering: )
846         }}}}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
847         }}(Exim $version_number)
848         ${if def:sender_address {(envelope-from <$sender_address>)
849         }}id $message_exim_id${if def:received_for {
850         for $received_for}}
851    ├───────text: )
852         
853    ├considering: }}}}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
854         }}(Exim $version_number)
855         ${if def:sender_address {(envelope-from <$sender_address>)
856         }}id $message_exim_id${if def:received_for {
857         for $received_for}}
858    ├──expanding: (helo=$sender_helo_name)
859         
860    ╰─────result: (helo=myhost.test.ex)
861         
862               ╰──(tainted)
863   ├───item-res: (helo=myhost.test.ex)
864         
865              ╰──(tainted)
866   ├considering: }}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
867         }}(Exim $version_number)
868         ${if def:sender_address {(envelope-from <$sender_address>)
869         }}id $message_exim_id${if def:received_for {
870         for $received_for}}
871   ├──expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
872         }}
873   ╰─────result: from CALLER (helo=myhost.test.ex)
874         
875              ╰──(tainted)
876  ├───item-res: from CALLER (helo=myhost.test.ex)
877         
878             ╰──(tainted)
879  ├considering: 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
880         }}(Exim $version_number)
881         ${if def:sender_address {(envelope-from <$sender_address>)
882         }}id $message_exim_id${if def:received_for {
883         for $received_for}}
884  ├───────text: by 
885  ├considering: $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
886         }}(Exim $version_number)
887         ${if def:sender_address {(envelope-from <$sender_address>)
888         }}id $message_exim_id${if def:received_for {
889         for $received_for}}
890  ├considering:  ${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
891         }}(Exim $version_number)
892         ${if def:sender_address {(envelope-from <$sender_address>)
893         }}id $message_exim_id${if def:received_for {
894         for $received_for}}
895  ├───────text:  
896  ├considering: ${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
897         }}(Exim $version_number)
898         ${if def:sender_address {(envelope-from <$sender_address>)
899         }}id $message_exim_id${if def:received_for {
900         for $received_for}}
901  ├──condition: def:received_protocol
902  ├─────result: true
903   ╭considering: with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
904         }}(Exim $version_number)
905         ${if def:sender_address {(envelope-from <$sender_address>)
906         }}id $message_exim_id${if def:received_for {
907         for $received_for}}
908   ├───────text: with 
909   ├considering: $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
910         }}(Exim $version_number)
911         ${if def:sender_address {(envelope-from <$sender_address>)
912         }}id $message_exim_id${if def:received_for {
913         for $received_for}}
914   ├considering:  }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
915         }}(Exim $version_number)
916         ${if def:sender_address {(envelope-from <$sender_address>)
917         }}id $message_exim_id${if def:received_for {
918         for $received_for}}
919   ├───────text:  
920   ├considering: }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
921         }}(Exim $version_number)
922         ${if def:sender_address {(envelope-from <$sender_address>)
923         }}id $message_exim_id${if def:received_for {
924         for $received_for}}
925   ├──expanding: with $received_protocol 
926   ╰─────result: with local-esmtp 
927  ├───item-res: with local-esmtp 
928             ╰──(tainted)
929  ├considering: ${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
930         }}(Exim $version_number)
931         ${if def:sender_address {(envelope-from <$sender_address>)
932         }}id $message_exim_id${if def:received_for {
933         for $received_for}}
934         }}id $message_exim_id${if def:received_for {
935         for $received_for}}
936   ├──expanding:  ($tls_in_ver)
937   ├─────result:  ()
938   ╰───skipping: result is not used
939  ├───item-res: 
940             ╰──(tainted)
941  ├considering: ${if def:tls_in_cipher_std { tls $tls_in_cipher_std
942         }}(Exim $version_number)
943         ${if def:sender_address {(envelope-from <$sender_address>)
944         }}id $message_exim_id${if def:received_for {
945         for $received_for}}
946  ├──condition: def:tls_in_cipher_std
947  ├─────result: false
948   ╭───scanning:  tls $tls_in_cipher_std
949         }}(Exim $version_number)
950         ${if def:sender_address {(envelope-from <$sender_address>)
951         }}id $message_exim_id${if def:received_for {
952         for $received_for}}
953   ├───────text:  tls 
954   ├───scanning: $tls_in_cipher_std
955         }}(Exim $version_number)
956         ${if def:sender_address {(envelope-from <$sender_address>)
957         }}id $message_exim_id${if def:received_for {
958         for $received_for}}
959   ├───scanning: 
960         }}(Exim $version_number)
961         ${if def:sender_address {(envelope-from <$sender_address>)
962         }}id $message_exim_id${if def:received_for {
963         for $received_for}}
964   ├───────text: 
965         
966   ├───scanning: }}(Exim $version_number)
967         ${if def:sender_address {(envelope-from <$sender_address>)
968         }}id $message_exim_id${if def:received_for {
969         for $received_for}}
970   ├──expanding:  tls $tls_in_cipher_std
971         
972   ├─────result:  tls 
973         
974   ╰───skipping: result is not used
975  ├───item-res: 
976             ╰──(tainted)
977  ├considering: (Exim $version_number)
978         ${if def:sender_address {(envelope-from <$sender_address>)
979         }}id $message_exim_id${if def:received_for {
980         for $received_for}}
981  ├───────text: (Exim 
982  ├considering: $version_number)
983         ${if def:sender_address {(envelope-from <$sender_address>)
984         }}id $message_exim_id${if def:received_for {
985         for $received_for}}
986  ├considering: )
987         ${if def:sender_address {(envelope-from <$sender_address>)
988         }}id $message_exim_id${if def:received_for {
989         for $received_for}}
990  ├───────text: )
991         
992  ├considering: ${if def:sender_address {(envelope-from <$sender_address>)
993         }}id $message_exim_id${if def:received_for {
994         for $received_for}}
995  ├──condition: def:sender_address
996  ├─────result: true
997   ╭considering: (envelope-from <$sender_address>)
998         }}id $message_exim_id${if def:received_for {
999         for $received_for}}
1000   ├───────text: (envelope-from <
1001   ├considering: $sender_address>)
1002         }}id $message_exim_id${if def:received_for {
1003         for $received_for}}
1004   ├considering: >)
1005         }}id $message_exim_id${if def:received_for {
1006         for $received_for}}
1007   ├───────text: >)
1008         
1009   ├considering: }}id $message_exim_id${if def:received_for {
1010         for $received_for}}
1011   ├──expanding: (envelope-from <$sender_address>)
1012         
1013   ╰─────result: (envelope-from <CALLER@myhost.test.ex>)
1014         
1015  ├───item-res: (envelope-from <CALLER@myhost.test.ex>)
1016         
1017             ╰──(tainted)
1018  ├considering: id $message_exim_id${if def:received_for {
1019         for $received_for}}
1020  ├───────text: id 
1021  ├considering: $message_exim_id${if def:received_for {
1022         for $received_for}}
1023  ├considering: ${if def:received_for {
1024         for $received_for}}
1025  ├──condition: def:received_for
1026  ├─────result: true
1027   ╭considering: 
1028         for $received_for}}
1029   ├───────text: 
1030         for 
1031   ├considering: $received_for}}
1032   ├considering: }}
1033   ├──expanding: 
1034         for $received_for
1035   ╰─────result: 
1036         for usery@domain.com
1037              ╰──(tainted)
1038  ├───item-res: 
1039         for usery@domain.com
1040             ╰──(tainted)
1041  ├──expanding: Received: ${if def:sender_rcvhost {from $sender_rcvhost
1042         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
1043         }}}}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
1044         }}(Exim $version_number)
1045         ${if def:sender_address {(envelope-from <$sender_address>)
1046         }}id $message_exim_id${if def:received_for {
1047         for $received_for}}
1048  ╰─────result: Received: from CALLER (helo=myhost.test.ex)
1049         by myhost.test.ex with local-esmtp (Exim x.yz)
1050         (envelope-from <CALLER@myhost.test.ex>)
1051         id 10HmaZ-0005vi-00
1052         for usery@domain.com
1053             ╰──(tainted)
1054 ----------- start cutthrough headers send -----------
1055 ----------- done cutthrough headers send ------------
1056  ╭considering: ${tod_full}
1057  ├──expanding: ${tod_full}
1058  ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
1059   SMTP>> .
1060   SMTP<< 250 OK id=10HmbA-0005vi-00
1061 LOG: MAIN
1062   >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbA-0005vi-00"
1063   SMTP>> QUIT
1064   SMTP<< 221 myhost.test.ex closing connection
1065   SMTP(close)>>
1066 cmdlog: '220:EHLO:250-:MAIL|:RCPT:250:250:DATA:354:250:QUIT:221'
1067 ----------- cutthrough shutdown (delivered) ------------
1068 LOG: MAIN
1069   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
1070 LOG: MAIN
1071   Completed
1072 LOG: smtp_connection MAIN
1073   SMTP connection from CALLER closed by QUIT
1074 >>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
1075 Exim version x.yz ....
1076 adding SSLKEYLOGFILE=TESTSUITE/spool/sslkeys
1077 configuration file is TESTSUITE/test-config
1078 admin user
1079  in hosts_connection_nolog? no (option unset)
1080 LOG: smtp_connection MAIN
1081   SMTP connection from CALLER
1082  ╭considering: $smtp_active_hostname ESMTP Exim $version_number $tod_full
1083  ├considering:  ESMTP Exim $version_number $tod_full
1084  ├───────text:  ESMTP Exim 
1085  ├considering: $version_number $tod_full
1086  ├considering:  $tod_full
1087  ├───────text:  
1088  ├considering: $tod_full
1089  ├──expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
1090  ╰─────result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
1091  in dsn_advertise_hosts? no (option unset)
1092  in pipelining_advertise_hosts? yes (matched "*")
1093  in chunking_advertise_hosts? no (end of list)
1094  in tls_advertise_hosts? yes (matched "*")
1095  ╭considering: ${if eq {SERVER}{server}{queue}{cutthrough}}
1096   ╭considering: SERVER}{server}{queue}{cutthrough}}
1097   ├───────text: SERVER
1098   ├considering: }{server}{queue}{cutthrough}}
1099   ├──expanding: SERVER
1100   ╰─────result: SERVER
1101   ╭considering: server}{queue}{cutthrough}}
1102   ├───────text: server
1103   ├considering: }{queue}{cutthrough}}
1104   ├──expanding: server
1105   ╰─────result: server
1106  ├──condition: eq {SERVER}{server}
1107  ├─────result: false
1108   ╭───scanning: queue}{cutthrough}}
1109   ├───────text: queue
1110   ├───scanning: }{cutthrough}}
1111   ├──expanding: queue
1112   ├─────result: queue
1113   ╰───skipping: result is not used
1114   ╭considering: cutthrough}}
1115   ├───────text: cutthrough
1116   ├considering: }}
1117   ├──expanding: cutthrough
1118   ╰─────result: cutthrough
1119  ├──expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
1120  ╰─────result: cutthrough
1121 using ACL "cutthrough"
1122 processing "accept" (TESTSUITE/test-config 22)
1123 check control = cutthrough_delivery
1124 check verify = recipient
1125 domain.com in "test.ex : *.test.ex"? no (end of list)
1126 domain.com in "! +local_domains"? yes (end of list)
1127  ╭considering: $local_part
1128  ├──expanding: $local_part
1129  ╰─────result: usery
1130             ╰──(tainted)
1131 domain.com in "*"? yes (matched "*")
1132 ----------- end verify ------------
1133 accept: condition test succeeded in ACL "cutthrough"
1134 end of ACL "cutthrough": ACCEPT
1135 ----------- start cutthrough setup ------------
1136 domain.com in "test.ex : *.test.ex"? no (end of list)
1137 domain.com in "! +local_domains"? yes (end of list)
1138  ╭considering: $local_part
1139  ├──expanding: $local_part
1140  ╰─────result: usery
1141             ╰──(tainted)
1142 domain.com in "*"? yes (matched "*")
1143 Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ...  connected
1144  ╭considering: $primary_hostname
1145  ├──expanding: $primary_hostname
1146  ╰─────result: myhost.test.ex
1147   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
1148 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
1149   SMTP>> EHLO myhost.test.ex
1150 cmd buf flush ddd bytes
1151   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
1152          250-SIZE 52428800
1153          250-8BITMIME
1154          250-PIPELINING
1155          250-STARTTLS
1156          250 HELP
1157  ╭considering: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
1158   ╭considering: $host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
1159   ├considering: }{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
1160   ├──expanding: $host
1161   ╰─────result: 127.0.0.1
1162   ╭considering: .outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
1163   ├───────text: .outlook.com
1164   ├considering: \$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
1165   ├backslashed: '\$'
1166   ├considering: }} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
1167   ├──expanding: .outlook.com\$
1168   ╰─────result: .outlook.com$
1169   ╭───scanning: $item}{\N^250-([\w.]+)\s\N}}} {$1}}
1170   ├───scanning: }{\N^250-([\w.]+)\s\N}}} {$1}}
1171   ├──expanding: $item
1172   ├─────result: 
1173   ╰───skipping: result is not used
1174   ╭───scanning: \N^250-([\w.]+)\s\N}}} {$1}}
1175   ├──protected: ^250-([\w.]+)\s
1176   ├───scanning: }}} {$1}}
1177   ├──expanding: \N^250-([\w.]+)\s\N
1178   ├─────result: ^250-([\w.]+)\s
1179   ╰───skipping: result is not used
1180  ├──condition: and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}}
1181  ├─────result: false
1182   ╭───scanning: $1}}
1183   ├───scanning: }}
1184   ├──expanding: $1
1185   ├─────result: 
1186   ╰───skipping: result is not used
1187  ├──expanding: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
1188  ╰─────result: 
1189  ╭considering: ${if eq {$address_data}{usery}{*}{:}}
1190   ╭considering: $address_data}{usery}{*}{:}}
1191   ├considering: }{usery}{*}{:}}
1192   ├──expanding: $address_data
1193   ╰─────result: usery
1194              ╰──(tainted)
1195   ╭considering: usery}{*}{:}}
1196   ├───────text: usery
1197   ├considering: }{*}{:}}
1198   ├──expanding: usery
1199   ╰─────result: usery
1200  ├──condition: eq {$address_data}{usery}
1201  ├─────result: true
1202   ╭considering: *}{:}}
1203   ├───────text: *
1204   ├considering: }{:}}
1205   ├──expanding: *
1206   ╰─────result: *
1207   ╭───scanning: :}}
1208   ├───────text: :
1209   ├───scanning: }}
1210   ├──expanding: :
1211   ├─────result: :
1212   ╰───skipping: result is not used
1213  ├──expanding: ${if eq {$address_data}{usery}{*}{:}}
1214  ╰─────result: *
1215 127.0.0.1 in hosts_avoid_tls? yes (matched "*")
1216 127.0.0.1 in hosts_avoid_pipelining? no (option unset)
1217 using PIPELINING
1218 not using DSN
1219 127.0.0.1 in hosts_require_auth? no (option unset)
1220   SMTP|> MAIL FROM:<CALLER@myhost.test.ex>
1221   SMTP>> RCPT TO:<usery@domain.com>
1222 cmd buf flush ddd bytes
1223 sync_responses expect mail
1224   SMTP<< 250 OK
1225 sync_responses expect rcpt for usery@domain.com
1226   SMTP<< 250 Accepted
1227 holding verify callout open for cutthrough delivery
1228 ----------- end cutthrough setup ------------
1229 processing "accept" (TESTSUITE/test-config 55)
1230 accept: condition test succeeded in inline ACL
1231 end of inline ACL: ACCEPT
1232   SMTP>> DATA
1233   SMTP<< 354 Enter message, ending with "." on a line by itself
1234  ╭considering: ${tod_full}
1235  ├──expanding: ${tod_full}
1236  ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
1237  ╭considering: Received: ${if def:sender_rcvhost {from $sender_rcvhost
1238         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
1239         }}}}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
1240         }}(Exim $version_number)
1241         ${if def:sender_address {(envelope-from <$sender_address>)
1242         }}id $message_exim_id${if def:received_for {
1243         for $received_for}}
1244  ├───────text: Received: 
1245  ├considering: ${if def:sender_rcvhost {from $sender_rcvhost
1246         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
1247         }}}}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
1248         }}(Exim $version_number)
1249         ${if def:sender_address {(envelope-from <$sender_address>)
1250         }}id $message_exim_id${if def:received_for {
1251         for $received_for}}
1252  ├──condition: def:sender_rcvhost
1253  ├─────result: false
1254   ╭───scanning: from $sender_rcvhost
1255         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
1256         }}}}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
1257         }}(Exim $version_number)
1258         ${if def:sender_address {(envelope-from <$sender_address>)
1259         }}id $message_exim_id${if def:received_for {
1260         for $received_for}}
1261   ├───────text: from 
1262   ├───scanning: $sender_rcvhost
1263         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
1264         }}}}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
1265         }}(Exim $version_number)
1266         ${if def:sender_address {(envelope-from <$sender_address>)
1267         }}id $message_exim_id${if def:received_for {
1268         for $received_for}}
1269   ├───scanning: 
1270         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
1271         }}}}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
1272         }}(Exim $version_number)
1273         ${if def:sender_address {(envelope-from <$sender_address>)
1274         }}id $message_exim_id${if def:received_for {
1275         for $received_for}}
1276   ├───────text: 
1277         
1278   ├───scanning: }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
1279         }}}}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
1280         }}(Exim $version_number)
1281         ${if def:sender_address {(envelope-from <$sender_address>)
1282         }}id $message_exim_id${if def:received_for {
1283         for $received_for}}
1284   ├──expanding: from $sender_rcvhost
1285         
1286   ├─────result: from 
1287         
1288   ╰───skipping: result is not used
1289   ╭considering: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
1290         }}}}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
1291         }}(Exim $version_number)
1292         ${if def:sender_address {(envelope-from <$sender_address>)
1293         }}id $message_exim_id${if def:received_for {
1294         for $received_for}}
1295   ├──condition: def:sender_ident
1296   ├─────result: true
1297    ╭considering: from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
1298         }}}}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
1299         }}(Exim $version_number)
1300         ${if def:sender_address {(envelope-from <$sender_address>)
1301         }}id $message_exim_id${if def:received_for {
1302         for $received_for}}
1303    ├───────text: from 
1304    ├considering: ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
1305         }}}}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
1306         }}(Exim $version_number)
1307         ${if def:sender_address {(envelope-from <$sender_address>)
1308         }}id $message_exim_id${if def:received_for {
1309         for $received_for}}
1310    ╎╭considering: $sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
1311    ╎  }}}}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
1312    ╎  }}(Exim $version_number)
1313    ╎  ${if def:sender_address {(envelope-from <$sender_address>)
1314    ╎  }}id $message_exim_id${if def:received_for {
1315    ╎  for $received_for}}
1316    ╎├considering: } }}${if def:sender_helo_name {(helo=$sender_helo_name)
1317    ╎  }}}}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
1318    ╎  }}(Exim $version_number)
1319    ╎  ${if def:sender_address {(envelope-from <$sender_address>)
1320    ╎  }}id $message_exim_id${if def:received_for {
1321    ╎  for $received_for}}
1322    ╎├──expanding: $sender_ident
1323    ╎╰─────result: CALLER
1324    ├─────op-res: CALLER
1325    ├considering:  }}${if def:sender_helo_name {(helo=$sender_helo_name)
1326         }}}}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
1327         }}(Exim $version_number)
1328         ${if def:sender_address {(envelope-from <$sender_address>)
1329         }}id $message_exim_id${if def:received_for {
1330         for $received_for}}
1331    ├───────text:  
1332    ├considering: }}${if def:sender_helo_name {(helo=$sender_helo_name)
1333         }}}}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
1334         }}(Exim $version_number)
1335         ${if def:sender_address {(envelope-from <$sender_address>)
1336         }}id $message_exim_id${if def:received_for {
1337         for $received_for}}
1338    ├──expanding: from ${quote_local_part:$sender_ident} 
1339    ╰─────result: from CALLER 
1340   ├───item-res: from CALLER 
1341   ├considering: ${if def:sender_helo_name {(helo=$sender_helo_name)
1342         }}}}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
1343         }}(Exim $version_number)
1344         ${if def:sender_address {(envelope-from <$sender_address>)
1345         }}id $message_exim_id${if def:received_for {
1346         for $received_for}}
1347   ├──condition: def:sender_helo_name
1348   ├─────result: true
1349    ╭considering: (helo=$sender_helo_name)
1350         }}}}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
1351         }}(Exim $version_number)
1352         ${if def:sender_address {(envelope-from <$sender_address>)
1353         }}id $message_exim_id${if def:received_for {
1354         for $received_for}}
1355    ├───────text: (helo=
1356    ├considering: $sender_helo_name)
1357         }}}}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
1358         }}(Exim $version_number)
1359         ${if def:sender_address {(envelope-from <$sender_address>)
1360         }}id $message_exim_id${if def:received_for {
1361         for $received_for}}
1362    ├considering: )
1363         }}}}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
1364         }}(Exim $version_number)
1365         ${if def:sender_address {(envelope-from <$sender_address>)
1366         }}id $message_exim_id${if def:received_for {
1367         for $received_for}}
1368    ├───────text: )
1369         
1370    ├considering: }}}}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
1371         }}(Exim $version_number)
1372         ${if def:sender_address {(envelope-from <$sender_address>)
1373         }}id $message_exim_id${if def:received_for {
1374         for $received_for}}
1375    ├──expanding: (helo=$sender_helo_name)
1376         
1377    ╰─────result: (helo=myhost.test.ex)
1378         
1379               ╰──(tainted)
1380   ├───item-res: (helo=myhost.test.ex)
1381         
1382              ╰──(tainted)
1383   ├considering: }}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
1384         }}(Exim $version_number)
1385         ${if def:sender_address {(envelope-from <$sender_address>)
1386         }}id $message_exim_id${if def:received_for {
1387         for $received_for}}
1388   ├──expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
1389         }}
1390   ╰─────result: from CALLER (helo=myhost.test.ex)
1391         
1392              ╰──(tainted)
1393  ├───item-res: from CALLER (helo=myhost.test.ex)
1394         
1395             ╰──(tainted)
1396  ├considering: 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
1397         }}(Exim $version_number)
1398         ${if def:sender_address {(envelope-from <$sender_address>)
1399         }}id $message_exim_id${if def:received_for {
1400         for $received_for}}
1401  ├───────text: by 
1402  ├considering: $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
1403         }}(Exim $version_number)
1404         ${if def:sender_address {(envelope-from <$sender_address>)
1405         }}id $message_exim_id${if def:received_for {
1406         for $received_for}}
1407  ├considering:  ${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
1408         }}(Exim $version_number)
1409         ${if def:sender_address {(envelope-from <$sender_address>)
1410         }}id $message_exim_id${if def:received_for {
1411         for $received_for}}
1412  ├───────text:  
1413  ├considering: ${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
1414         }}(Exim $version_number)
1415         ${if def:sender_address {(envelope-from <$sender_address>)
1416         }}id $message_exim_id${if def:received_for {
1417         for $received_for}}
1418  ├──condition: def:received_protocol
1419  ├─────result: true
1420   ╭considering: with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
1421         }}(Exim $version_number)
1422         ${if def:sender_address {(envelope-from <$sender_address>)
1423         }}id $message_exim_id${if def:received_for {
1424         for $received_for}}
1425   ├───────text: with 
1426   ├considering: $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
1427         }}(Exim $version_number)
1428         ${if def:sender_address {(envelope-from <$sender_address>)
1429         }}id $message_exim_id${if def:received_for {
1430         for $received_for}}
1431   ├considering:  }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
1432         }}(Exim $version_number)
1433         ${if def:sender_address {(envelope-from <$sender_address>)
1434         }}id $message_exim_id${if def:received_for {
1435         for $received_for}}
1436   ├───────text:  
1437   ├considering: }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
1438         }}(Exim $version_number)
1439         ${if def:sender_address {(envelope-from <$sender_address>)
1440         }}id $message_exim_id${if def:received_for {
1441         for $received_for}}
1442   ├──expanding: with $received_protocol 
1443   ╰─────result: with local-esmtp 
1444  ├───item-res: with local-esmtp 
1445             ╰──(tainted)
1446  ├considering: ${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
1447         }}(Exim $version_number)
1448         ${if def:sender_address {(envelope-from <$sender_address>)
1449         }}id $message_exim_id${if def:received_for {
1450         for $received_for}}
1451         }}id $message_exim_id${if def:received_for {
1452         for $received_for}}
1453   ├──expanding:  ($tls_in_ver)
1454   ├─────result:  ()
1455   ╰───skipping: result is not used
1456  ├───item-res: 
1457             ╰──(tainted)
1458  ├considering: ${if def:tls_in_cipher_std { tls $tls_in_cipher_std
1459         }}(Exim $version_number)
1460         ${if def:sender_address {(envelope-from <$sender_address>)
1461         }}id $message_exim_id${if def:received_for {
1462         for $received_for}}
1463  ├──condition: def:tls_in_cipher_std
1464  ├─────result: false
1465   ╭───scanning:  tls $tls_in_cipher_std
1466         }}(Exim $version_number)
1467         ${if def:sender_address {(envelope-from <$sender_address>)
1468         }}id $message_exim_id${if def:received_for {
1469         for $received_for}}
1470   ├───────text:  tls 
1471   ├───scanning: $tls_in_cipher_std
1472         }}(Exim $version_number)
1473         ${if def:sender_address {(envelope-from <$sender_address>)
1474         }}id $message_exim_id${if def:received_for {
1475         for $received_for}}
1476   ├───scanning: 
1477         }}(Exim $version_number)
1478         ${if def:sender_address {(envelope-from <$sender_address>)
1479         }}id $message_exim_id${if def:received_for {
1480         for $received_for}}
1481   ├───────text: 
1482         
1483   ├───scanning: }}(Exim $version_number)
1484         ${if def:sender_address {(envelope-from <$sender_address>)
1485         }}id $message_exim_id${if def:received_for {
1486         for $received_for}}
1487   ├──expanding:  tls $tls_in_cipher_std
1488         
1489   ├─────result:  tls 
1490         
1491   ╰───skipping: result is not used
1492  ├───item-res: 
1493             ╰──(tainted)
1494  ├considering: (Exim $version_number)
1495         ${if def:sender_address {(envelope-from <$sender_address>)
1496         }}id $message_exim_id${if def:received_for {
1497         for $received_for}}
1498  ├───────text: (Exim 
1499  ├considering: $version_number)
1500         ${if def:sender_address {(envelope-from <$sender_address>)
1501         }}id $message_exim_id${if def:received_for {
1502         for $received_for}}
1503  ├considering: )
1504         ${if def:sender_address {(envelope-from <$sender_address>)
1505         }}id $message_exim_id${if def:received_for {
1506         for $received_for}}
1507  ├───────text: )
1508         
1509  ├considering: ${if def:sender_address {(envelope-from <$sender_address>)
1510         }}id $message_exim_id${if def:received_for {
1511         for $received_for}}
1512  ├──condition: def:sender_address
1513  ├─────result: true
1514   ╭considering: (envelope-from <$sender_address>)
1515         }}id $message_exim_id${if def:received_for {
1516         for $received_for}}
1517   ├───────text: (envelope-from <
1518   ├considering: $sender_address>)
1519         }}id $message_exim_id${if def:received_for {
1520         for $received_for}}
1521   ├considering: >)
1522         }}id $message_exim_id${if def:received_for {
1523         for $received_for}}
1524   ├───────text: >)
1525         
1526   ├considering: }}id $message_exim_id${if def:received_for {
1527         for $received_for}}
1528   ├──expanding: (envelope-from <$sender_address>)
1529         
1530   ╰─────result: (envelope-from <CALLER@myhost.test.ex>)
1531         
1532  ├───item-res: (envelope-from <CALLER@myhost.test.ex>)
1533         
1534             ╰──(tainted)
1535  ├considering: id $message_exim_id${if def:received_for {
1536         for $received_for}}
1537  ├───────text: id 
1538  ├considering: $message_exim_id${if def:received_for {
1539         for $received_for}}
1540  ├considering: ${if def:received_for {
1541         for $received_for}}
1542  ├──condition: def:received_for
1543  ├─────result: true
1544   ╭considering: 
1545         for $received_for}}
1546   ├───────text: 
1547         for 
1548   ├considering: $received_for}}
1549   ├considering: }}
1550   ├──expanding: 
1551         for $received_for
1552   ╰─────result: 
1553         for usery@domain.com
1554              ╰──(tainted)
1555  ├───item-res: 
1556         for usery@domain.com
1557             ╰──(tainted)
1558  ├──expanding: Received: ${if def:sender_rcvhost {from $sender_rcvhost
1559         }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
1560         }}}}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
1561         }}(Exim $version_number)
1562         ${if def:sender_address {(envelope-from <$sender_address>)
1563         }}id $message_exim_id${if def:received_for {
1564         for $received_for}}
1565  ╰─────result: Received: from CALLER (helo=myhost.test.ex)
1566         by myhost.test.ex with local-esmtp (Exim x.yz)
1567         (envelope-from <CALLER@myhost.test.ex>)
1568         id 10HmbB-0005vi-00
1569         for usery@domain.com
1570             ╰──(tainted)
1571 ----------- start cutthrough headers send -----------
1572 ----------- done cutthrough headers send ------------
1573  ╭considering: ${tod_full}
1574  ├──expanding: ${tod_full}
1575  ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
1576   SMTP>> .
1577   SMTP<< 250 OK id=10HmbC-0005vi-00
1578 LOG: MAIN
1579   >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbC-0005vi-00"
1580   SMTP>> QUIT
1581   SMTP<< 221 myhost.test.ex closing connection
1582   SMTP(close)>>
1583 cmdlog: '220:EHLO:250-:MAIL|:RCPT:250:250:DATA:354:250:QUIT:221'
1584 ----------- cutthrough shutdown (delivered) ------------
1585 LOG: MAIN
1586   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
1587 LOG: MAIN
1588   Completed
1589 LOG: smtp_connection MAIN
1590   SMTP connection from CALLER closed by QUIT
1591 >>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
1592
1593 ******** SERVER ********