X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/caf28f95ce0a617b075cf66e24a0e4b0b8aaf18e..982854f86c4acc7779b6b65094ba557a9fcd50d6:/test/stderr/5420 diff --git a/test/stderr/5420 b/test/stderr/5420 index 5caa8fcc0..6fad569ad 100644 --- a/test/stderr/5420 +++ b/test/stderr/5420 @@ -1,101 +1,146 @@ Exim version x.yz .... +Hints DB: environment after trimming: PATH= adding SSLKEYLOGFILE=TESTSUITE/spool/sslkeys configuration file is TESTSUITE/test-config admin user +try option gecos_pattern +try option gecos_name +try option unknown_login +try option smtp_active_hostname 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 - ├considering: ESMTP Exim $version_number $tod_full - ├───────text: ESMTP Exim - ├considering: $version_number $tod_full - ├considering: $tod_full - ├───────text: +try option message_size_limit +try option acl_smtp_connect +try option smtp_banner + ╭considering: $smtp_active_hostname░ESMTP░Exim░$version_number░$tod_full + ├──────value: myhost.test.ex + ├considering: ░ESMTP░Exim░$version_number░$tod_full + ├───────text: ░ESMTP░Exim░ + ├considering: $version_number░$tod_full + ├──────value: x.yz + ├considering: ░$tod_full + ├───────text: ░ ├considering: $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 + ├──────value: Tue,░2░Mar░1999░09:44:33░+0000 + ├───expanded: $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 +try option acl_smtp_helo + list element: * + in limits_advertise_hosts? yes (matched "*") in dsn_advertise_hosts? no (option unset) +try option acl_smtp_atrn +try option acl_smtp_etrn +try option acl_smtp_vrfy +try option acl_smtp_expn in pipelining_advertise_hosts? list element: * in pipelining_advertise_hosts? yes (matched "*") in chunking_advertise_hosts? in chunking_advertise_hosts? no (end of list) - in tls_advertise_hosts? list element: * in tls_advertise_hosts? yes (matched "*") - ╭considering: ${if eq {SERVER}{server}{queue}{cutthrough}} - ╭considering: SERVER}{server}{queue}{cutthrough}} - ├───────text: SERVER - ├considering: }{server}{queue}{cutthrough}} - ├──expanding: SERVER - ╰─────result: SERVER - ╭considering: server}{queue}{cutthrough}} - ├───────text: server - ├considering: }{queue}{cutthrough}} - ├──expanding: server - ╰─────result: server - ├──condition: eq {SERVER}{server} +try option acl_smtp_mail +try option acl_smtp_rcpt + ╭considering: ${if░eq░{SERVER}{server}{queue}{cutthrough}} + cond: eq + ╭considering: SERVER}{server}{queue}{cutthrough}} + ├───────text: SERVER + ├considering: }{server}{queue}{cutthrough}} + ├───expanded: SERVER + ╰─────result: SERVER + ╭considering: server}{queue}{cutthrough}} + ├───────text: server + ├considering: }{queue}{cutthrough}} + ├───expanded: server + ╰─────result: server + ├──condition: eq░{SERVER}{server} ├─────result: false ╭───scanning: queue}{cutthrough}} ├───────text: queue ├───scanning: }{cutthrough}} - ├──expanding: queue - ├─────result: queue + ├───expanded: queue + ├─────result: ◀skipped▶ ╰───skipping: result is not used ╭considering: cutthrough}} ├───────text: cutthrough ├considering: }} - ├──expanding: cutthrough + ├───expanded: cutthrough ╰─────result: cutthrough - ├──expanding: ${if eq {SERVER}{server}{queue}{cutthrough}} + ├───expanded: ${if░eq░{SERVER}{server}{queue}{cutthrough}} ╰─────result: cutthrough using ACL "cutthrough" -processing "accept" (TESTSUITE/test-config 22) +processing ACL cutthrough "accept" (TESTSUITE/test-config 22) check control = cutthrough_delivery check verify = recipient -domain.com in "! +local_domains"? - list element: ! +local_domains +domain.com in domains? + list element: !░+local_domains start sublist local_domains domain.com in "test.ex : *.test.ex"? ╎list element: test.ex ╎list element: *.test.ex domain.com in "test.ex : *.test.ex"? no (end of list) end sublist local_domains -domain.com in "! +local_domains"? yes (end of list) +domain.com in domains? yes (end of list) +try option router_home_directory +try option set +processing address_data ╭considering: $local_part - ├──expanding: $local_part + ├──────value: userx + ╰──(tainted) + ├───expanded: $local_part ╰─────result: userx ╰──(tainted) domain.com in "*"? list element: * domain.com in "*"? yes (matched "*") +try option errors_to +try option headers_add +try option headers_remove +try option transport +try option unseen ----------- end verify ------------ -accept: condition test succeeded in ACL "cutthrough" -end of ACL "cutthrough": ACCEPT +accept: condition test succeeded in ACL cutthrough +end of ACL cutthrough: ACCEPT ----------- start cutthrough setup ------------ -domain.com in "! +local_domains"? - list element: ! +local_domains +domain.com in domains? + list element: !░+local_domains start sublist local_domains domain.com in "test.ex : *.test.ex"? ╎list element: test.ex ╎list element: *.test.ex domain.com in "test.ex : *.test.ex"? no (end of list) end sublist local_domains -domain.com in "! +local_domains"? yes (end of list) +domain.com in domains? yes (end of list) +try option router_home_directory +try option set +processing address_data ╭considering: $local_part - ├──expanding: $local_part + ├──────value: userx + ╰──(tainted) + ├───expanded: $local_part ╰─────result: userx ╰──(tainted) domain.com in "*"? list element: * domain.com in "*"? yes (matched "*") -Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ... 127.0.0.1 in hosts_try_fastopen? - list element: - connected +try option errors_to +try option headers_add +try option headers_remove +try option transport +try option unseen +try option interface +Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ... +try option dscp + 127.0.0.1 in hosts_try_fastopen? + list element: +connected +try option helo_data ╭considering: $primary_hostname - ├──expanding: $primary_hostname + ├──────value: myhost.test.ex + ├───expanded: $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) @@ -103,99 +148,109 @@ Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ... 127.0.0.1 in cmd buf flush ddd bytes SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4] 250-SIZE 52428800 + 250-LIMITS MAILMAX=1000 RCPTMAX=50000 250-8BITMIME 250-PIPELINING 250-STARTTLS 250 HELP - ╭considering: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ╭considering: $host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├considering: }{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├──expanding: $host - ╰─────result: 127.0.0.1 - ╭considering: .outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├───────text: .outlook.com - ├considering: \$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├backslashed: '\$' - ├considering: }} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├──expanding: .outlook.com\$ - ╰─────result: .outlook.com$ - compiled RE '.outlook.com$' not found in local cache - compiling RE '.outlook.com$' - compiled RE '.outlook.com$' saved in local cache - ╭───scanning: $item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├───scanning: }{\N^250-([\w.]+)\s\N}}} {$1}} - ├──expanding: $item - ├─────result: - ╰───skipping: result is not used - ╭───scanning: \N^250-([\w.]+)\s\N}}} {$1}} - ├──protected: ^250-([\w.]+)\s - ├───scanning: }}} {$1}} - ├──expanding: \N^250-([\w.]+)\s\N - ├─────result: ^250-([\w.]+)\s - ╰───skipping: result is not used - ├──condition: and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} +try option host_name_extract + ╭considering: ${if░and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + cond: and + cond: match + ╎╭considering: $host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├──────value: 127.0.0.1 + ╎├considering: }{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├───expanded: $host + ╎╰─────result: 127.0.0.1 + ╎╭considering: .outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├───────text: .outlook.com + ╎├considering: \$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├backslashed: '\$' + ╎├considering: }}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├───expanded: .outlook.com\$ + ╎╰─────result: .outlook.com$ + cond: match + ╎╭───scanning: $item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├──────value: + ╎├───scanning: }{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├───expanded: $item + ╎├─────result: ◀skipped▶ + ╎╰───skipping: result is not used + ╎╭───scanning: \N^250-([\w.]+)\s\N}}}░{$1}} + ╎├──protected: ^250-([\w.]+)\s + ╎├───scanning: }}}░{$1}} + ╎├───expanded: \N^250-([\w.]+)\s\N + ╎├─────result: ◀skipped▶ + ╎╰───skipping: result is not used + ├──condition: and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}} ├─────result: false ╭───scanning: $1}} ├───scanning: }} - ├──expanding: $1 - ├─────result: + ├───expanded: $1 + ├─────result: ◀skipped▶ ╰───skipping: result is not used - ├──expanding: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} + ├───expanded: ${if░and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} ╰─────result: - ╭considering: ${if eq {$address_data}{usery}{*}{:}} - ╭considering: $address_data}{usery}{*}{:}} - ├considering: }{usery}{*}{:}} - ├──expanding: $address_data - ╰─────result: userx - ╰──(tainted) - ╭considering: usery}{*}{:}} - ├───────text: usery - ├considering: }{*}{:}} - ├──expanding: usery - ╰─────result: usery - ├──condition: eq {$address_data}{usery} + ╭considering: ${if░eq░{$address_data}{usery}{*}{:}} + cond: eq + ╭considering: $address_data}{usery}{*}{:}} + ├──────value: userx + ╰──(tainted) + ├considering: }{usery}{*}{:}} + ├───expanded: $address_data + ╰─────result: userx + ╰──(tainted) + ╭considering: usery}{*}{:}} + ├───────text: usery + ├considering: }{*}{:}} + ├───expanded: usery + ╰─────result: usery + ├──condition: eq░{$address_data}{usery} ├─────result: false ╭───scanning: *}{:}} ├───────text: * ├───scanning: }{:}} - ├──expanding: * - ├─────result: * + ├───expanded: * + ├─────result: ◀skipped▶ ╰───skipping: result is not used ╭considering: :}} ├───────text: : ├considering: }} - ├──expanding: : + ├───expanded: : ╰─────result: : - ├──expanding: ${if eq {$address_data}{usery}{*}{:}} + ├───expanded: ${if░eq░{$address_data}{usery}{*}{:}} ╰─────result: : 127.0.0.1 in hosts_avoid_tls? list element: 127.0.0.1 in hosts_avoid_tls? no (end of list) - ╭considering: ${if eq {$address_data}{userz}{*}{:}} - ╭considering: $address_data}{userz}{*}{:}} - ├considering: }{userz}{*}{:}} - ├──expanding: $address_data - ╰─────result: userx - ╰──(tainted) - ╭considering: userz}{*}{:}} - ├───────text: userz - ├considering: }{*}{:}} - ├──expanding: userz - ╰─────result: userz - ├──condition: eq {$address_data}{userz} + ╭considering: ${if░eq░{$address_data}{userz}{*}{:}} + cond: eq + ╭considering: $address_data}{userz}{*}{:}} + ├──────value: userx + ╰──(tainted) + ├considering: }{userz}{*}{:}} + ├───expanded: $address_data + ╰─────result: userx + ╰──(tainted) + ╭considering: userz}{*}{:}} + ├───────text: userz + ├considering: }{*}{:}} + ├───expanded: userz + ╰─────result: userz + ├──condition: eq░{$address_data}{userz} ├─────result: false ╭───scanning: *}{:}} ├───────text: * ├───scanning: }{:}} - ├──expanding: * - ├─────result: * + ├───expanded: * + ├─────result: ◀skipped▶ ╰───skipping: result is not used ╭considering: :}} ├───────text: : ├considering: }} - ├──expanding: : + ├───expanded: : ╰─────result: : - ├──expanding: ${if eq {$address_data}{userz}{*}{:}} + ├───expanded: ${if░eq░{$address_data}{userz}{*}{:}} ╰─────result: : 127.0.0.1 in hosts_verify_avoid_tls? list element: @@ -215,6 +270,7 @@ cmd buf flush ddd bytes cmd buf flush ddd bytes SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4] 250-SIZE 52428800 + 250-LIMITS MAILMAX=1000 RCPTMAX=50000 250-8BITMIME 250-PIPELINING 250 HELP @@ -222,6 +278,7 @@ cmd buf flush ddd bytes using PIPELINING not using DSN 127.0.0.1 in hosts_require_auth? no (option unset) +try option authenticated_sender SMTP|> MAIL FROM: SMTP>> RCPT TO: cmd buf flush ddd bytes @@ -231,357 +288,379 @@ sync_responses expect rcpt for userx@domain.com SMTP<< 250 Accepted holding verify callout open for cutthrough delivery ----------- end cutthrough setup ------------ -processing "accept" (TESTSUITE/test-config 55) +try option acl_smtp_predata +processing inline ACL "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 +try option message_id_header_domain +try option message_id_header_text ╭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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: Received: - ├considering: ${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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ├───expanded: ${tod_full} + ╰─────result: Tue,░2░Mar░1999░09:44:33░+0000 +try option received_header_text + ╭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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: Received:░ + ├considering: ${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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: from - ├───scanning: $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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───scanning: - }{${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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: - - ├───scanning: }{${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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(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 - + ╭───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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: from░ + ├───scanning: $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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: + ├───scanning: ↩ + ␉}{${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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ↩ + ␉ + ├───scanning: }{${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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: from░$sender_rcvhost↩ + ␉ + ├─────result: ◀skipped▶ ╰───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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ╭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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: from - ├considering: ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name) - }}}}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 - }}(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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - ╎ }}(Exim $version_number) - ╎ ${if def:sender_address {(envelope-from <$sender_address>) - ╎ }}id $message_exim_id${if def:received_for { - ╎ for $received_for}} - ╎├considering: } }}${if def:sender_helo_name {(helo=$sender_helo_name) - ╎ }}}}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 - ╎ }}(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 + ╭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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: from░ + ├considering: ${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ╎␉}}(Exim░$version_number)↩ + ╎␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ╎␉}}id░$message_exim_id${if░def:received_for░{↩ + ╎␉for░$received_for}} + ╎├──────value: CALLER + ╎├considering: }░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩ + ╎␉}}}}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↩ + ╎␉}}(Exim░$version_number)↩ + ╎␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ╎␉}}id░$message_exim_id${if░def:received_for░{↩ + ╎␉for░$received_for}} + ╎├───expanded: $sender_ident ╎╰─────result: CALLER ├─────op-res: CALLER - ├considering: }}${if def:sender_helo_name {(helo=$sender_helo_name) - }}}}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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: - ├considering: }}${if def:sender_helo_name {(helo=$sender_helo_name) - }}}}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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├──expanding: from ${quote_local_part:$sender_ident} - ╰─────result: from CALLER - ├───item-res: from CALLER - ├considering: ${if def:sender_helo_name {(helo=$sender_helo_name) - }}}}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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ├considering: ░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ░ + ├considering: }}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: from░${quote_local_part:$sender_ident}░ + ╰─────result: from░CALLER░ + ├───item-res: from░CALLER░ + ├considering: ${if░def:sender_helo_name░{(helo=$sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──condition: def:sender_helo_name ├─────result: true - ╭considering: (helo=$sender_helo_name) - }}}}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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ╭considering: (helo=$sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} ├───────text: (helo= - ├considering: $sender_helo_name) - }}}}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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: ) - - ├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 - }}(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) - + ├considering: $sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: myhost.test.ex ╰──(tainted) - ├───item-res: (helo=myhost.test.ex) - + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: )↩ + ␉ + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: (helo=$sender_helo_name)↩ + ␉ + ╰─────result: (helo=myhost.test.ex)↩ + ␉ + ╰──(tainted) + ├───item-res: (helo=myhost.test.ex)↩ + ␉ ╰──(tainted) - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├──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) - + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: ${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)↩ + ␉ ╰──(tainted) - ├───item-res: from CALLER (helo=myhost.test.ex) - + ├───item-res: from░CALLER░(helo=myhost.test.ex)↩ + ␉ ╰──(tainted) - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: by - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: by░ + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: myhost.test.ex + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ░ + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──condition: def:received_protocol ├─────result: true - ╭considering: with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: with - ├considering: $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├considering: }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: - ├considering: }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(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 - ├───item-res: with local-esmtp + ╭considering: with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: with░ + ├considering: $received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: local-esmtp + ├considering: ░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ░ + ├considering: }}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: with░$received_protocol░ + ╰─────result: with░local-esmtp░ + ├───item-res: with░local-esmtp░ ╰──(tainted) - ├considering: ${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├──expanding: ($tls_in_ver) - ├─────result: () + ├considering: ${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: ░($tls_in_ver) + ├─────result: ◀skipped▶ ╰───skipping: result is not used ├───item-res: - ╰──(tainted) - ├considering: ${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ├considering: ${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──condition: def:tls_in_cipher_std ├─────result: false - ╭───scanning: tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: tls - ├───scanning: $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───scanning: - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: - - ├───scanning: }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├──expanding: tls $tls_in_cipher_std - - ├─────result: tls - + ╭───scanning: ░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ░tls░ + ├───scanning: $tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: + ├───scanning: ↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ↩ + ␉ + ├───scanning: }}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: ░tls░$tls_in_cipher_std↩ + ␉ + ├─────result: ◀skipped▶ ╰───skipping: result is not used ├───item-res: - ╰──(tainted) - ├considering: (Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: (Exim - ├considering: $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├considering: ) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: ) - - ├considering: ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ├considering: (Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: (Exim░ + ├considering: $version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: x.yz + ├considering: )↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: )↩ + ␉ + ├considering: ${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──condition: def:sender_address ├─────result: true - ╭considering: (envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: (envelope-from < - ├considering: $sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├considering: >) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: >) - - ├considering: }}id $message_exim_id${if def:received_for { - for $received_for}} - ├──expanding: (envelope-from <$sender_address>) - - ╰─────result: (envelope-from ) - - ├───item-res: (envelope-from ) - + ╭considering: (envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: (envelope-from░< + ├considering: $sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: CALLER@myhost.test.ex + ├considering: >)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: >)↩ + ␉ + ├considering: }}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: (envelope-from░<$sender_address>)↩ + ␉ + ╰─────result: (envelope-from░)↩ + ␉ + ├───item-res: (envelope-from░)↩ + ␉ ╰──(tainted) - ├considering: id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: id - ├considering: $message_exim_id${if def:received_for { - for $received_for}} - ├considering: ${if def:received_for { - for $received_for}} + ├considering: id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: id░ + ├considering: $message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: 10HmaX-000000005vi-0000 + ├considering: ${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──condition: def:received_for ├─────result: true - ╭considering: - for $received_for}} - ├───────text: - for + ╭considering: ↩ + ␉for░$received_for}} + ├───────text: ↩ + ␉for░ ├considering: $received_for}} + ├──────value: userx@domain.com + ╰──(tainted) ├considering: }} - ├──expanding: - for $received_for - ╰─────result: - for userx@domain.com + ├───expanded: ↩ + ␉for░$received_for + ╰─────result: ↩ + ␉for░userx@domain.com ╰──(tainted) - ├───item-res: - for userx@domain.com + ├───item-res: ↩ + ␉for░userx@domain.com ╰──(tainted) - ├──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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(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 + ├───expanded: 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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(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-000000005vi-0000↩ + ␉for░userx@domain.com ╰──(tainted) ----------- start cutthrough headers send ----------- ----------- done cutthrough headers send ------------ +try option acl_smtp_data ╭considering: ${tod_full} - ├──expanding: ${tod_full} - ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000 + ├───expanded: ${tod_full} + ╰─────result: Tue,░2░Mar░1999░09:44:33░+0000 SMTP>> . - SMTP<< 250 OK id=10HmaY-0005vi-00 + SMTP<< 250 OK id=10HmaY-000000005vi-0000 LOG: MAIN - >> userx@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=no C="250 OK id=10HmaY-0005vi-00" + >> 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" SMTP>> QUIT SMTP<< 221 myhost.test.ex closing connection SMTP(close)>> @@ -591,107 +670,153 @@ LOG: MAIN <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss LOG: MAIN Completed +try option acl_smtp_quit LOG: smtp_connection MAIN - SMTP connection from CALLER closed by QUIT + SMTP connection from CALLER D=qqs closed by QUIT >>>>>>>>>>>>>>>> Exim pid=p1235 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>> Exim version x.yz .... +Hints DB: environment after trimming: PATH= adding SSLKEYLOGFILE=TESTSUITE/spool/sslkeys configuration file is TESTSUITE/test-config admin user +try option gecos_pattern +try option gecos_name +try option unknown_login +try option smtp_active_hostname 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 - ├considering: ESMTP Exim $version_number $tod_full - ├───────text: ESMTP Exim - ├considering: $version_number $tod_full - ├considering: $tod_full - ├───────text: +try option message_size_limit +try option acl_smtp_connect +try option smtp_banner + ╭considering: $smtp_active_hostname░ESMTP░Exim░$version_number░$tod_full + ├──────value: myhost.test.ex + ├considering: ░ESMTP░Exim░$version_number░$tod_full + ├───────text: ░ESMTP░Exim░ + ├considering: $version_number░$tod_full + ├──────value: x.yz + ├considering: ░$tod_full + ├───────text: ░ ├considering: $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 + ├──────value: Tue,░2░Mar░1999░09:44:33░+0000 + ├───expanded: $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 +try option acl_smtp_helo + list element: * + in limits_advertise_hosts? yes (matched "*") in dsn_advertise_hosts? no (option unset) +try option acl_smtp_atrn +try option acl_smtp_etrn +try option acl_smtp_vrfy +try option acl_smtp_expn in pipelining_advertise_hosts? list element: * in pipelining_advertise_hosts? yes (matched "*") in chunking_advertise_hosts? in chunking_advertise_hosts? no (end of list) - in tls_advertise_hosts? list element: * in tls_advertise_hosts? yes (matched "*") - ╭considering: ${if eq {SERVER}{server}{queue}{cutthrough}} - ╭considering: SERVER}{server}{queue}{cutthrough}} - ├───────text: SERVER - ├considering: }{server}{queue}{cutthrough}} - ├──expanding: SERVER - ╰─────result: SERVER - ╭considering: server}{queue}{cutthrough}} - ├───────text: server - ├considering: }{queue}{cutthrough}} - ├──expanding: server - ╰─────result: server - ├──condition: eq {SERVER}{server} +try option acl_smtp_mail +try option acl_smtp_rcpt + ╭considering: ${if░eq░{SERVER}{server}{queue}{cutthrough}} + cond: eq + ╭considering: SERVER}{server}{queue}{cutthrough}} + ├───────text: SERVER + ├considering: }{server}{queue}{cutthrough}} + ├───expanded: SERVER + ╰─────result: SERVER + ╭considering: server}{queue}{cutthrough}} + ├───────text: server + ├considering: }{queue}{cutthrough}} + ├───expanded: server + ╰─────result: server + ├──condition: eq░{SERVER}{server} ├─────result: false ╭───scanning: queue}{cutthrough}} ├───────text: queue ├───scanning: }{cutthrough}} - ├──expanding: queue - ├─────result: queue + ├───expanded: queue + ├─────result: ◀skipped▶ ╰───skipping: result is not used ╭considering: cutthrough}} ├───────text: cutthrough ├considering: }} - ├──expanding: cutthrough + ├───expanded: cutthrough ╰─────result: cutthrough - ├──expanding: ${if eq {SERVER}{server}{queue}{cutthrough}} + ├───expanded: ${if░eq░{SERVER}{server}{queue}{cutthrough}} ╰─────result: cutthrough using ACL "cutthrough" -processing "accept" (TESTSUITE/test-config 22) +processing ACL cutthrough "accept" (TESTSUITE/test-config 22) check control = cutthrough_delivery check verify = recipient -domain.com in "! +local_domains"? - list element: ! +local_domains +domain.com in domains? + list element: !░+local_domains start sublist local_domains domain.com in "test.ex : *.test.ex"? ╎list element: test.ex ╎list element: *.test.ex domain.com in "test.ex : *.test.ex"? no (end of list) end sublist local_domains -domain.com in "! +local_domains"? yes (end of list) +domain.com in domains? yes (end of list) +try option router_home_directory +try option set +processing address_data ╭considering: $local_part - ├──expanding: $local_part + ├──────value: usery + ╰──(tainted) + ├───expanded: $local_part ╰─────result: usery ╰──(tainted) domain.com in "*"? list element: * domain.com in "*"? yes (matched "*") +try option errors_to +try option headers_add +try option headers_remove +try option transport +try option unseen ----------- end verify ------------ -accept: condition test succeeded in ACL "cutthrough" -end of ACL "cutthrough": ACCEPT +accept: condition test succeeded in ACL cutthrough +end of ACL cutthrough: ACCEPT ----------- start cutthrough setup ------------ -domain.com in "! +local_domains"? - list element: ! +local_domains +domain.com in domains? + list element: !░+local_domains start sublist local_domains domain.com in "test.ex : *.test.ex"? ╎list element: test.ex ╎list element: *.test.ex domain.com in "test.ex : *.test.ex"? no (end of list) end sublist local_domains -domain.com in "! +local_domains"? yes (end of list) +domain.com in domains? yes (end of list) +try option router_home_directory +try option set +processing address_data ╭considering: $local_part - ├──expanding: $local_part + ├──────value: usery + ╰──(tainted) + ├───expanded: $local_part ╰─────result: usery ╰──(tainted) domain.com in "*"? list element: * domain.com in "*"? yes (matched "*") -Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ... 127.0.0.1 in hosts_try_fastopen? - list element: - connected +try option errors_to +try option headers_add +try option headers_remove +try option transport +try option unseen +try option interface +Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ... +try option dscp + 127.0.0.1 in hosts_try_fastopen? + list element: +connected +try option helo_data ╭considering: $primary_hostname - ├──expanding: $primary_hostname + ├──────value: myhost.test.ex + ├───expanded: $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) @@ -699,70 +824,77 @@ Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ... 127.0.0.1 in cmd buf flush ddd bytes SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4] 250-SIZE 52428800 + 250-LIMITS MAILMAX=1000 RCPTMAX=50000 250-8BITMIME 250-PIPELINING 250-STARTTLS 250 HELP - ╭considering: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ╭considering: $host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├considering: }{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├──expanding: $host - ╰─────result: 127.0.0.1 - ╭considering: .outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├───────text: .outlook.com - ├considering: \$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├backslashed: '\$' - ├considering: }} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├──expanding: .outlook.com\$ - ╰─────result: .outlook.com$ - compiled RE '.outlook.com$' not found in local cache - compiling RE '.outlook.com$' - compiled RE '.outlook.com$' saved in local cache - ╭───scanning: $item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├───scanning: }{\N^250-([\w.]+)\s\N}}} {$1}} - ├──expanding: $item - ├─────result: - ╰───skipping: result is not used - ╭───scanning: \N^250-([\w.]+)\s\N}}} {$1}} - ├──protected: ^250-([\w.]+)\s - ├───scanning: }}} {$1}} - ├──expanding: \N^250-([\w.]+)\s\N - ├─────result: ^250-([\w.]+)\s - ╰───skipping: result is not used - ├──condition: and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} +try option host_name_extract + ╭considering: ${if░and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + cond: and + cond: match + ╎╭considering: $host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├──────value: 127.0.0.1 + ╎├considering: }{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├───expanded: $host + ╎╰─────result: 127.0.0.1 + ╎╭considering: .outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├───────text: .outlook.com + ╎├considering: \$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├backslashed: '\$' + ╎├considering: }}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├───expanded: .outlook.com\$ + ╎╰─────result: .outlook.com$ + cond: match + ╎╭───scanning: $item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├──────value: + ╎├───scanning: }{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├───expanded: $item + ╎├─────result: ◀skipped▶ + ╎╰───skipping: result is not used + ╎╭───scanning: \N^250-([\w.]+)\s\N}}}░{$1}} + ╎├──protected: ^250-([\w.]+)\s + ╎├───scanning: }}}░{$1}} + ╎├───expanded: \N^250-([\w.]+)\s\N + ╎├─────result: ◀skipped▶ + ╎╰───skipping: result is not used + ├──condition: and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}} ├─────result: false ╭───scanning: $1}} ├───scanning: }} - ├──expanding: $1 - ├─────result: + ├───expanded: $1 + ├─────result: ◀skipped▶ ╰───skipping: result is not used - ├──expanding: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} + ├───expanded: ${if░and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} ╰─────result: - ╭considering: ${if eq {$address_data}{usery}{*}{:}} - ╭considering: $address_data}{usery}{*}{:}} - ├considering: }{usery}{*}{:}} - ├──expanding: $address_data - ╰─────result: usery - ╰──(tainted) - ╭considering: usery}{*}{:}} - ├───────text: usery - ├considering: }{*}{:}} - ├──expanding: usery - ╰─────result: usery - ├──condition: eq {$address_data}{usery} + ╭considering: ${if░eq░{$address_data}{usery}{*}{:}} + cond: eq + ╭considering: $address_data}{usery}{*}{:}} + ├──────value: usery + ╰──(tainted) + ├considering: }{usery}{*}{:}} + ├───expanded: $address_data + ╰─────result: usery + ╰──(tainted) + ╭considering: usery}{*}{:}} + ├───────text: usery + ├considering: }{*}{:}} + ├───expanded: usery + ╰─────result: usery + ├──condition: eq░{$address_data}{usery} ├─────result: true ╭considering: *}{:}} ├───────text: * ├considering: }{:}} - ├──expanding: * + ├───expanded: * ╰─────result: * ╭───scanning: :}} ├───────text: : ├───scanning: }} - ├──expanding: : - ├─────result: : + ├───expanded: : + ├─────result: ◀skipped▶ ╰───skipping: result is not used - ├──expanding: ${if eq {$address_data}{usery}{*}{:}} + ├───expanded: ${if░eq░{$address_data}{usery}{*}{:}} ╰─────result: * 127.0.0.1 in hosts_avoid_tls? list element: * @@ -771,6 +903,7 @@ cmd buf flush ddd bytes using PIPELINING not using DSN 127.0.0.1 in hosts_require_auth? no (option unset) +try option authenticated_sender SMTP|> MAIL FROM: SMTP>> RCPT TO: cmd buf flush ddd bytes @@ -780,357 +913,379 @@ sync_responses expect rcpt for usery@domain.com SMTP<< 250 Accepted holding verify callout open for cutthrough delivery ----------- end cutthrough setup ------------ -processing "accept" (TESTSUITE/test-config 55) +try option acl_smtp_predata +processing inline ACL "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 +try option message_id_header_domain +try option message_id_header_text ╭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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: Received: - ├considering: ${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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ├───expanded: ${tod_full} + ╰─────result: Tue,░2░Mar░1999░09:44:33░+0000 +try option received_header_text + ╭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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: Received:░ + ├considering: ${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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: from - ├───scanning: $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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───scanning: - }{${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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: - - ├───scanning: }{${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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(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 - + ╭───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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: from░ + ├───scanning: $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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: + ├───scanning: ↩ + ␉}{${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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ↩ + ␉ + ├───scanning: }{${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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: from░$sender_rcvhost↩ + ␉ + ├─────result: ◀skipped▶ ╰───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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ╭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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: from - ├considering: ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name) - }}}}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 - }}(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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - ╎ }}(Exim $version_number) - ╎ ${if def:sender_address {(envelope-from <$sender_address>) - ╎ }}id $message_exim_id${if def:received_for { - ╎ for $received_for}} - ╎├considering: } }}${if def:sender_helo_name {(helo=$sender_helo_name) - ╎ }}}}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 - ╎ }}(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 + ╭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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: from░ + ├considering: ${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ╎␉}}(Exim░$version_number)↩ + ╎␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ╎␉}}id░$message_exim_id${if░def:received_for░{↩ + ╎␉for░$received_for}} + ╎├──────value: CALLER + ╎├considering: }░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩ + ╎␉}}}}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↩ + ╎␉}}(Exim░$version_number)↩ + ╎␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ╎␉}}id░$message_exim_id${if░def:received_for░{↩ + ╎␉for░$received_for}} + ╎├───expanded: $sender_ident ╎╰─────result: CALLER ├─────op-res: CALLER - ├considering: }}${if def:sender_helo_name {(helo=$sender_helo_name) - }}}}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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: - ├considering: }}${if def:sender_helo_name {(helo=$sender_helo_name) - }}}}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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├──expanding: from ${quote_local_part:$sender_ident} - ╰─────result: from CALLER - ├───item-res: from CALLER - ├considering: ${if def:sender_helo_name {(helo=$sender_helo_name) - }}}}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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ├considering: ░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ░ + ├considering: }}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: from░${quote_local_part:$sender_ident}░ + ╰─────result: from░CALLER░ + ├───item-res: from░CALLER░ + ├considering: ${if░def:sender_helo_name░{(helo=$sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──condition: def:sender_helo_name ├─────result: true - ╭considering: (helo=$sender_helo_name) - }}}}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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ╭considering: (helo=$sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} ├───────text: (helo= - ├considering: $sender_helo_name) - }}}}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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: ) - - ├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 - }}(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) - + ├considering: $sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: myhost.test.ex ╰──(tainted) - ├───item-res: (helo=myhost.test.ex) - + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: )↩ + ␉ + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: (helo=$sender_helo_name)↩ + ␉ + ╰─────result: (helo=myhost.test.ex)↩ + ␉ + ╰──(tainted) + ├───item-res: (helo=myhost.test.ex)↩ + ␉ ╰──(tainted) - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├──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) - + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: ${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)↩ + ␉ ╰──(tainted) - ├───item-res: from CALLER (helo=myhost.test.ex) - + ├───item-res: from░CALLER░(helo=myhost.test.ex)↩ + ␉ ╰──(tainted) - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: by - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: by░ + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: myhost.test.ex + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ░ + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──condition: def:received_protocol ├─────result: true - ╭considering: with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: with - ├considering: $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├considering: }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: - ├considering: }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(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 - ├───item-res: with local-esmtp + ╭considering: with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: with░ + ├considering: $received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: local-esmtp + ├considering: ░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ░ + ├considering: }}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: with░$received_protocol░ + ╰─────result: with░local-esmtp░ + ├───item-res: with░local-esmtp░ ╰──(tainted) - ├considering: ${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├──expanding: ($tls_in_ver) - ├─────result: () + ├considering: ${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: ░($tls_in_ver) + ├─────result: ◀skipped▶ ╰───skipping: result is not used ├───item-res: - ╰──(tainted) - ├considering: ${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ├considering: ${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──condition: def:tls_in_cipher_std ├─────result: false - ╭───scanning: tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: tls - ├───scanning: $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───scanning: - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: - - ├───scanning: }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├──expanding: tls $tls_in_cipher_std - - ├─────result: tls - + ╭───scanning: ░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ░tls░ + ├───scanning: $tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: + ├───scanning: ↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ↩ + ␉ + ├───scanning: }}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: ░tls░$tls_in_cipher_std↩ + ␉ + ├─────result: ◀skipped▶ ╰───skipping: result is not used ├───item-res: - ╰──(tainted) - ├considering: (Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: (Exim - ├considering: $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├considering: ) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: ) - - ├considering: ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ├considering: (Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: (Exim░ + ├considering: $version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: x.yz + ├considering: )↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: )↩ + ␉ + ├considering: ${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──condition: def:sender_address ├─────result: true - ╭considering: (envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: (envelope-from < - ├considering: $sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├considering: >) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: >) - - ├considering: }}id $message_exim_id${if def:received_for { - for $received_for}} - ├──expanding: (envelope-from <$sender_address>) - - ╰─────result: (envelope-from ) - - ├───item-res: (envelope-from ) - + ╭considering: (envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: (envelope-from░< + ├considering: $sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: CALLER@myhost.test.ex + ├considering: >)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: >)↩ + ␉ + ├considering: }}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: (envelope-from░<$sender_address>)↩ + ␉ + ╰─────result: (envelope-from░)↩ + ␉ + ├───item-res: (envelope-from░)↩ + ␉ ╰──(tainted) - ├considering: id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: id - ├considering: $message_exim_id${if def:received_for { - for $received_for}} - ├considering: ${if def:received_for { - for $received_for}} + ├considering: id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: id░ + ├considering: $message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: 10HmaZ-000000005vi-0000 + ├considering: ${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──condition: def:received_for ├─────result: true - ╭considering: - for $received_for}} - ├───────text: - for + ╭considering: ↩ + ␉for░$received_for}} + ├───────text: ↩ + ␉for░ ├considering: $received_for}} + ├──────value: usery@domain.com + ╰──(tainted) ├considering: }} - ├──expanding: - for $received_for - ╰─────result: - for usery@domain.com + ├───expanded: ↩ + ␉for░$received_for + ╰─────result: ↩ + ␉for░usery@domain.com ╰──(tainted) - ├───item-res: - for usery@domain.com + ├───item-res: ↩ + ␉for░usery@domain.com ╰──(tainted) - ├──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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(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 + ├───expanded: 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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(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-000000005vi-0000↩ + ␉for░usery@domain.com ╰──(tainted) ----------- start cutthrough headers send ----------- ----------- done cutthrough headers send ------------ +try option acl_smtp_data ╭considering: ${tod_full} - ├──expanding: ${tod_full} - ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000 + ├───expanded: ${tod_full} + ╰─────result: Tue,░2░Mar░1999░09:44:33░+0000 SMTP>> . - SMTP<< 250 OK id=10HmbA-0005vi-00 + SMTP<< 250 OK id=10HmbA-000000005vi-0000 LOG: MAIN - >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbA-0005vi-00" + >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbA-000000005vi-0000" SMTP>> QUIT SMTP<< 221 myhost.test.ex closing connection SMTP(close)>> @@ -1140,107 +1295,153 @@ LOG: MAIN <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss LOG: MAIN Completed +try option acl_smtp_quit LOG: smtp_connection MAIN - SMTP connection from CALLER closed by QUIT + SMTP connection from CALLER D=qqs closed by QUIT >>>>>>>>>>>>>>>> Exim pid=p1236 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>> Exim version x.yz .... +Hints DB: environment after trimming: PATH= adding SSLKEYLOGFILE=TESTSUITE/spool/sslkeys configuration file is TESTSUITE/test-config admin user +try option gecos_pattern +try option gecos_name +try option unknown_login +try option smtp_active_hostname 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 - ├considering: ESMTP Exim $version_number $tod_full - ├───────text: ESMTP Exim - ├considering: $version_number $tod_full - ├considering: $tod_full - ├───────text: +try option message_size_limit +try option acl_smtp_connect +try option smtp_banner + ╭considering: $smtp_active_hostname░ESMTP░Exim░$version_number░$tod_full + ├──────value: myhost.test.ex + ├considering: ░ESMTP░Exim░$version_number░$tod_full + ├───────text: ░ESMTP░Exim░ + ├considering: $version_number░$tod_full + ├──────value: x.yz + ├considering: ░$tod_full + ├───────text: ░ ├considering: $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 + ├──────value: Tue,░2░Mar░1999░09:44:33░+0000 + ├───expanded: $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 +try option acl_smtp_helo + list element: * + in limits_advertise_hosts? yes (matched "*") in dsn_advertise_hosts? no (option unset) +try option acl_smtp_atrn +try option acl_smtp_etrn +try option acl_smtp_vrfy +try option acl_smtp_expn in pipelining_advertise_hosts? list element: * in pipelining_advertise_hosts? yes (matched "*") in chunking_advertise_hosts? in chunking_advertise_hosts? no (end of list) - in tls_advertise_hosts? list element: * in tls_advertise_hosts? yes (matched "*") - ╭considering: ${if eq {SERVER}{server}{queue}{cutthrough}} - ╭considering: SERVER}{server}{queue}{cutthrough}} - ├───────text: SERVER - ├considering: }{server}{queue}{cutthrough}} - ├──expanding: SERVER - ╰─────result: SERVER - ╭considering: server}{queue}{cutthrough}} - ├───────text: server - ├considering: }{queue}{cutthrough}} - ├──expanding: server - ╰─────result: server - ├──condition: eq {SERVER}{server} +try option acl_smtp_mail +try option acl_smtp_rcpt + ╭considering: ${if░eq░{SERVER}{server}{queue}{cutthrough}} + cond: eq + ╭considering: SERVER}{server}{queue}{cutthrough}} + ├───────text: SERVER + ├considering: }{server}{queue}{cutthrough}} + ├───expanded: SERVER + ╰─────result: SERVER + ╭considering: server}{queue}{cutthrough}} + ├───────text: server + ├considering: }{queue}{cutthrough}} + ├───expanded: server + ╰─────result: server + ├──condition: eq░{SERVER}{server} ├─────result: false ╭───scanning: queue}{cutthrough}} ├───────text: queue ├───scanning: }{cutthrough}} - ├──expanding: queue - ├─────result: queue + ├───expanded: queue + ├─────result: ◀skipped▶ ╰───skipping: result is not used ╭considering: cutthrough}} ├───────text: cutthrough ├considering: }} - ├──expanding: cutthrough + ├───expanded: cutthrough ╰─────result: cutthrough - ├──expanding: ${if eq {SERVER}{server}{queue}{cutthrough}} + ├───expanded: ${if░eq░{SERVER}{server}{queue}{cutthrough}} ╰─────result: cutthrough using ACL "cutthrough" -processing "accept" (TESTSUITE/test-config 22) +processing ACL cutthrough "accept" (TESTSUITE/test-config 22) check control = cutthrough_delivery check verify = recipient -domain.com in "! +local_domains"? - list element: ! +local_domains +domain.com in domains? + list element: !░+local_domains start sublist local_domains domain.com in "test.ex : *.test.ex"? ╎list element: test.ex ╎list element: *.test.ex domain.com in "test.ex : *.test.ex"? no (end of list) end sublist local_domains -domain.com in "! +local_domains"? yes (end of list) +domain.com in domains? yes (end of list) +try option router_home_directory +try option set +processing address_data ╭considering: $local_part - ├──expanding: $local_part + ├──────value: usery + ╰──(tainted) + ├───expanded: $local_part ╰─────result: usery ╰──(tainted) domain.com in "*"? list element: * domain.com in "*"? yes (matched "*") +try option errors_to +try option headers_add +try option headers_remove +try option transport +try option unseen ----------- end verify ------------ -accept: condition test succeeded in ACL "cutthrough" -end of ACL "cutthrough": ACCEPT +accept: condition test succeeded in ACL cutthrough +end of ACL cutthrough: ACCEPT ----------- start cutthrough setup ------------ -domain.com in "! +local_domains"? - list element: ! +local_domains +domain.com in domains? + list element: !░+local_domains start sublist local_domains domain.com in "test.ex : *.test.ex"? ╎list element: test.ex ╎list element: *.test.ex domain.com in "test.ex : *.test.ex"? no (end of list) end sublist local_domains -domain.com in "! +local_domains"? yes (end of list) +domain.com in domains? yes (end of list) +try option router_home_directory +try option set +processing address_data ╭considering: $local_part - ├──expanding: $local_part + ├──────value: usery + ╰──(tainted) + ├───expanded: $local_part ╰─────result: usery ╰──(tainted) domain.com in "*"? list element: * domain.com in "*"? yes (matched "*") -Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ... 127.0.0.1 in hosts_try_fastopen? - list element: - connected +try option errors_to +try option headers_add +try option headers_remove +try option transport +try option unseen +try option interface +Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ... +try option dscp + 127.0.0.1 in hosts_try_fastopen? + list element: +connected +try option helo_data ╭considering: $primary_hostname - ├──expanding: $primary_hostname + ├──────value: myhost.test.ex + ├───expanded: $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) @@ -1248,70 +1449,77 @@ Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ... 127.0.0.1 in cmd buf flush ddd bytes SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4] 250-SIZE 52428800 + 250-LIMITS MAILMAX=1000 RCPTMAX=50000 250-8BITMIME 250-PIPELINING 250-STARTTLS 250 HELP - ╭considering: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ╭considering: $host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├considering: }{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├──expanding: $host - ╰─────result: 127.0.0.1 - ╭considering: .outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├───────text: .outlook.com - ├considering: \$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├backslashed: '\$' - ├considering: }} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├──expanding: .outlook.com\$ - ╰─────result: .outlook.com$ - compiled RE '.outlook.com$' not found in local cache - compiling RE '.outlook.com$' - compiled RE '.outlook.com$' saved in local cache - ╭───scanning: $item}{\N^250-([\w.]+)\s\N}}} {$1}} - ├───scanning: }{\N^250-([\w.]+)\s\N}}} {$1}} - ├──expanding: $item - ├─────result: - ╰───skipping: result is not used - ╭───scanning: \N^250-([\w.]+)\s\N}}} {$1}} - ├──protected: ^250-([\w.]+)\s - ├───scanning: }}} {$1}} - ├──expanding: \N^250-([\w.]+)\s\N - ├─────result: ^250-([\w.]+)\s - ╰───skipping: result is not used - ├──condition: and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} +try option host_name_extract + ╭considering: ${if░and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + cond: and + cond: match + ╎╭considering: $host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├──────value: 127.0.0.1 + ╎├considering: }{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├───expanded: $host + ╎╰─────result: 127.0.0.1 + ╎╭considering: .outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├───────text: .outlook.com + ╎├considering: \$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├backslashed: '\$' + ╎├considering: }}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├───expanded: .outlook.com\$ + ╎╰─────result: .outlook.com$ + cond: match + ╎╭───scanning: $item}{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├──────value: + ╎├───scanning: }{\N^250-([\w.]+)\s\N}}}░{$1}} + ╎├───expanded: $item + ╎├─────result: ◀skipped▶ + ╎╰───skipping: result is not used + ╎╭───scanning: \N^250-([\w.]+)\s\N}}}░{$1}} + ╎├──protected: ^250-([\w.]+)\s + ╎├───scanning: }}}░{$1}} + ╎├───expanded: \N^250-([\w.]+)\s\N + ╎├─────result: ◀skipped▶ + ╎╰───skipping: result is not used + ├──condition: and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}} ├─────result: false ╭───scanning: $1}} ├───scanning: }} - ├──expanding: $1 - ├─────result: + ├───expanded: $1 + ├─────result: ◀skipped▶ ╰───skipping: result is not used - ├──expanding: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}} + ├───expanded: ${if░and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}} ╰─────result: - ╭considering: ${if eq {$address_data}{usery}{*}{:}} - ╭considering: $address_data}{usery}{*}{:}} - ├considering: }{usery}{*}{:}} - ├──expanding: $address_data - ╰─────result: usery - ╰──(tainted) - ╭considering: usery}{*}{:}} - ├───────text: usery - ├considering: }{*}{:}} - ├──expanding: usery - ╰─────result: usery - ├──condition: eq {$address_data}{usery} + ╭considering: ${if░eq░{$address_data}{usery}{*}{:}} + cond: eq + ╭considering: $address_data}{usery}{*}{:}} + ├──────value: usery + ╰──(tainted) + ├considering: }{usery}{*}{:}} + ├───expanded: $address_data + ╰─────result: usery + ╰──(tainted) + ╭considering: usery}{*}{:}} + ├───────text: usery + ├considering: }{*}{:}} + ├───expanded: usery + ╰─────result: usery + ├──condition: eq░{$address_data}{usery} ├─────result: true ╭considering: *}{:}} ├───────text: * ├considering: }{:}} - ├──expanding: * + ├───expanded: * ╰─────result: * ╭───scanning: :}} ├───────text: : ├───scanning: }} - ├──expanding: : - ├─────result: : + ├───expanded: : + ├─────result: ◀skipped▶ ╰───skipping: result is not used - ├──expanding: ${if eq {$address_data}{usery}{*}{:}} + ├───expanded: ${if░eq░{$address_data}{usery}{*}{:}} ╰─────result: * 127.0.0.1 in hosts_avoid_tls? list element: * @@ -1320,6 +1528,7 @@ cmd buf flush ddd bytes using PIPELINING not using DSN 127.0.0.1 in hosts_require_auth? no (option unset) +try option authenticated_sender SMTP|> MAIL FROM: SMTP>> RCPT TO: cmd buf flush ddd bytes @@ -1329,357 +1538,379 @@ sync_responses expect rcpt for usery@domain.com SMTP<< 250 Accepted holding verify callout open for cutthrough delivery ----------- end cutthrough setup ------------ -processing "accept" (TESTSUITE/test-config 55) +try option acl_smtp_predata +processing inline ACL "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 +try option message_id_header_domain +try option message_id_header_text ╭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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: Received: - ├considering: ${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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ├───expanded: ${tod_full} + ╰─────result: Tue,░2░Mar░1999░09:44:33░+0000 +try option received_header_text + ╭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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: Received:░ + ├considering: ${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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: from - ├───scanning: $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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───scanning: - }{${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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: - - ├───scanning: }{${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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(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 - + ╭───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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: from░ + ├───scanning: $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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: + ├───scanning: ↩ + ␉}{${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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ↩ + ␉ + ├───scanning: }{${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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: from░$sender_rcvhost↩ + ␉ + ├─────result: ◀skipped▶ ╰───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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ╭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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: from - ├considering: ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name) - }}}}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 - }}(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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - ╎ }}(Exim $version_number) - ╎ ${if def:sender_address {(envelope-from <$sender_address>) - ╎ }}id $message_exim_id${if def:received_for { - ╎ for $received_for}} - ╎├considering: } }}${if def:sender_helo_name {(helo=$sender_helo_name) - ╎ }}}}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 - ╎ }}(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 + ╭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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: from░ + ├considering: ${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ╎␉}}(Exim░$version_number)↩ + ╎␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ╎␉}}id░$message_exim_id${if░def:received_for░{↩ + ╎␉for░$received_for}} + ╎├──────value: CALLER + ╎├considering: }░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩ + ╎␉}}}}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↩ + ╎␉}}(Exim░$version_number)↩ + ╎␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ╎␉}}id░$message_exim_id${if░def:received_for░{↩ + ╎␉for░$received_for}} + ╎├───expanded: $sender_ident ╎╰─────result: CALLER ├─────op-res: CALLER - ├considering: }}${if def:sender_helo_name {(helo=$sender_helo_name) - }}}}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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: - ├considering: }}${if def:sender_helo_name {(helo=$sender_helo_name) - }}}}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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├──expanding: from ${quote_local_part:$sender_ident} - ╰─────result: from CALLER - ├───item-res: from CALLER - ├considering: ${if def:sender_helo_name {(helo=$sender_helo_name) - }}}}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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ├considering: ░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ░ + ├considering: }}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: from░${quote_local_part:$sender_ident}░ + ╰─────result: from░CALLER░ + ├───item-res: from░CALLER░ + ├considering: ${if░def:sender_helo_name░{(helo=$sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──condition: def:sender_helo_name ├─────result: true - ╭considering: (helo=$sender_helo_name) - }}}}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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ╭considering: (helo=$sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} ├───────text: (helo= - ├considering: $sender_helo_name) - }}}}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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: ) - - ├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 - }}(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) - + ├considering: $sender_helo_name)↩ + ␉}}}}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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: myhost.test.ex ╰──(tainted) - ├───item-res: (helo=myhost.test.ex) - + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: )↩ + ␉ + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: (helo=$sender_helo_name)↩ + ␉ + ╰─────result: (helo=myhost.test.ex)↩ + ␉ + ╰──(tainted) + ├───item-res: (helo=myhost.test.ex)↩ + ␉ ╰──(tainted) - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├──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) - + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: ${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)↩ + ␉ ╰──(tainted) - ├───item-res: from CALLER (helo=myhost.test.ex) - + ├───item-res: from░CALLER░(helo=myhost.test.ex)↩ + ␉ ╰──(tainted) - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: by - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: - ├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 - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: by░ + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: myhost.test.ex + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ░ + ├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↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──condition: def:received_protocol ├─────result: true - ╭considering: with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: with - ├considering: $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├considering: }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: - ├considering: }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(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 - ├───item-res: with local-esmtp + ╭considering: with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: with░ + ├considering: $received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: local-esmtp + ├considering: ░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ░ + ├considering: }}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: with░$received_protocol░ + ╰─────result: with░local-esmtp░ + ├───item-res: with░local-esmtp░ ╰──(tainted) - ├considering: ${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├──expanding: ($tls_in_ver) - ├─────result: () + ├considering: ${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: ░($tls_in_ver) + ├─────result: ◀skipped▶ ╰───skipping: result is not used ├───item-res: - ╰──(tainted) - ├considering: ${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ├considering: ${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──condition: def:tls_in_cipher_std ├─────result: false - ╭───scanning: tls $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: tls - ├───scanning: $tls_in_cipher_std - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───scanning: - }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: - - ├───scanning: }}(Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├──expanding: tls $tls_in_cipher_std - - ├─────result: tls - + ╭───scanning: ░tls░$tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ░tls░ + ├───scanning: $tls_in_cipher_std↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: + ├───scanning: ↩ + ␉}}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: ↩ + ␉ + ├───scanning: }}(Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: ░tls░$tls_in_cipher_std↩ + ␉ + ├─────result: ◀skipped▶ ╰───skipping: result is not used ├───item-res: - ╰──(tainted) - ├considering: (Exim $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: (Exim - ├considering: $version_number) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├considering: ) - ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: ) - - ├considering: ${if def:sender_address {(envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} + ├considering: (Exim░$version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: (Exim░ + ├considering: $version_number)↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: x.yz + ├considering: )↩ + ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: )↩ + ␉ + ├considering: ${if░def:sender_address░{(envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──condition: def:sender_address ├─────result: true - ╭considering: (envelope-from <$sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: (envelope-from < - ├considering: $sender_address>) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├considering: >) - }}id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: >) - - ├considering: }}id $message_exim_id${if def:received_for { - for $received_for}} - ├──expanding: (envelope-from <$sender_address>) - - ╰─────result: (envelope-from ) - - ├───item-res: (envelope-from ) - + ╭considering: (envelope-from░<$sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: (envelope-from░< + ├considering: $sender_address>)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: CALLER@myhost.test.ex + ├considering: >)↩ + ␉}}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: >)↩ + ␉ + ├considering: }}id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───expanded: (envelope-from░<$sender_address>)↩ + ␉ + ╰─────result: (envelope-from░)↩ + ␉ + ├───item-res: (envelope-from░)↩ + ␉ ╰──(tainted) - ├considering: id $message_exim_id${if def:received_for { - for $received_for}} - ├───────text: id - ├considering: $message_exim_id${if def:received_for { - for $received_for}} - ├considering: ${if def:received_for { - for $received_for}} + ├considering: id░$message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├───────text: id░ + ├considering: $message_exim_id${if░def:received_for░{↩ + ␉for░$received_for}} + ├──────value: 10HmbB-000000005vi-0000 + ├considering: ${if░def:received_for░{↩ + ␉for░$received_for}} + cond: def ├──condition: def:received_for ├─────result: true - ╭considering: - for $received_for}} - ├───────text: - for + ╭considering: ↩ + ␉for░$received_for}} + ├───────text: ↩ + ␉for░ ├considering: $received_for}} + ├──────value: usery@domain.com + ╰──(tainted) ├considering: }} - ├──expanding: - for $received_for - ╰─────result: - for usery@domain.com + ├───expanded: ↩ + ␉for░$received_for + ╰─────result: ↩ + ␉for░usery@domain.com ╰──(tainted) - ├───item-res: - for usery@domain.com + ├───item-res: ↩ + ␉for░usery@domain.com ╰──(tainted) - ├──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 }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std - }}(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 + ├───expanded: 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░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩ + ␉}}(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-000000005vi-0000↩ + ␉for░usery@domain.com ╰──(tainted) ----------- start cutthrough headers send ----------- ----------- done cutthrough headers send ------------ +try option acl_smtp_data ╭considering: ${tod_full} - ├──expanding: ${tod_full} - ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000 + ├───expanded: ${tod_full} + ╰─────result: Tue,░2░Mar░1999░09:44:33░+0000 SMTP>> . - SMTP<< 250 OK id=10HmbC-0005vi-00 + SMTP<< 250 OK id=10HmbC-000000005vi-0000 LOG: MAIN - >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbC-0005vi-00" + >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbC-000000005vi-0000" SMTP>> QUIT SMTP<< 221 myhost.test.ex closing connection SMTP(close)>> @@ -1689,8 +1920,9 @@ LOG: MAIN <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss LOG: MAIN Completed +try option acl_smtp_quit LOG: smtp_connection MAIN - SMTP connection from CALLER closed by QUIT + SMTP connection from CALLER D=qqs closed by QUIT >>>>>>>>>>>>>>>> Exim pid=p1237 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>> ******** SERVER ********