Callouts: fix recipient verify/random
[exim.git] / test / stderr / 5410
index f8b31a750745eb5a3c23cc4f60afb9d7b65cfa15..04c805275f300c9a749b1d6ea4cac0b1b08c1058 100644 (file)
@@ -4,146 +4,242 @@ admin user
  in hosts_connection_nolog? no (option unset)
 LOG: smtp_connection MAIN
   SMTP connection from CALLER
  in hosts_connection_nolog? no (option unset)
 LOG: smtp_connection MAIN
   SMTP connection from CALLER
-expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
-   result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+considering: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+  expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+     result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+ in dsn_advertise_hosts? no (option unset)
  in pipelining_advertise_hosts? yes (matched "*")
  in pipelining_advertise_hosts? yes (matched "*")
+ in chunking_advertise_hosts? no (end of list)
  in tls_advertise_hosts? yes (matched "*")
  in tls_advertise_hosts? yes (matched "*")
-expanding: SERVER
-   result: SERVER
-expanding: server
-   result: server
-condition: eq {SERVER}{server}
-   result: false
-expanding: queue
-   result: queue
-skipping: result is not used
-expanding: cutthrough
-   result: cutthrough
-expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
-   result: cutthrough
+considering: ${if eq {SERVER}{server}{queue}{cutthrough}}
+considering: SERVER}{server}{queue}{cutthrough}}
+  expanding: SERVER
+     result: SERVER
+considering: server}{queue}{cutthrough}}
+  expanding: server
+     result: server
+  condition: eq {SERVER}{server}
+     result: false
+   scanning: queue}{cutthrough}}
+  expanding: queue
+     result: queue
+   skipping: result is not used
+considering: cutthrough}}
+  expanding: cutthrough
+     result: cutthrough
+  expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
+     result: cutthrough
 using ACL "cutthrough"
 processing "accept"
 check control = cutthrough_delivery
 check verify = recipient
 domain.com in "test.ex : *.test.ex"? no (end of list)
 domain.com in "! +local_domains"? yes (end of list)
 using ACL "cutthrough"
 processing "accept"
 check control = cutthrough_delivery
 check verify = recipient
 domain.com in "test.ex : *.test.ex"? no (end of list)
 domain.com in "! +local_domains"? yes (end of list)
-expanding: $local_part
-   result: userx
+considering: $local_part
+  expanding: $local_part
+     result: userx
 domain.com in "*"? yes (matched "*")
 ----------- end verify ------------
 accept: condition test succeeded in ACL "cutthrough"
 domain.com in "*"? yes (matched "*")
 ----------- end verify ------------
 accept: condition test succeeded in ACL "cutthrough"
+end of ACL "cutthrough": ACCEPT
 ----------- start cutthrough setup ------------
 domain.com in "test.ex : *.test.ex"? no (end of list)
 domain.com in "! +local_domains"? yes (end of list)
 ----------- start cutthrough setup ------------
 domain.com in "test.ex : *.test.ex"? no (end of list)
 domain.com in "! +local_domains"? yes (end of list)
-expanding: $local_part
-   result: userx
+considering: $local_part
+  expanding: $local_part
+     result: userx
 domain.com in "*"? yes (matched "*")
 Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ... connected
 domain.com in "*"? yes (matched "*")
 Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ... connected
-expanding: $primary_hostname
-   result: myhost.test.ex
+considering: $primary_hostname
+  expanding: $primary_hostname
+     result: myhost.test.ex
   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
   SMTP>> EHLO myhost.test.ex
   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
   SMTP>> EHLO myhost.test.ex
+cmd buf flush ddd bytes
   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
          250-SIZE 52428800
          250-8BITMIME
          250-PIPELINING
          250-STARTTLS
          250 HELP
   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
          250-SIZE 52428800
          250-8BITMIME
          250-PIPELINING
          250-STARTTLS
          250 HELP
