Exim version x.yz ....
changed uid/gid: forcing real = effective
- uid=uuuu gid=CALLER_GID pid=pppp
+ uid=uuuu gid=CALLER_GID pid=p1234
+environment after trimming:
+ PATH=<munged>
adding SSLKEYLOGFILE=TESTSUITE/spool/sslkeys
configuration file is TESTSUITE/test-config
admin user
changed uid/gid: privilege not needed
- uid=EXIM_UID gid=EXIM_GID pid=pppp
+ uid=EXIM_UID gid=EXIM_GID pid=p1234
seeking password data for user "CALLER": cache not available
getpwnam() succeeded uid=CALLER_UID gid=CALLER_GID
seeking password data for user "CALLER": using cached result
search_tidyup called
>>Headers received:
-rewrite_one_header: type=F:
- From: CALLER_NAME <CALLER@test.ex>
+qualify & rewrite recipients list
+global rewrite rules
+rewrite headers
+ rewrite_one_header: type=F:
+ From: CALLER_NAME <CALLER@test.ex>
search_tidyup called
>>Headers after rewriting and local additions:
I Message-Id: <E10HmaX-0005vi-00@mail.test.ex>
${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
╎ ${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)
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}}
+ ├──────value:
├───scanning: )
}}}}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)
├─────result: (helo=)
╰───skipping: result is not used
+ ├───item-res:
├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>)
├──expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
}}
╰─────result: from CALLER
+ ├───item-res: from CALLER
├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>)
${if def:sender_address {(envelope-from <$sender_address>)
}}id $message_exim_id${if def:received_for {
for $received_for}}
+ ├──────value: mail.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>)
${if def:sender_address {(envelope-from <$sender_address>)
}}id $message_exim_id${if def:received_for {
for $received_for}}
+ ├──────value: local
├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>)
for $received_for}}
├──expanding: with $received_protocol
╰─────result: with local
+ ├───item-res: with local
├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}}
+ ${if def:sender_address {(envelope-from <$sender_address>)
}}id $message_exim_id${if def:received_for {
for $received_for}}
├──expanding: ($tls_in_ver)
├─────result: ()
╰───skipping: result is not used
+ ├───item-res:
├considering: ${if def:tls_in_cipher_std { tls $tls_in_cipher_std
}}(Exim $version_number)
${if def:sender_address {(envelope-from <$sender_address>)
${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>)
├─────result: tls
╰───skipping: result is not used
+ ├───item-res:
├considering: (Exim $version_number)
${if def:sender_address {(envelope-from <$sender_address>)
}}id $message_exim_id${if def:received_for {
${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 {
├considering: $sender_address>)
}}id $message_exim_id${if def:received_for {
for $received_for}}
+ ├──────value: CALLER@test.ex
├considering: >)
}}id $message_exim_id${if def:received_for {
for $received_for}}
╰─────result: (envelope-from <CALLER@test.ex>)
+ ├───item-res: (envelope-from <CALLER@test.ex>)
+
├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-0005vi-00
├considering: ${if def:received_for {
for $received_for}}
├──condition: def:received_for
├───────text:
for
├───scanning: $received_for}}
+ ├──────value:
├───scanning: }}
├──expanding:
for $received_for
├─────result:
for
╰───skipping: result is not used
+ ├───item-res:
├──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
exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715dfd -MCd local-accept-delivery -odi -Mc 10HmaX-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
- uid=uuuu gid=EXIM_GID pid=pppp
+ uid=uuuu gid=EXIM_GID pid=p1235
+environment after trimming:
+ PATH=<munged>
adding SSLKEYLOGFILE=TESTSUITE/spool/sslkeys
configuration file is TESTSUITE/test-config
trusted user
--------> r1 router <--------
local_part=rd+usery domain=test.ex
checking local_parts
+rd+usery in "CALLER"?
+ list element: CALLER
rd+usery in "CALLER"? no (end of list)
r1 router skipped: local_parts mismatch
--------> r2 router <--------
local_part=rd+usery domain=test.ex
checking local_parts
+rd+usery in "usery"?
+ list element: usery
rd+usery in "usery"? no (end of list)
r2 router skipped: local_parts mismatch
--------> r3 router <--------
local_part=rd+usery domain=test.ex
checking local_parts
+rd+usery in "userz"?
+ list element: userz
rd+usery in "userz"? no (end of list)
r3 router skipped: local_parts mismatch
--------> r4 router <--------
local_part=rd+usery domain=test.ex
stripped prefix rd+
checking local_parts
+usery in "CALLER"?
+ list element: CALLER
usery in "CALLER"? no (end of list)
r4 router skipped: local_parts mismatch
--------> r5 router <--------
local_part=rd+usery domain=test.ex
stripped prefix rd+
checking local_parts
-usery in "usery"? yes (matched "usery")
+usery in "usery"?
+ list element: usery
+ usery in "usery"? yes (matched "usery")
╭considering: /non-exist/$domain
├───────text: /non-exist/
├considering: $domain
+ ├──────value: test.ex
+ ╰──(tainted)
├──expanding: /non-exist/$domain
╰─────result: /non-exist/test.ex
╰──(tainted)
--------> r1 router <--------
local_part=rd+CALLER domain=test.ex
checking local_parts
+rd+CALLER in "CALLER"?
+ list element: CALLER
rd+CALLER in "CALLER"? no (end of list)
r1 router skipped: local_parts mismatch
--------> r2 router <--------
local_part=rd+CALLER domain=test.ex
checking local_parts
+rd+CALLER in "usery"?
+ list element: usery
rd+CALLER in "usery"? no (end of list)
r2 router skipped: local_parts mismatch
--------> r3 router <--------
local_part=rd+CALLER domain=test.ex
checking local_parts
+rd+CALLER in "userz"?
+ list element: userz
rd+CALLER in "userz"? no (end of list)
r3 router skipped: local_parts mismatch
--------> r4 router <--------
local_part=rd+CALLER domain=test.ex
stripped prefix rd+
checking local_parts
-CALLER in "CALLER"? yes (matched "CALLER")
+CALLER in "CALLER"?
+ list element: CALLER
+ CALLER in "CALLER"? yes (matched "CALLER")
╭considering: /non-exist/$local_part
├───────text: /non-exist/
├considering: $local_part
+ ├──────value: CALLER
+ ╰──(tainted)
├──expanding: /non-exist/$local_part
╰─────result: /non-exist/CALLER
╰──(tainted)
--------> r1 router <--------
local_part=userz domain=test.ex
checking local_parts
+userz in "CALLER"?
+ list element: CALLER
userz in "CALLER"? no (end of list)
r1 router skipped: local_parts mismatch
--------> r2 router <--------
local_part=userz domain=test.ex
checking local_parts
+userz in "usery"?
+ list element: usery
userz in "usery"? no (end of list)
r2 router skipped: local_parts mismatch
--------> r3 router <--------
local_part=userz domain=test.ex
checking local_parts
-userz in "userz"? yes (matched "userz")
+userz in "userz"?
+ list element: userz
+ userz in "userz"? yes (matched "userz")
╭considering: /non-exist/$domain
├───────text: /non-exist/
├considering: $domain
+ ├──────value: test.ex
+ ╰──(tainted)
├──expanding: /non-exist/$domain
╰─────result: /non-exist/test.ex
╰──(tainted)
--------> r1 router <--------
local_part=usery domain=test.ex
checking local_parts
+usery in "CALLER"?
+ list element: CALLER
usery in "CALLER"? no (end of list)
r1 router skipped: local_parts mismatch
--------> r2 router <--------
local_part=usery domain=test.ex
checking local_parts
-usery in "usery"? yes (matched "usery")
+usery in "usery"?
+ list element: usery
+ usery in "usery"? yes (matched "usery")
╭considering: /non-exist/$domain
├───────text: /non-exist/
├considering: $domain
+ ├──────value: test.ex
+ ╰──(tainted)
├──expanding: /non-exist/$domain
╰─────result: /non-exist/test.ex
╰──(tainted)
--------> r1 router <--------
local_part=CALLER domain=test.ex
checking local_parts
-CALLER in "CALLER"? yes (matched "CALLER")
+CALLER in "CALLER"?
+ list element: CALLER
+ CALLER in "CALLER"? yes (matched "CALLER")
╭considering: /non-exist/$local_part
├───────text: /non-exist/
├considering: $local_part
+ ├──────value: CALLER
+ ╰──(tainted)
├──expanding: /non-exist/$local_part
╰─────result: /non-exist/CALLER
╰──(tainted)
╭considering: /non-exist/$local_part
├───────text: /non-exist/
├considering: $local_part
+ ├──────value: usery
+ ╰──(tainted)
├──expanding: /non-exist/$local_part
╰─────result: /non-exist/usery
╰──(tainted)
search_tidyup called
changed uid/gid: local delivery to TESTSUITE/test-mail/junk <TESTSUITE/test-mail/junk> transport=ft1
- uid=CALLER_UID gid=CALLER_GID pid=pppp
+ uid=CALLER_UID gid=CALLER_GID pid=p1236
home=/non-exist/usery current=/
set_process_info: pppp delivering 10HmaX-0005vi-00 to TESTSUITE/test-mail/junk using ft1
appendfile transport entered
╭considering: $address_file
+ ├──────value: TESTSUITE/test-mail/junk
├──expanding: $address_file
╰─────result: TESTSUITE/test-mail/junk
appendfile: mode=600 notify_comsat=0 quota=0 warning=0
├─────result: true
╭considering: $return_path}{MAILER-DAEMON}} ${tod_bsdinbox}
+ ├──────value: CALLER@test.ex
+ ╰──(tainted)
├considering: }{MAILER-DAEMON}} ${tod_bsdinbox}
├──expanding: $return_path
├──expanding: MAILER-DAEMON
├─────result: MAILER-DAEMON
╰───skipping: result is not used
+ ├───item-res: CALLER@test.ex
+ ╰──(tainted)
├considering: ${tod_bsdinbox}
├───────text:
no retry data available
search_tidyup called
changed uid/gid: local delivery to TESTSUITE/test-mail/junk <TESTSUITE/test-mail/junk> transport=ft1
- uid=CALLER_UID gid=CALLER_GID pid=pppp
+ uid=CALLER_UID gid=CALLER_GID pid=p1237
home=/non-exist/CALLER current=/
set_process_info: pppp delivering 10HmaX-0005vi-00 to TESTSUITE/test-mail/junk using ft1
appendfile transport entered
╭considering: $address_file
+ ├──────value: TESTSUITE/test-mail/junk
├──expanding: $address_file
╰─────result: TESTSUITE/test-mail/junk
appendfile: mode=600 notify_comsat=0 quota=0 warning=0
├─────result: true
╭considering: $return_path}{MAILER-DAEMON}} ${tod_bsdinbox}
+ ├──────value: CALLER@test.ex
+ ╰──(tainted)
├considering: }{MAILER-DAEMON}} ${tod_bsdinbox}
├──expanding: $return_path
├──expanding: MAILER-DAEMON
├─────result: MAILER-DAEMON
╰───skipping: result is not used
+ ├───item-res: CALLER@test.ex
+ ╰──(tainted)
├considering: ${tod_bsdinbox}
├───────text:
no retry data available
search_tidyup called
changed uid/gid: local delivery to CALLER <CALLER@test.ex> transport=t1
- uid=CALLER_UID gid=CALLER_GID pid=pppp
+ uid=CALLER_UID gid=CALLER_GID pid=p1238
home=/non-exist/CALLER current=/
set_process_info: pppp delivering 10HmaX-0005vi-00 to CALLER using t1
appendfile transport entered
╭considering: /non-exist/$local_part
├───────text: /non-exist/
├considering: $local_part
+ ├──────value: usery
+ ╰──(tainted)
├──expanding: /non-exist/$local_part
╰─────result: /non-exist/usery
╰──(tainted)
search_tidyup called
changed uid/gid: local delivery to usery <usery@test.ex> transport=t1
- uid=CALLER_UID gid=CALLER_GID pid=pppp
+ uid=CALLER_UID gid=CALLER_GID pid=p1239
home=/non-exist/usery current=/
set_process_info: pppp delivering 10HmaX-0005vi-00 to usery using t1
appendfile transport entered
╭considering: /$local_part
├───────text: /
├considering: $local_part
+ ├──────value: userz
+ ╰──(tainted)
├──expanding: /$local_part
╰─────result: /userz
╰──(tainted)
search_tidyup called
changed uid/gid: local delivery to userz <userz@test.ex> transport=t2
- uid=CALLER_UID gid=CALLER_GID pid=pppp
+ uid=CALLER_UID gid=CALLER_GID pid=p1240
home=/userz current=/
set_process_info: pppp delivering 10HmaX-0005vi-00 to userz using t2
appendfile transport entered
=> userz <userz@test.ex> R=r3 T=t2
>>>>>>>>>>>>>>>> deliveries are done >>>>>>>>>>>>>>>>
changed uid/gid: post-delivery tidying
- uid=EXIM_UID gid=EXIM_GID pid=pppp
+ uid=EXIM_UID gid=EXIM_GID pid=p1235
set_process_info: pppp tidying up after delivering 10HmaX-0005vi-00
Processing retry items
Succeeded addresses:
end delivery of 10HmaX-0005vi-00
search_tidyup called
search_tidyup called
->>>>>>>>>>>>>>>> Exim pid=pppp (local-accept-delivery) terminating with rc=0 >>>>>>>>>>>>>>>>
+>>>>>>>>>>>>>>>> Exim pid=p1235 (local-accept-delivery) terminating with rc=0 >>>>>>>>>>>>>>>>
search_tidyup called
->>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
+>>>>>>>>>>>>>>>> Exim pid=p1234 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>