X-Git-Url: https://git.exim.org/users/heiko/exim.git/blobdiff_plain/02b41d7106c67bbe862d6a44373034684a03c00e..d291c7670e4c370cdc4f631ea58f82c7f4f87823:/test/stderr/5420 diff --git a/test/stderr/5420 b/test/stderr/5420 index eb3f1a9d2..eaa40bce8 100644 --- a/test/stderr/5420 +++ b/test/stderr/5420 @@ -4,40 +4,40 @@ admin user in hosts_connection_nolog? no (option unset) LOG: smtp_connection MAIN SMTP connection from CALLER -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 + ┌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 chunking_advertise_hosts? no (end of list) in tls_advertise_hosts? yes (matched "*") -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 + ┌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) -considering: $local_part - 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" @@ -45,14 +45,14 @@ 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) -considering: $local_part - 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 -considering: $primary_hostname - 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 @@ -63,43 +63,43 @@ cmd buf flush ddd bytes 250-PIPELINING 250-STARTTLS 250 HELP -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: : + ┌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) -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: : + ┌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 cmd buf flush ddd bytes @@ -119,10 +119,9 @@ using PIPELINING not using DSN 127.0.0.1 in hosts_require_auth? no (option unset) SMTP>> MAIL FROM: SIZE=ssss -cmd buf flush ddd bytes - SMTP<< 250 OK SMTP>> RCPT TO: cmd buf flush ddd bytes + SMTP<< 250 OK SMTP<< 250 Accepted holding verify callout open for cutthrough delivery ----------- end cutthrough setup ------------ @@ -131,105 +130,117 @@ 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 -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 - - 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) - - 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) - - 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 ) - - condition: def:received_for - result: true -considering: - for $received_for}} - expanding: - for $received_for - 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 ) - id 10HmaX-0005vi-00 - for userx@domain.com + ┌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 + + └───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) + + ├──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) + + ├──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:tls_cipher + ├─────result: false + ┌───scanning: ($tls_cipher) + }}(Exim $version_number) + ${if def:sender_address {(envelope-from <$sender_address>) + }}id $message_exim_id${if def:received_for { + for $received_for}} + ├──expanding: ($tls_cipher) + + ├─────result: () + + └───skipping: result is not used + ├──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 ) + + ├──condition: def:received_for + ├─────result: true + ┌considering: + for $received_for}} + ├──expanding: + for $received_for + └─────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 ) + id 10HmaX-0005vi-00 + for userx@domain.com ----------- start cutthrough headers send ----------- ----------- done cutthrough headers send ------------ -considering: ${tod_full} - expanding: ${tod_full} - result: Tue, 2 Mar 1999 09:44:33 +0000 + ┌considering: ${tod_full} + ├──expanding: ${tod_full} + └─────result: Tue, 2 Mar 1999 09:44:33 +0000 SMTP>> . SMTP<< 250 OK id=10HmaY-0005vi-00 LOG: MAIN @@ -251,40 +262,40 @@ admin user in hosts_connection_nolog? no (option unset) LOG: smtp_connection MAIN SMTP connection from CALLER -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 + ┌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 chunking_advertise_hosts? no (end of list) in tls_advertise_hosts? yes (matched "*") -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 + ┌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) -considering: $local_part - 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" @@ -292,14 +303,14 @@ 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) -considering: $local_part - 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 -considering: $primary_hostname - 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 @@ -310,34 +321,33 @@ cmd buf flush ddd bytes 250-PIPELINING 250-STARTTLS 250 HELP -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: * + ┌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_pipelining? no (option unset) using PIPELINING not using DSN 127.0.0.1 in hosts_require_auth? no (option unset) SMTP>> MAIL FROM: SIZE=ssss -cmd buf flush ddd bytes - SMTP<< 250 OK SMTP>> RCPT TO: cmd buf flush ddd bytes + SMTP<< 250 OK SMTP<< 250 Accepted holding verify callout open for cutthrough delivery ----------- end cutthrough setup ------------ @@ -346,105 +356,117 @@ 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 -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 - - 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) - - 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) - - 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 ) - - condition: def:received_for - result: true -considering: - for $received_for}} - expanding: - for $received_for - 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 ) - id 10HmaZ-0005vi-00 - for usery@domain.com + ┌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 + + └───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) + + ├──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) + + ├──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:tls_cipher + ├─────result: false + ┌───scanning: ($tls_cipher) + }}(Exim $version_number) + ${if def:sender_address {(envelope-from <$sender_address>) + }}id $message_exim_id${if def:received_for { + for $received_for}} + ├──expanding: ($tls_cipher) + + ├─────result: () + + └───skipping: result is not used + ├──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 ) + + ├──condition: def:received_for + ├─────result: true + ┌considering: + for $received_for}} + ├──expanding: + for $received_for + └─────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 ) + id 10HmaZ-0005vi-00 + for usery@domain.com ----------- start cutthrough headers send ----------- ----------- done cutthrough headers send ------------ -considering: ${tod_full} - expanding: ${tod_full} - result: Tue, 2 Mar 1999 09:44:33 +0000 + ┌considering: ${tod_full} + ├──expanding: ${tod_full} + └─────result: Tue, 2 Mar 1999 09:44:33 +0000 SMTP>> . SMTP<< 250 OK id=10HmbA-0005vi-00 LOG: MAIN @@ -466,40 +488,40 @@ admin user in hosts_connection_nolog? no (option unset) LOG: smtp_connection MAIN SMTP connection from CALLER -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 + ┌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 chunking_advertise_hosts? no (end of list) in tls_advertise_hosts? yes (matched "*") -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 + ┌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) -considering: $local_part - 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" @@ -507,14 +529,14 @@ 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) -considering: $local_part - 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 -considering: $primary_hostname - 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 @@ -525,34 +547,33 @@ cmd buf flush ddd bytes 250-PIPELINING 250-STARTTLS 250 HELP -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: * + ┌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_pipelining? no (option unset) using PIPELINING not using DSN 127.0.0.1 in hosts_require_auth? no (option unset) SMTP>> MAIL FROM: SIZE=ssss -cmd buf flush ddd bytes - SMTP<< 250 OK SMTP>> RCPT TO: cmd buf flush ddd bytes + SMTP<< 250 OK SMTP<< 250 Accepted holding verify callout open for cutthrough delivery ----------- end cutthrough setup ------------ @@ -561,105 +582,117 @@ 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 -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 - - 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) - - 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) - - 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 ) - - condition: def:received_for - result: true -considering: - for $received_for}} - expanding: - for $received_for - 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 ) - id 10HmbB-0005vi-00 - for usery@domain.com + ┌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 + + └───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) + + ├──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) + + ├──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:tls_cipher + ├─────result: false + ┌───scanning: ($tls_cipher) + }}(Exim $version_number) + ${if def:sender_address {(envelope-from <$sender_address>) + }}id $message_exim_id${if def:received_for { + for $received_for}} + ├──expanding: ($tls_cipher) + + ├─────result: () + + └───skipping: result is not used + ├──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 ) + + ├──condition: def:received_for + ├─────result: true + ┌considering: + for $received_for}} + ├──expanding: + for $received_for + └─────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 ) + id 10HmbB-0005vi-00 + for usery@domain.com ----------- start cutthrough headers send ----------- ----------- done cutthrough headers send ------------ -considering: ${tod_full} - expanding: ${tod_full} - result: Tue, 2 Mar 1999 09:44:33 +0000 + ┌considering: ${tod_full} + ├──expanding: ${tod_full} + └─────result: Tue, 2 Mar 1999 09:44:33 +0000 SMTP>> . SMTP<< 250 OK id=10HmbC-0005vi-00 LOG: MAIN