-expanding: $address_data
-   result: userx
-expanding: usery
-   result: usery
-condition: eq {$address_data}{usery}
-   result: false
-expanding: *
-   result: *
-skipping: result is not used
-expanding: :
-   result: :
-expanding: ${if eq {$address_data}{usery}{*}{:}}
-   result: :
+considering: ${if eq {$address_data}{usery}{*}{:}}
+considering: $address_data}{usery}{*}{:}}
+  expanding: $address_data
+     result: userx
+considering: usery}{*}{:}}
+  expanding: usery
+     result: usery
+  condition: eq {$address_data}{usery}
+     result: false
+   scanning: *}{:}}
+  expanding: *
+     result: *
+   skipping: result is not used
+considering: :}}
+  expanding: :
+     result: :
+  expanding: ${if eq {$address_data}{usery}{*}{:}}
+     result: :
 127.0.0.1 in hosts_avoid_tls? no (end of list)
 127.0.0.1 in hosts_avoid_tls? no (end of list)
-expanding: $address_data
-   result: userx
-expanding: userz
-   result: userz
-condition: eq {$address_data}{userz}
-   result: false
-expanding: *
-   result: *
-skipping: result is not used
-expanding: :
-   result: :
-expanding: ${if eq {$address_data}{userz}{*}{:}}
-   result: :
+considering: ${if eq {$address_data}{userz}{*}{:}}
+considering: $address_data}{userz}{*}{:}}
+  expanding: $address_data
+     result: userx
+considering: userz}{*}{:}}
+  expanding: userz
+     result: userz
+  condition: eq {$address_data}{userz}
+     result: false
+   scanning: *}{:}}
+  expanding: *
+     result: *
+   skipping: result is not used
+considering: :}}
+  expanding: :
+     result: :
+  expanding: ${if eq {$address_data}{userz}{*}{:}}
+     result: :
 127.0.0.1 in hosts_verify_avoid_tls? no (end of list)
   SMTP>> STARTTLS
 127.0.0.1 in hosts_verify_avoid_tls? no (end of list)
   SMTP>> STARTTLS
+cmd buf flush ddd bytes
   SMTP<< 220 TLS go ahead
   SMTP<< 220 TLS go ahead
+127.0.0.1 in hosts_require_ocsp? no (option unset)
+127.0.0.1 in hosts_request_ocsp? yes (matched "*")
+127.0.0.1 in tls_verify_hosts? no (option unset)
+127.0.0.1 in tls_try_verify_hosts? no (end of list)
   SMTP>> EHLO myhost.test.ex
   SMTP>> EHLO myhost.test.ex
+cmd buf flush ddd bytes
   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
          250-SIZE 52428800
          250-8BITMIME
          250-PIPELINING
          250 HELP
   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
          250-SIZE 52428800
          250-8BITMIME
          250-PIPELINING
          250 HELP
-  SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
-  SMTP<< 250 OK
+127.0.0.1 in hosts_avoid_pipelining? no (option unset)
+using PIPELINING
+not using DSN
+127.0.0.1 in hosts_require_auth? no (option unset)
+  SMTP>> MAIL FROM:<CALLER@myhost.test.ex> SIZE=ssss
   SMTP>> RCPT TO:<userx@domain.com>
   SMTP>> RCPT TO:<userx@domain.com>
+cmd buf flush ddd bytes
+  SMTP<< 250 OK
   SMTP<< 250 Accepted
   SMTP<< 250 Accepted
+holding verify callout open for cutthrough delivery
 ----------- end cutthrough setup ------------
 processing "accept"
 accept: condition test succeeded in inline ACL
 ----------- end cutthrough setup ------------
 processing "accept"
 accept: condition test succeeded in inline ACL
+end of inline ACL: ACCEPT
   SMTP>> DATA
   SMTP<< 354 Enter message, ending with "." on a line by itself
   SMTP>> DATA
   SMTP<< 354 Enter message, ending with "." on a line by itself
