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