X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/8102279385f5f70c959aa219feca37031c0a1828..7f8394e7c983b1c199866fc6b1c14feb857b651d:/test/stderr/5420?ds=sidebyside diff --git a/test/stderr/5420 b/test/stderr/5420 index 9504cd3ba..ff97dbbc7 100644 --- a/test/stderr/5420 +++ b/test/stderr/5420 @@ -6,6 +6,12 @@ admin user 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: + ├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 in dsn_advertise_hosts? no (option unset) @@ -14,18 +20,26 @@ LOG: smtp_connection MAIN 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} ├─────result: false ╭───scanning: queue}{cutthrough}} + ├───────text: queue + ├───scanning: }{cutthrough}} ├──expanding: queue ├─────result: queue ╰───skipping: result is not used ╭considering: cutthrough}} + ├───────text: cutthrough + ├considering: }} ├──expanding: cutthrough ╰─────result: cutthrough ├──expanding: ${if eq {SERVER}{server}{queue}{cutthrough}} @@ -68,19 +82,26 @@ cmd buf flush ddd bytes 250 HELP ╭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} ├─────result: false ╭───scanning: *}{:}} + ├───────text: * + ├───scanning: }{:}} ├──expanding: * ├─────result: * ╰───skipping: result is not used ╭considering: :}} + ├───────text: : + ├considering: }} ├──expanding: : ╰─────result: : ├──expanding: ${if eq {$address_data}{usery}{*}{:}} @@ -88,19 +109,26 @@ cmd buf flush ddd bytes 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} ├─────result: false ╭───scanning: *}{:}} + ├───────text: * + ├───scanning: }{:}} ├──expanding: * ├─────result: * ╰───skipping: result is not used ╭considering: :}} + ├───────text: : + ├considering: }} ├──expanding: : ╰─────result: : ├──expanding: ${if eq {$address_data}{userz}{*}{:}} @@ -123,12 +151,12 @@ cmd buf flush ddd bytes using PIPELINING not using DSN 127.0.0.1 in hosts_require_auth? no (option unset) - SMTP>> MAIL FROM: + SMTP|> MAIL FROM: SMTP>> RCPT TO: cmd buf flush ddd bytes sync_responses expect mail SMTP<< 250 OK -sync_responses expect rcpt +sync_responses expect rcpt for userx@domain.com SMTP<< 250 Accepted holding verify callout open for cutthrough delivery ----------- end cutthrough setup ------------ @@ -147,6 +175,14 @@ end of inline ACL: ACCEPT ${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}} ├──condition: def:sender_rcvhost ├─────result: false ╭───scanning: from $sender_rcvhost @@ -156,6 +192,29 @@ end of inline ACL: ACCEPT ${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 @@ -175,16 +234,50 @@ end of inline ACL: ACCEPT ${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 ╎╰─────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}} ├──condition: def:sender_helo_name ├─────result: true ╭considering: (helo=$sender_helo_name) @@ -193,16 +286,69 @@ end of inline ACL: ACCEPT ${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) ╰──(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) ╰──(tainted) + ├───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}} ├──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 @@ -210,36 +356,139 @@ end of inline ACL: ACCEPT ${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 - ├──condition: def:tls_in_ver + ├───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: () + ╰───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}} + ├──condition: def:tls_in_cipher_std ├─────result: false - ╭───scanning: ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std + ╭───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}} - ├──expanding: ($tls_in_ver) - ├─────result: () + ├───────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 + ╰───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}} ├──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 ) + + ╰──(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}} ├──condition: def:received_for ├─────result: true ╭considering: for $received_for}} + ├───────text: + for + ├considering: $received_for}} + ├considering: }} ├──expanding: for $received_for ╰─────result: for userx@domain.com ╰──(tainted) + ├───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 @@ -281,6 +530,12 @@ admin user 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: + ├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 in dsn_advertise_hosts? no (option unset) @@ -289,18 +544,26 @@ LOG: smtp_connection MAIN 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} ├─────result: false ╭───scanning: queue}{cutthrough}} + ├───────text: queue + ├───scanning: }{cutthrough}} ├──expanding: queue ├─────result: queue ╰───skipping: result is not used ╭considering: cutthrough}} + ├───────text: cutthrough + ├considering: }} ├──expanding: cutthrough ╰─────result: cutthrough ├──expanding: ${if eq {SERVER}{server}{queue}{cutthrough}} @@ -343,18 +606,25 @@ cmd buf flush ddd bytes 250 HELP ╭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} ├─────result: true ╭considering: *}{:}} + ├───────text: * + ├considering: }{:}} ├──expanding: * ╰─────result: * ╭───scanning: :}} + ├───────text: : + ├───scanning: }} ├──expanding: : ├─────result: : ╰───skipping: result is not used @@ -365,12 +635,12 @@ cmd buf flush ddd bytes using PIPELINING not using DSN 127.0.0.1 in hosts_require_auth? no (option unset) - SMTP>> MAIL FROM: + SMTP|> MAIL FROM: SMTP>> RCPT TO: cmd buf flush ddd bytes sync_responses expect mail SMTP<< 250 OK -sync_responses expect rcpt +sync_responses expect rcpt for usery@domain.com SMTP<< 250 Accepted holding verify callout open for cutthrough delivery ----------- end cutthrough setup ------------ @@ -389,6 +659,14 @@ end of inline ACL: ACCEPT ${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}} ├──condition: def:sender_rcvhost ├─────result: false ╭───scanning: from $sender_rcvhost @@ -398,6 +676,29 @@ end of inline ACL: ACCEPT ${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 @@ -417,16 +718,50 @@ end of inline ACL: ACCEPT ${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 ╎╰─────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}} ├──condition: def:sender_helo_name ├─────result: true ╭considering: (helo=$sender_helo_name) @@ -435,16 +770,69 @@ end of inline ACL: ACCEPT ${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) ╰──(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) ╰──(tainted) + ├───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}} ├──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 @@ -452,36 +840,139 @@ end of inline ACL: ACCEPT ${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 - ├──condition: def:tls_in_ver + ├───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: () + ╰───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}} + ├──condition: def:tls_in_cipher_std ├─────result: false - ╭───scanning: ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std + ╭───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}} - ├──expanding: ($tls_in_ver) - ├─────result: () + ├───────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 + ╰───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}} ├──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 ) + + ╰──(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}} ├──condition: def:received_for ├─────result: true ╭considering: for $received_for}} + ├───────text: + for + ├considering: $received_for}} + ├considering: }} ├──expanding: for $received_for ╰─────result: for usery@domain.com ╰──(tainted) + ├───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 @@ -523,6 +1014,12 @@ admin user 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: + ├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 in dsn_advertise_hosts? no (option unset) @@ -531,18 +1028,26 @@ LOG: smtp_connection MAIN 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} ├─────result: false ╭───scanning: queue}{cutthrough}} + ├───────text: queue + ├───scanning: }{cutthrough}} ├──expanding: queue ├─────result: queue ╰───skipping: result is not used ╭considering: cutthrough}} + ├───────text: cutthrough + ├considering: }} ├──expanding: cutthrough ╰─────result: cutthrough ├──expanding: ${if eq {SERVER}{server}{queue}{cutthrough}} @@ -585,18 +1090,25 @@ cmd buf flush ddd bytes 250 HELP ╭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} ├─────result: true ╭considering: *}{:}} + ├───────text: * + ├considering: }{:}} ├──expanding: * ╰─────result: * ╭───scanning: :}} + ├───────text: : + ├───scanning: }} ├──expanding: : ├─────result: : ╰───skipping: result is not used @@ -607,12 +1119,12 @@ cmd buf flush ddd bytes using PIPELINING not using DSN 127.0.0.1 in hosts_require_auth? no (option unset) - SMTP>> MAIL FROM: + SMTP|> MAIL FROM: SMTP>> RCPT TO: cmd buf flush ddd bytes sync_responses expect mail SMTP<< 250 OK -sync_responses expect rcpt +sync_responses expect rcpt for usery@domain.com SMTP<< 250 Accepted holding verify callout open for cutthrough delivery ----------- end cutthrough setup ------------ @@ -631,6 +1143,14 @@ end of inline ACL: ACCEPT ${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}} ├──condition: def:sender_rcvhost ├─────result: false ╭───scanning: from $sender_rcvhost @@ -640,6 +1160,29 @@ end of inline ACL: ACCEPT ${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 @@ -659,16 +1202,50 @@ end of inline ACL: ACCEPT ${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 ╎╰─────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}} ├──condition: def:sender_helo_name ├─────result: true ╭considering: (helo=$sender_helo_name) @@ -677,16 +1254,69 @@ end of inline ACL: ACCEPT ${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) ╰──(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) ╰──(tainted) + ├───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}} ├──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 @@ -694,36 +1324,139 @@ end of inline ACL: ACCEPT ${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 - ├──condition: def:tls_in_ver + ├───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: () + ╰───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}} + ├──condition: def:tls_in_cipher_std ├─────result: false - ╭───scanning: ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std + ╭───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}} - ├──expanding: ($tls_in_ver) - ├─────result: () + ├───────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 + ╰───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}} ├──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 ) + + ╰──(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}} ├──condition: def:received_for ├─────result: true ╭considering: for $received_for}} + ├───────text: + for + ├considering: $received_for}} + ├considering: }} ├──expanding: for $received_for ╰─────result: for usery@domain.com ╰──(tainted) + ├───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