-expanding: ${tod_full}
-   result: Tue, 2 Mar 1999 09:44:33 +0000
-condition: def:sender_rcvhost
-   result: false
-expanding: from $sender_rcvhost
+PDKIM >> raw hdr: {CR}{LF}
+PDKIM >> raw hdr: .{CR}{LF}
+considering: ${tod_full}
+  expanding: ${tod_full}
+     result: Tue, 2 Mar 1999 09:44:33 +0000
+considering: Received: ${if def:sender_rcvhost {from $sender_rcvhost
+       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  condition: def:sender_rcvhost
+     result: false
+   scanning: from $sender_rcvhost
+       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  expanding: from $sender_rcvhost
        
        
-   result: from 
+     result: from 
        
        
-skipping: result is not used
-condition: def:sender_ident
-   result: true
-expanding: $sender_ident
-   result: CALLER
-expanding: from ${quote_local_part:$sender_ident} 
-   result: from CALLER 
-condition: def:sender_helo_name
-   result: true
-expanding: (helo=$sender_helo_name)
+   skipping: result is not used
+considering: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  condition: def:sender_ident
+     result: true
+considering: from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+considering: $sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  expanding: $sender_ident
+     result: CALLER
+  expanding: from ${quote_local_part:$sender_ident} 
+     result: from CALLER 
+  condition: def:sender_helo_name
+     result: true
+considering: (helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  expanding: (helo=$sender_helo_name)
        
        
-   result: (helo=myhost.test.ex)
+     result: (helo=myhost.test.ex)
        
        
-expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+  expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
        }}
        }}
-   result: from CALLER (helo=myhost.test.ex)
+     result: from CALLER (helo=myhost.test.ex)
        
        
-condition: def:received_protocol
-   result: true
-expanding: with $received_protocol
-   result: with local-esmtp
-condition: def:sender_address
-   result: true
-expanding: (envelope-from <$sender_address>)
+  condition: def:received_protocol
+     result: true
+considering: with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  expanding: with $received_protocol
+     result: with local-esmtp
+  condition: def:sender_address
+     result: true
+considering: (envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  expanding: (envelope-from <$sender_address>)
        
        
-   result: (envelope-from <CALLER@myhost.test.ex>)
+     result: (envelope-from <CALLER@myhost.test.ex>)
        
        
-condition: def:received_for
-   result: true
-expanding: 
+  condition: def:received_for
+     result: true
+considering: 
+       for $received_for}}
+  expanding: 
        for $received_for
        for $received_for
-   result: 
+     result: 
+       for userx@domain.com
+  expanding: Received: ${if def:sender_rcvhost {from $sender_rcvhost
+       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+     result: Received: from CALLER (helo=myhost.test.ex)
+       by myhost.test.ex with local-esmtp (Exim x.yz)
+       (envelope-from <CALLER@myhost.test.ex>)
+       id 10HmaX-0005vi-00
        for userx@domain.com
        for userx@domain.com
-PDKIM <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
-expanding: ${tod_full}
-   result: Tue, 2 Mar 1999 09:44:33 +0000
+----------- start cutthrough headers send -----------
+----------- done cutthrough headers send ------------
+PDKIM >> raw hdr: QUIT{CR}{LF}
+considering: ${tod_full}
+  expanding: ${tod_full}
+     result: Tue, 2 Mar 1999 09:44:33 +0000
   SMTP>> .
   SMTP>> .
-  SMTP<< 250 OK id=10HmaX-0005vi-00
+  SMTP<< 250 OK id=10HmaY-0005vi-00
 LOG: MAIN
 LOG: MAIN
-  >> userx@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] X=TLSv1:AES256-SHA:256 C="250 OK id=10HmaX-0005vi-00"
+  >> userx@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] X=TLSv1:AES256-SHA:256 CV=no C="250 OK id=10HmaY-0005vi-00"
   SMTP>> QUIT
   SMTP>> QUIT
+  SMTP<< 221 myhost.test.ex closing connection
+  SMTP(close)>>
 ----------- cutthrough shutdown (delivered) ------------
 LOG: MAIN
   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
 ----------- cutthrough shutdown (delivered) ------------
 LOG: MAIN
   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
@@ -158,124 +254,209 @@ admin user
  in hosts_connection_nolog? no (option unset)
 LOG: smtp_connection MAIN
   SMTP connection from CALLER
  in hosts_connection_nolog? no (option unset)
 LOG: smtp_connection MAIN
   SMTP connection from CALLER
-expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
-   result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+considering: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+  expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+     result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+ in dsn_advertise_hosts? no (option unset)
  in pipelining_advertise_hosts? yes (matched "*")
  in pipelining_advertise_hosts? yes (matched "*")
+ in chunking_advertise_hosts? no (end of list)
  in tls_advertise_hosts? yes (matched "*")
  in tls_advertise_hosts? yes (matched "*")
-expanding: SERVER
-   result: SERVER
-expanding: server
-   result: server
-condition: eq {SERVER}{server}
-   result: false
-expanding: queue
-   result: queue
-skipping: result is not used
-expanding: cutthrough
-   result: cutthrough
-expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
-   result: cutthrough
+considering: ${if eq {SERVER}{server}{queue}{cutthrough}}
+considering: SERVER}{server}{queue}{cutthrough}}
+  expanding: SERVER
+     result: SERVER
+considering: server}{queue}{cutthrough}}
+  expanding: server
+     result: server
+  condition: eq {SERVER}{server}
+     result: false
+   scanning: queue}{cutthrough}}
+  expanding: queue
+     result: queue
+   skipping: result is not used
+considering: cutthrough}}
+  expanding: cutthrough
+     result: cutthrough
+  expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
+     result: cutthrough
 using ACL "cutthrough"
 processing "accept"
 check control = cutthrough_delivery
 check verify = recipient
 domain.com in "test.ex : *.test.ex"? no (end of list)
 domain.com in "! +local_domains"? yes (end of list)
 using ACL "cutthrough"
 processing "accept"
 check control = cutthrough_delivery
 check verify = recipient
 domain.com in "test.ex : *.test.ex"? no (end of list)
 domain.com in "! +local_domains"? yes (end of list)
-expanding: $local_part
-   result: usery
+considering: $local_part
+  expanding: $local_part
+     result: usery
 domain.com in "*"? yes (matched "*")
 ----------- end verify ------------
 accept: condition test succeeded in ACL "cutthrough"
 domain.com in "*"? yes (matched "*")
 ----------- end verify ------------
 accept: condition test succeeded in ACL "cutthrough"
+end of ACL "cutthrough": ACCEPT
 ----------- start cutthrough setup ------------
 domain.com in "test.ex : *.test.ex"? no (end of list)
 domain.com in "! +local_domains"? yes (end of list)
 ----------- start cutthrough setup ------------
 domain.com in "test.ex : *.test.ex"? no (end of list)
 domain.com in "! +local_domains"? yes (end of list)
-expanding: $local_part
-   result: usery
+considering: $local_part
+  expanding: $local_part
+     result: usery
 domain.com in "*"? yes (matched "*")
 Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ... connected
 domain.com in "*"? yes (matched "*")
 Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ... connected
-expanding: $primary_hostname
-   result: myhost.test.ex
+considering: $primary_hostname
+  expanding: $primary_hostname
+     result: myhost.test.ex
   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
   SMTP>> EHLO myhost.test.ex
   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
   SMTP>> EHLO myhost.test.ex
+cmd buf flush ddd bytes
   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
          250-SIZE 52428800
          250-8BITMIME
          250-PIPELINING
          250-STARTTLS
          250 HELP
   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
          250-SIZE 52428800
          250-8BITMIME
          250-PIPELINING
          250-STARTTLS
          250 HELP
-expanding: $address_data
-   result: usery
-expanding: usery
-   result: usery
-condition: eq {$address_data}{usery}
-   result: true
-expanding: *
-   result: *
-expanding: :
-   result: :
-skipping: result is not used
-expanding: ${if eq {$address_data}{usery}{*}{:}}
-   result: *
+considering: ${if eq {$address_data}{usery}{*}{:}}
+considering: $address_data}{usery}{*}{:}}
+  expanding: $address_data
+     result: usery
+considering: usery}{*}{:}}
+  expanding: usery
+     result: usery
+  condition: eq {$address_data}{usery}
+     result: true
+considering: *}{:}}
+  expanding: *
+     result: *
+   scanning: :}}
+  expanding: :
+     result: :
+   skipping: result is not used
+  expanding: ${if eq {$address_data}{usery}{*}{:}}
+     result: *
 127.0.0.1 in hosts_avoid_tls? yes (matched "*")
 127.0.0.1 in hosts_avoid_tls? yes (matched "*")
-  SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
-  SMTP<< 250 OK
+127.0.0.1 in hosts_avoid_pipelining? no (option unset)
+using PIPELINING
+not using DSN
+127.0.0.1 in hosts_require_auth? no (option unset)
+  SMTP>> MAIL FROM:<CALLER@myhost.test.ex> SIZE=ssss
   SMTP>> RCPT TO:<usery@domain.com>
   SMTP>> RCPT TO:<usery@domain.com>
+cmd buf flush ddd bytes
+  SMTP<< 250 OK
   SMTP<< 250 Accepted
   SMTP<< 250 Accepted
+holding verify callout open for cutthrough delivery
 ----------- end cutthrough setup ------------
 processing "accept"
 accept: condition test succeeded in inline ACL
 ----------- end cutthrough setup ------------
 processing "accept"
 accept: condition test succeeded in inline ACL
+end of inline ACL: ACCEPT
   SMTP>> DATA
   SMTP<< 354 Enter message, ending with "." on a line by itself
   SMTP>> DATA
   SMTP<< 354 Enter message, ending with "." on a line by itself
-expanding: ${tod_full}
-   result: Tue, 2 Mar 1999 09:44:33 +0000
-condition: def:sender_rcvhost
-   result: false
-expanding: from $sender_rcvhost
+PDKIM >> raw hdr: {CR}{LF}
+PDKIM >> raw hdr: .{CR}{LF}
+considering: ${tod_full}
+  expanding: ${tod_full}
+     result: Tue, 2 Mar 1999 09:44:33 +0000
+considering: Received: ${if def:sender_rcvhost {from $sender_rcvhost
+       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  condition: def:sender_rcvhost
+     result: false
+   scanning: from $sender_rcvhost
+       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  expanding: from $sender_rcvhost
        
        
-   result: from 
+     result: from 
        
        
-skipping: result is not used
-condition: def:sender_ident
-   result: true
-expanding: $sender_ident
-   result: CALLER
-expanding: from ${quote_local_part:$sender_ident} 
-   result: from CALLER 
-condition: def:sender_helo_name
-   result: true
-expanding: (helo=$sender_helo_name)
+   skipping: result is not used
+considering: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  condition: def:sender_ident
+     result: true
+considering: from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+considering: $sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  expanding: $sender_ident
+     result: CALLER
+  expanding: from ${quote_local_part:$sender_ident} 
+     result: from CALLER 
+  condition: def:sender_helo_name
+     result: true
+considering: (helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  expanding: (helo=$sender_helo_name)
        
        
-   result: (helo=myhost.test.ex)
+     result: (helo=myhost.test.ex)
        
        
-expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+  expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
        }}
        }}
-   result: from CALLER (helo=myhost.test.ex)
+     result: from CALLER (helo=myhost.test.ex)
        
        
-condition: def:received_protocol
-   result: true
-expanding: with $received_protocol
-   result: with local-esmtp
-condition: def:sender_address
-   result: true
-expanding: (envelope-from <$sender_address>)
+  condition: def:received_protocol
+     result: true
+considering: with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  expanding: with $received_protocol
+     result: with local-esmtp
+  condition: def:sender_address
+     result: true
+considering: (envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  expanding: (envelope-from <$sender_address>)
        
        
-   result: (envelope-from <CALLER@myhost.test.ex>)
+     result: (envelope-from <CALLER@myhost.test.ex>)
        
        
-condition: def:received_for
-   result: true
-expanding: 
+  condition: def:received_for
+     result: true
+considering: 
+       for $received_for}}
+  expanding: 
        for $received_for
        for $received_for
-   result: 
+     result: 
        for usery@domain.com
        for usery@domain.com
-PDKIM <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
-expanding: ${tod_full}
-   result: Tue, 2 Mar 1999 09:44:33 +0000
+  expanding: Received: ${if def:sender_rcvhost {from $sender_rcvhost
+       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+     result: Received: from CALLER (helo=myhost.test.ex)
+       by myhost.test.ex with local-esmtp (Exim x.yz)
+       (envelope-from <CALLER@myhost.test.ex>)
+       id 10HmaZ-0005vi-00
+       for usery@domain.com
+----------- start cutthrough headers send -----------
+----------- done cutthrough headers send ------------
+PDKIM >> raw hdr: QUIT{CR}{LF}
+considering: ${tod_full}
+  expanding: ${tod_full}
+     result: Tue, 2 Mar 1999 09:44:33 +0000
   SMTP>> .
   SMTP>> .
-  SMTP<< 250 OK id=10HmaZ-0005vi-00
+  SMTP<< 250 OK id=10HmbA-0005vi-00
 LOG: MAIN
 LOG: MAIN
-  >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmaZ-0005vi-00"
+  >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbA-0005vi-00"
   SMTP>> QUIT
   SMTP>> QUIT
+  SMTP<< 221 myhost.test.ex closing connection
+  SMTP(close)>>
 ----------- cutthrough shutdown (delivered) ------------
 LOG: MAIN
   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
 ----------- cutthrough shutdown (delivered) ------------
 LOG: MAIN
   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
@@ -290,124 +471,209 @@ admin user
  in hosts_connection_nolog? no (option unset)
 LOG: smtp_connection MAIN
   SMTP connection from CALLER
  in hosts_connection_nolog? no (option unset)
 LOG: smtp_connection MAIN
   SMTP connection from CALLER
-expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
-   result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+considering: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+  expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+     result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+ in dsn_advertise_hosts? no (option unset)
  in pipelining_advertise_hosts? yes (matched "*")
  in pipelining_advertise_hosts? yes (matched "*")
+ in chunking_advertise_hosts? no (end of list)
  in tls_advertise_hosts? yes (matched "*")
  in tls_advertise_hosts? yes (matched "*")
-expanding: SERVER
-   result: SERVER
-expanding: server
-   result: server
-condition: eq {SERVER}{server}
-   result: false
-expanding: queue
-   result: queue
-skipping: result is not used
-expanding: cutthrough
-   result: cutthrough
-expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
-   result: cutthrough
+considering: ${if eq {SERVER}{server}{queue}{cutthrough}}
+considering: SERVER}{server}{queue}{cutthrough}}
+  expanding: SERVER
+     result: SERVER
+considering: server}{queue}{cutthrough}}
+  expanding: server
+     result: server
+  condition: eq {SERVER}{server}
+     result: false
+   scanning: queue}{cutthrough}}
+  expanding: queue
+     result: queue
+   skipping: result is not used
+considering: cutthrough}}
+  expanding: cutthrough
+     result: cutthrough
+  expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
+     result: cutthrough
 using ACL "cutthrough"
 processing "accept"
 check control = cutthrough_delivery
 check verify = recipient
 domain.com in "test.ex : *.test.ex"? no (end of list)
 domain.com in "! +local_domains"? yes (end of list)
 using ACL "cutthrough"
 processing "accept"
 check control = cutthrough_delivery
 check verify = recipient
 domain.com in "test.ex : *.test.ex"? no (end of list)
 domain.com in "! +local_domains"? yes (end of list)
-expanding: $local_part
-   result: usery
+considering: $local_part
+  expanding: $local_part
+     result: usery
 domain.com in "*"? yes (matched "*")
 ----------- end verify ------------
 accept: condition test succeeded in ACL "cutthrough"
 domain.com in "*"? yes (matched "*")
 ----------- end verify ------------
 accept: condition test succeeded in ACL "cutthrough"
+end of ACL "cutthrough": ACCEPT
 ----------- start cutthrough setup ------------
 domain.com in "test.ex : *.test.ex"? no (end of list)
 domain.com in "! +local_domains"? yes (end of list)
 ----------- start cutthrough setup ------------
 domain.com in "test.ex : *.test.ex"? no (end of list)
 domain.com in "! +local_domains"? yes (end of list)
-expanding: $local_part
-   result: usery
+considering: $local_part
+  expanding: $local_part
+     result: usery
 domain.com in "*"? yes (matched "*")
 Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ... connected
 domain.com in "*"? yes (matched "*")
 Connecting to 127.0.0.1 [127.0.0.1]:1225 from ip4.ip4.ip4.ip4 ... connected
-expanding: $primary_hostname
-   result: myhost.test.ex
+considering: $primary_hostname
+  expanding: $primary_hostname
+     result: myhost.test.ex
   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
   SMTP>> EHLO myhost.test.ex
   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
   SMTP>> EHLO myhost.test.ex
+cmd buf flush ddd bytes
   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
          250-SIZE 52428800
          250-8BITMIME
          250-PIPELINING
          250-STARTTLS
          250 HELP
   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
          250-SIZE 52428800
          250-8BITMIME
          250-PIPELINING
          250-STARTTLS
          250 HELP
-expanding: $address_data
-   result: usery
-expanding: usery
-   result: usery
-condition: eq {$address_data}{usery}
-   result: true
-expanding: *
-   result: *
-expanding: :
-   result: :
-skipping: result is not used
-expanding: ${if eq {$address_data}{usery}{*}{:}}
-   result: *
+considering: ${if eq {$address_data}{usery}{*}{:}}
+considering: $address_data}{usery}{*}{:}}
+  expanding: $address_data
+     result: usery
+considering: usery}{*}{:}}
+  expanding: usery
+     result: usery
+  condition: eq {$address_data}{usery}
+     result: true
+considering: *}{:}}
+  expanding: *
+     result: *
+   scanning: :}}
+  expanding: :
+     result: :
+   skipping: result is not used
+  expanding: ${if eq {$address_data}{usery}{*}{:}}
+     result: *
 127.0.0.1 in hosts_avoid_tls? yes (matched "*")
 127.0.0.1 in hosts_avoid_tls? yes (matched "*")
-  SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
-  SMTP<< 250 OK
+127.0.0.1 in hosts_avoid_pipelining? no (option unset)
+using PIPELINING
+not using DSN
+127.0.0.1 in hosts_require_auth? no (option unset)
+  SMTP>> MAIL FROM:<CALLER@myhost.test.ex> SIZE=ssss
   SMTP>> RCPT TO:<usery@domain.com>
   SMTP>> RCPT TO:<usery@domain.com>
+cmd buf flush ddd bytes
+  SMTP<< 250 OK
   SMTP<< 250 Accepted
   SMTP<< 250 Accepted
+holding verify callout open for cutthrough delivery
 ----------- end cutthrough setup ------------
 processing "accept"
 accept: condition test succeeded in inline ACL
 ----------- end cutthrough setup ------------
 processing "accept"
 accept: condition test succeeded in inline ACL
+end of inline ACL: ACCEPT
   SMTP>> DATA
   SMTP<< 354 Enter message, ending with "." on a line by itself
   SMTP>> DATA
   SMTP<< 354 Enter message, ending with "." on a line by itself
-expanding: ${tod_full}
-   result: Tue, 2 Mar 1999 09:44:33 +0000
-condition: def:sender_rcvhost
-   result: false
-expanding: from $sender_rcvhost
+PDKIM >> raw hdr: {CR}{LF}
+PDKIM >> raw hdr: .{CR}{LF}
+considering: ${tod_full}
+  expanding: ${tod_full}
+     result: Tue, 2 Mar 1999 09:44:33 +0000
+considering: Received: ${if def:sender_rcvhost {from $sender_rcvhost
+       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  condition: def:sender_rcvhost
+     result: false
+   scanning: from $sender_rcvhost
+       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  expanding: from $sender_rcvhost
        
        
-   result: from 
+     result: from 
        
        
-skipping: result is not used
-condition: def:sender_ident
-   result: true
-expanding: $sender_ident
-   result: CALLER
-expanding: from ${quote_local_part:$sender_ident} 
-   result: from CALLER 
-condition: def:sender_helo_name
-   result: true
-expanding: (helo=$sender_helo_name)
+   skipping: result is not used
+considering: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  condition: def:sender_ident
+     result: true
+considering: from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+considering: $sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  expanding: $sender_ident
+     result: CALLER
+  expanding: from ${quote_local_part:$sender_ident} 
+     result: from CALLER 
+  condition: def:sender_helo_name
+     result: true
+considering: (helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  expanding: (helo=$sender_helo_name)
        
        
-   result: (helo=myhost.test.ex)
+     result: (helo=myhost.test.ex)
        
        
-expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+  expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
        }}
        }}
-   result: from CALLER (helo=myhost.test.ex)
+     result: from CALLER (helo=myhost.test.ex)
        
        
-condition: def:received_protocol
-   result: true
-expanding: with $received_protocol
-   result: with local-esmtp
-condition: def:sender_address
-   result: true
-expanding: (envelope-from <$sender_address>)
+  condition: def:received_protocol
+     result: true
+considering: with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  expanding: with $received_protocol
+     result: with local-esmtp
+  condition: def:sender_address
+     result: true
+considering: (envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+  expanding: (envelope-from <$sender_address>)
        
        
-   result: (envelope-from <CALLER@myhost.test.ex>)
+     result: (envelope-from <CALLER@myhost.test.ex>)
        
        
-condition: def:received_for
-   result: true
-expanding: 
+  condition: def:received_for
+     result: true
+considering: 
+       for $received_for}}
+  expanding: 
        for $received_for
        for $received_for
-   result: 
+     result: 
+       for usery@domain.com
+  expanding: Received: ${if def:sender_rcvhost {from $sender_rcvhost
+       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol}} (Exim $version_number)
+       ${if def:sender_address {(envelope-from <$sender_address>)
+       }}id $message_exim_id${if def:received_for {
+       for $received_for}}
+     result: Received: from CALLER (helo=myhost.test.ex)
+       by myhost.test.ex with local-esmtp (Exim x.yz)
+       (envelope-from <CALLER@myhost.test.ex>)
+       id 10HmbB-0005vi-00
        for usery@domain.com
        for usery@domain.com
-PDKIM <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
-expanding: ${tod_full}
-   result: Tue, 2 Mar 1999 09:44:33 +0000
+----------- start cutthrough headers send -----------
+----------- done cutthrough headers send ------------
+PDKIM >> raw hdr: QUIT{CR}{LF}
+considering: ${tod_full}
+  expanding: ${tod_full}
+     result: Tue, 2 Mar 1999 09:44:33 +0000
   SMTP>> .
   SMTP>> .
-  SMTP<< 250 OK id=10HmbB-0005vi-00
+  SMTP<< 250 OK id=10HmbC-0005vi-00
 LOG: MAIN
 LOG: MAIN
-  >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbB-0005vi-00"
+  >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbC-0005vi-00"
   SMTP>> QUIT
   SMTP>> QUIT
+  SMTP<< 221 myhost.test.ex closing connection
+  SMTP(close)>>
 ----------- cutthrough shutdown (delivered) ------------
 LOG: MAIN
   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
 ----------- cutthrough shutdown (delivered) ------------
 LOG: MAIN
   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss