Taint: reject tainted list-separator change
[exim.git] / test / stderr / 0002
index aaa21e281cf430f4cffc540ab6d9106df185cb1d..2a3ef874287a781b11ccdca0fccc9ae60894deef 100644 (file)
@@ -1,4 +1,5 @@
 Exim version x.yz ....
+Hints DB:
 environment after trimming:
  USER=CALLER
 configuration file is TESTSUITE/test-config
@@ -24,19 +25,20 @@ try option unknown_login
  ╭considering: match:░░${if░match{abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
  ├───────text: match:░░
  ├considering: ${if░match{abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
-  ╭considering: abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
-  ├───────text: abcd
-  ├considering: }{\N^([ab]+)(\w+)$\N}{$2$1}fail}
-  ├───expanded: abcd
-  ╰─────result: abcd
-  ╭considering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
-  ├──protected: ^([ab]+)(\w+)$
-  ├considering: }{$2$1}fail}
-  ├───expanded: \N^([ab]+)(\w+)$\N
-  ╰─────result: ^([ab]+)(\w+)$
- compiled RE '^([ab]+)(\w+)$' not found in local cache
- compiling RE '^([ab]+)(\w+)$'
- compiled RE '^([ab]+)(\w+)$' saved in local cache
+  cond: match
+   ╭considering: abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+   ├───────text: abcd
+   ├considering: }{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+   ├───expanded: abcd
+   ╰─────result: abcd
+   ╭considering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
+   ├──protected: ^([ab]+)(\w+)$
+   ├considering: }{$2$1}fail}
+   ├───expanded: \N^([ab]+)(\w+)$\N
+   ╰─────result: ^([ab]+)(\w+)$
+  compiled RE '^([ab]+)(\w+)$' not found in local cache
+  compiling RE '^([ab]+)(\w+)$'
+  compiled RE '^([ab]+)(\w+)$' saved in local cache
  ├──condition: match{abcd}{\N^([ab]+)(\w+)$\N}
  ├─────result: true
   ╭considering: $2$1}fail}
@@ -52,17 +54,18 @@ try option unknown_login
  ╭considering: match:░░${if░match{wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
  ├───────text: match:░░
  ├considering: ${if░match{wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
-  ╭considering: wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
-  ├───────text: wxyz
-  ├considering: }{\N^([ab]+)(\w+)$\N}{$2$1}fail}
-  ├───expanded: wxyz
-  ╰─────result: wxyz
-  ╭considering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
-  ├──protected: ^([ab]+)(\w+)$
-  ├considering: }{$2$1}fail}
-  ├───expanded: \N^([ab]+)(\w+)$\N
-  ╰─────result: ^([ab]+)(\w+)$
- compiled RE '^([ab]+)(\w+)$' found in local cache
+  cond: match
+   ╭considering: wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+   ├───────text: wxyz
+   ├considering: }{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+   ├───expanded: wxyz
+   ╰─────result: wxyz
+   ╭considering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
+   ├──protected: ^([ab]+)(\w+)$
+   ├considering: }{$2$1}fail}
+   ├───expanded: \N^([ab]+)(\w+)$\N
+   ╰─────result: ^([ab]+)(\w+)$
+  compiled RE '^([ab]+)(\w+)$' found in local cache
  ├──condition: match{wxyz}{\N^([ab]+)(\w+)$\N}
  ├─────result: false
   ╭───scanning: $2$1}fail}
@@ -75,16 +78,17 @@ try option unknown_login
  ├───error message: "if" failed and "fail" requested
  ╰failure was forced
  ╭considering: ${if░eq░{1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
-  ╭considering: 1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
-  ├───────text: 1
-  ├considering: }{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
-  ├───expanded: 1
-  ╰─────result: 1
-  ╭considering: 1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
-  ├───────text: 1
-  ├considering: }{yes}{${lookup{xx}lsearch{/non/exist}}}}
-  ├───expanded: 1
-  ╰─────result: 1
+  cond: eq
+   ╭considering: 1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+   ├───────text: 1
+   ├considering: }{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+   ├───expanded: 1
+   ╰─────result: 1
+   ╭considering: 1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+   ├───────text: 1
+   ├considering: }{yes}{${lookup{xx}lsearch{/non/exist}}}}
+   ├───expanded: 1
+   ╰─────result: 1
  ├──condition: eq░{1}{1}
  ├─────result: true
   ╭considering: yes}{${lookup{xx}lsearch{/non/exist}}}}
@@ -114,19 +118,20 @@ try option unknown_login
  ╭considering: match_address:░░░${if░match_address{a.b.c}{a.b.c}{yes}{no}}
  ├───────text: match_address:░░░
  ├considering: ${if░match_address{a.b.c}{a.b.c}{yes}{no}}
-  ╭considering: a.b.c}{a.b.c}{yes}{no}}
-  ├───────text: a.b.c
-  ├considering: }{a.b.c}{yes}{no}}
-  ├───expanded: a.b.c
-  ╰─────result: a.b.c
-  ╭considering: a.b.c}{yes}{no}}
-  ├───────text: a.b.c
-  ├considering: }{yes}{no}}
-  ├───expanded: a.b.c
-  ╰─────result: a.b.c
+  cond: match_address
+   ╭considering: a.b.c}{a.b.c}{yes}{no}}
+   ├───────text: a.b.c
+   ├considering: }{a.b.c}{yes}{no}}
+   ├───expanded: a.b.c
+   ╰─────result: a.b.c
+   ╭considering: a.b.c}{yes}{no}}
+   ├───────text: a.b.c
+   ├considering: }{yes}{no}}
+   ├───expanded: a.b.c
+   ╰─────result: a.b.c
 LOG: MAIN PANIC
   no @ found in the subject of an address list match: subject="a.b.c" pattern="a.b.c"
- a.b.c in "a.b.c"? no (end of list)
 a.b.c in "a.b.c"? no (end of list)
  ├──condition: match_address{a.b.c}{a.b.c}
  ├─────result: false
   ╭───scanning: yes}{no}}
@@ -160,6 +165,7 @@ LOG: MAIN PANIC
  ╰─────result: protected:░░
 >>>>>>>>>>>>>>>> Exim pid=p1234 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 Exim version x.yz ....
+Hints DB:
 environment after trimming:
  USER=CALLER
 configuration file is TESTSUITE/test-config
@@ -177,19 +183,20 @@ try option unknown_login
  /considering: match:  ${if match{abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
  |-------text: match:  
  |considering: ${if match{abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
-  /considering: abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
-  |-------text: abcd
-  |considering: }{\N^([ab]+)(\w+)$\N}{$2$1}fail}
-  |---expanded: abcd
-  \_____result: abcd
-  /considering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
-  |--protected: ^([ab]+)(\w+)$
-  |considering: }{$2$1}fail}
-  |---expanded: \N^([ab]+)(\w+)$\N
-  \_____result: ^([ab]+)(\w+)$
- compiled RE '^([ab]+)(\w+)$' not found in local cache
- compiling RE '^([ab]+)(\w+)$'
- compiled RE '^([ab]+)(\w+)$' saved in local cache
+  cond: match
+   /considering: abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+   |-------text: abcd
+   |considering: }{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+   |---expanded: abcd
+   \_____result: abcd
+   /considering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
+   |--protected: ^([ab]+)(\w+)$
+   |considering: }{$2$1}fail}
+   |---expanded: \N^([ab]+)(\w+)$\N
+   \_____result: ^([ab]+)(\w+)$
+  compiled RE '^([ab]+)(\w+)$' not found in local cache
+  compiling RE '^([ab]+)(\w+)$'
+  compiled RE '^([ab]+)(\w+)$' saved in local cache
  |--condition: match{abcd}{\N^([ab]+)(\w+)$\N}
  |-----result: true
   /considering: $2$1}fail}
@@ -205,17 +212,18 @@ try option unknown_login
  /considering: match:  ${if match{wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
  |-------text: match:  
  |considering: ${if match{wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
-  /considering: wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
-  |-------text: wxyz
-  |considering: }{\N^([ab]+)(\w+)$\N}{$2$1}fail}
-  |---expanded: wxyz
-  \_____result: wxyz
-  /considering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
-  |--protected: ^([ab]+)(\w+)$
-  |considering: }{$2$1}fail}
-  |---expanded: \N^([ab]+)(\w+)$\N
-  \_____result: ^([ab]+)(\w+)$
- compiled RE '^([ab]+)(\w+)$' found in local cache
+  cond: match
+   /considering: wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+   |-------text: wxyz
+   |considering: }{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+   |---expanded: wxyz
+   \_____result: wxyz
+   /considering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
+   |--protected: ^([ab]+)(\w+)$
+   |considering: }{$2$1}fail}
+   |---expanded: \N^([ab]+)(\w+)$\N
+   \_____result: ^([ab]+)(\w+)$
+  compiled RE '^([ab]+)(\w+)$' found in local cache
  |--condition: match{wxyz}{\N^([ab]+)(\w+)$\N}
  |-----result: false
   /---scanning: $2$1}fail}
@@ -228,16 +236,17 @@ try option unknown_login
  |---error message: "if" failed and "fail" requested
  \failure was forced
  /considering: ${if eq {1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
-  /considering: 1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
-  |-------text: 1
-  |considering: }{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
-  |---expanded: 1
-  \_____result: 1
-  /considering: 1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
-  |-------text: 1
-  |considering: }{yes}{${lookup{xx}lsearch{/non/exist}}}}
-  |---expanded: 1
-  \_____result: 1
+  cond: eq
+   /considering: 1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+   |-------text: 1
+   |considering: }{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+   |---expanded: 1
+   \_____result: 1
+   /considering: 1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+   |-------text: 1
+   |considering: }{yes}{${lookup{xx}lsearch{/non/exist}}}}
+   |---expanded: 1
+   \_____result: 1
  |--condition: eq {1}{1}
  |-----result: true
   /considering: yes}{${lookup{xx}lsearch{/non/exist}}}}
@@ -267,19 +276,20 @@ try option unknown_login
  /considering: match_address:   ${if match_address{a.b.c}{a.b.c}{yes}{no}}
  |-------text: match_address:   
  |considering: ${if match_address{a.b.c}{a.b.c}{yes}{no}}
-  /considering: a.b.c}{a.b.c}{yes}{no}}
-  |-------text: a.b.c
-  |considering: }{a.b.c}{yes}{no}}
-  |---expanded: a.b.c
-  \_____result: a.b.c
-  /considering: a.b.c}{yes}{no}}
-  |-------text: a.b.c
-  |considering: }{yes}{no}}
-  |---expanded: a.b.c
-  \_____result: a.b.c
+  cond: match_address
+   /considering: a.b.c}{a.b.c}{yes}{no}}
+   |-------text: a.b.c
+   |considering: }{a.b.c}{yes}{no}}
+   |---expanded: a.b.c
+   \_____result: a.b.c
+   /considering: a.b.c}{yes}{no}}
+   |-------text: a.b.c
+   |considering: }{yes}{no}}
+   |---expanded: a.b.c
+   \_____result: a.b.c
 LOG: MAIN PANIC
   no @ found in the subject of an address list match: subject="a.b.c" pattern="a.b.c"
- a.b.c in "a.b.c"? no (end of list)
 a.b.c in "a.b.c"? no (end of list)
  |--condition: match_address{a.b.c}{a.b.c}
  |-----result: false
   /---scanning: yes}{no}}
@@ -313,6 +323,7 @@ LOG: MAIN PANIC
  \_____result: protected:  
 >>>>>>>>>>>>>>>> Exim pid=p1235 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 Exim version x.yz ....
+Hints DB:
 environment after trimming:
  USER=CALLER
 configuration file is TESTSUITE/test-config
@@ -392,6 +403,7 @@ try option unknown_login
 >>>>>>>>>>>>>>>> Exim pid=p1236 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 1999-03-02 09:44:33 no host name found for IP address V4NET.11.12.13
 Exim version x.yz ....
+Hints DB:
 environment after trimming:
  USER=CALLER
 configuration file is TESTSUITE/test-config
@@ -463,16 +475,17 @@ try option unknown_login
  ╭considering: ---->░No░lookup░yet:░${if░eq{black}{white}{$sender_host_name}{No}}
  ├───────text: ---->░No░lookup░yet:░
  ├considering: ${if░eq{black}{white}{$sender_host_name}{No}}
-  ╭considering: black}{white}{$sender_host_name}{No}}
-  ├───────text: black
-  ├considering: }{white}{$sender_host_name}{No}}
-  ├───expanded: black
-  ╰─────result: black
-  ╭considering: white}{$sender_host_name}{No}}
-  ├───────text: white
-  ├considering: }{$sender_host_name}{No}}
-  ├───expanded: white
-  ╰─────result: white
+  cond: eq
+   ╭considering: black}{white}{$sender_host_name}{No}}
+   ├───────text: black
+   ├considering: }{white}{$sender_host_name}{No}}
+   ├───expanded: black
+   ╰─────result: black
+   ╭considering: white}{$sender_host_name}{No}}
+   ├───────text: white
+   ├considering: }{$sender_host_name}{No}}
+   ├───expanded: white
+   ╰─────result: white
  ├──condition: eq{black}{white}
  ├─────result: false
   ╭───scanning: $sender_host_name}{No}}
@@ -492,13 +505,15 @@ try option unknown_login
  ╭considering: -oMs░░sender_host_name░=░$sender_host_name
  ├───────text: -oMs░░sender_host_name░=░
  ├considering: $sender_host_name
-looking up host name for V4NET.0.0.1
-IP address lookup yielded "ten-1.test.ex"
-ten-1.test.ex V4NET.0.0.1 mx=-1 sort=xx 
-checking addresses for ten-1.test.ex
+ looking up host name for V4NET.0.0.1
+  IP address lookup yielded "ten-1.test.ex"
+  check dnssec require list
+  check dnssec request list
+  ten-1.test.ex V4NET.0.0.1 mx=-1 sort=xx 
+  checking addresses for ten-1.test.ex
   V4NET.0.0.1 OK
-sender_fullhost = ten-1.test.ex [V4NET.0.0.1]
-sender_rcvhost = ten-1.test.ex ([V4NET.0.0.1] ident=me)
+ sender_fullhost = ten-1.test.ex [V4NET.0.0.1]
+ sender_rcvhost = ten-1.test.ex ([V4NET.0.0.1] ident=me)
  ├──────value: ten-1.test.ex
             ╰──(tainted)
  ├───expanded: -oMs░░sender_host_name░=░$sender_host_name
@@ -514,6 +529,7 @@ sender_rcvhost = ten-1.test.ex ([V4NET.0.0.1] ident=me)
             ╰──(tainted)
 >>>>>>>>>>>>>>>> Exim pid=p1237 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 Exim version x.yz ....
+Hints DB:
 changed uid/gid: forcing real = effective
   uid=uuuu gid=CALLER_GID pid=p1238
 configuration file is TESTSUITE/test-config
@@ -536,27 +552,31 @@ host in helo_verify_hosts? no (option unset)
 host in helo_try_verify_hosts? no (option unset)
 host in helo_accept_junk_hosts? no (option unset)
 using ACL "connect1"
-processing "deny" (TESTSUITE/test-config 45)
+processing ACL connect1 "deny" (TESTSUITE/test-config 45)
 check hosts = <\n partial-lsearch;TESTSUITE/aux-fixed/0002.lsearch \n 1.2.3.4
-host in "<
- partial-lsearch;TESTSUITE/aux-fixed/0002.lsearch 
+list separator: '↩
+'
+host in " partial-lsearch;TESTSUITE/aux-fixed/0002.lsearch 
  1.2.3.4"?
  list element: partial-lsearch;TESTSUITE/aux-fixed/0002.lsearch
-sender host name required, to match against partial-lsearch;TESTSUITE/aux-fixed/0002.lsearch
-looking up host name for V4NET.0.0.1
-DNS lookup of 1.0.0.V4NET.in-addr.arpa (PTR) using fakens
-DNS lookup of 1.0.0.V4NET.in-addr.arpa (PTR) succeeded
-IP address lookup yielded "ten-1.test.ex"
- ten-1.test.ex not in empty list (option unset? cannot trace name)
- ten-1.test.ex not in empty list (option unset? cannot trace name)
-DNS lookup of ten-1.test.ex (A) using fakens
-DNS lookup of ten-1.test.ex (A) succeeded
-ten-1.test.ex V4NET.0.0.1 mx=-1 sort=xx 
-checking addresses for ten-1.test.ex
-Forward DNS security status: unverified
+ sender host name required, to match against partial-lsearch;TESTSUITE/aux-fixed/0002.lsearch
+  looking up host name for V4NET.0.0.1
+   DNS lookup of 1.0.0.V4NET.in-addr.arpa (PTR) using fakens
+   DNS lookup of 1.0.0.V4NET.in-addr.arpa (PTR) succeeded
+   Reverse DNS security status: unverified
+   IP address lookup yielded "ten-1.test.ex"
+   check dnssec require list
+   ╎ten-1.test.ex not in empty list (option unset? cannot trace name)
+   check dnssec request list
+   ╎ten-1.test.ex not in empty list (option unset? cannot trace name)
+   DNS lookup of ten-1.test.ex (A) using fakens
+   DNS lookup of ten-1.test.ex (A) succeeded
+   ten-1.test.ex V4NET.0.0.1 mx=-1 sort=xx 
+   checking addresses for ten-1.test.ex
+   Forward DNS security status: unverified
   V4NET.0.0.1 OK
-sender_fullhost = ten-1.test.ex [V4NET.0.0.1]
-sender_rcvhost = ten-1.test.ex ([V4NET.0.0.1])
+ sender_fullhost = ten-1.test.ex [V4NET.0.0.1]
+ sender_rcvhost = ten-1.test.ex ([V4NET.0.0.1])
  search_open: lsearch "TESTSUITE/aux-fixed/0002.lsearch"
  search_find: file="TESTSUITE/aux-fixed/0002.lsearch"
    key="ten-1.test.ex" partial=2 affix=*. starflags=0 opts=NULL
@@ -569,17 +589,17 @@ sender_rcvhost = ten-1.test.ex ([V4NET.0.0.1])
    in TESTSUITE/aux-fixed/0002.lsearch
  creating new cache entry
  lookup yielded: 
-  host in "<
-  partial-lsearch;TESTSUITE/aux-fixed/0002.lsearch 
+  host in " partial-lsearch;TESTSUITE/aux-fixed/0002.lsearch 
   1.2.3.4"? yes (matched "partial-lsearch;TESTSUITE/aux-fixed/0002.lsearch")
-deny: condition test succeeded in ACL "connect1"
-end of ACL "connect1": DENY
+deny: condition test succeeded in ACL connect1
+end of ACL connect1: DENY
 SMTP>> 550 Administrative prohibition
 LOG: connection_reject MAIN REJECT
   H=ten-1.test.ex [V4NET.0.0.1] rejected connection in "connect" ACL
 search_tidyup called
 >>>>>>>>>>>>>>>> Exim pid=p1238 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 Exim version x.yz ....
+Hints DB:
 changed uid/gid: forcing real = effective
   uid=uuuu gid=CALLER_GID pid=p1239
 configuration file is TESTSUITE/test-config
@@ -602,7 +622,7 @@ host in helo_verify_hosts? no (option unset)
 host in helo_try_verify_hosts? no (option unset)
 host in helo_accept_junk_hosts? no (option unset)
 using ACL "connect2"
-processing "deny" (TESTSUITE/test-config 48)
+processing ACL connect2 "deny" (TESTSUITE/test-config 48)
 check hosts = net-lsearch;TESTSUITE/aux-fixed/0002.lsearch
 host in "net-lsearch;TESTSUITE/aux-fixed/0002.lsearch"?
  list element: net-lsearch;TESTSUITE/aux-fixed/0002.lsearch
@@ -619,8 +639,8 @@ host in "net-lsearch;TESTSUITE/aux-fixed/0002.lsearch"?
  creating new cache entry
  lookup failed
 host in "net-lsearch;TESTSUITE/aux-fixed/0002.lsearch"? no (end of list)
-deny: condition test failed in ACL "connect2"
-end of ACL "connect2": implicit DENY
+deny: condition test failed in ACL connect2
+end of ACL connect2: implicit DENY
 SMTP>> 550 Administrative prohibition
 LOG: connection_reject MAIN REJECT
   H=[V4NET.0.0.2] rejected connection in "connect" ACL
@@ -635,86 +655,89 @@ search_tidyup called
 >>> host in helo_try_verify_hosts? no (option unset)
 >>> host in helo_accept_junk_hosts? no (option unset)
 >>> using ACL "connect0"
->>> processing "accept" (TESTSUITE/test-config 42)
->>> accept: condition test succeeded in ACL "connect0"
->>> end of ACL "connect0": ACCEPT
+>>> processing ACL connect0 "accept" (TESTSUITE/test-config 42)
+>>> check logwrite = connection_id: $connection_id
+>>>                = connection_id: conn1111
+LOG: connection_id: conn1111
+>>> accept: condition test succeeded in ACL connect0
+>>> end of ACL connect0: ACCEPT
 >>> test in helo_lookup_domains?
 >>>  list element: @
 >>>  list element: @[]
 >>> test in helo_lookup_domains? no (end of list)
->>> processing "accept" (TESTSUITE/test-config 70)
+>>> processing inline ACL "accept"
 >>> accept: condition test succeeded in inline ACL
 >>> end of inline ACL: ACCEPT
 >>> using ACL "check_data"
->>> processing "warn" (TESTSUITE/test-config 51)
+>>> processing ACL check_data "warn" (TESTSUITE/test-config 51)
 >>> check logwrite = Subject is: "$h_subject:"
 >>>                = Subject is: ""
 LOG: 10HmaX-000000005vi-0000 Subject is: ""
->>> warn: condition test succeeded in ACL "check_data"
->>> processing "deny" (TESTSUITE/test-config 52)
+>>> warn: condition test succeeded in ACL check_data
+>>> processing ACL check_data "deny" (TESTSUITE/test-config 52)
 >>>   message: reply_address=<$reply_address>
->>> deny: condition test succeeded in ACL "check_data"
->>> end of ACL "check_data": DENY
+>>> deny: condition test succeeded in ACL check_data
+>>> end of ACL check_data: DENY
 LOG: 10HmaX-000000005vi-0000 H=(test) [V4NET.0.0.0] F=<> rejected after DATA: reply_address=<>
->>> processing "accept" (TESTSUITE/test-config 70)
+>>> processing inline ACL "accept"
 >>> accept: condition test succeeded in inline ACL
 >>> end of inline ACL: ACCEPT
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
->>> processing "warn" (TESTSUITE/test-config 51)
+>>> processing ACL check_data "warn" (TESTSUITE/test-config 51)
 >>> check logwrite = Subject is: "$h_subject:"
 >>>                = Subject is: ""
 LOG: 10HmaY-000000005vi-0000 Subject is: ""
->>> warn: condition test succeeded in ACL "check_data"
->>> processing "deny" (TESTSUITE/test-config 52)
+>>> warn: condition test succeeded in ACL check_data
+>>> processing ACL check_data "deny" (TESTSUITE/test-config 52)
 >>>   message: reply_address=<$reply_address>
->>> deny: condition test succeeded in ACL "check_data"
->>> end of ACL "check_data": DENY
+>>> deny: condition test succeeded in ACL check_data
+>>> end of ACL check_data: DENY
 LOG: 10HmaY-000000005vi-0000 H=(test) [V4NET.0.0.0] F=<> rejected after DATA: reply_address=<a@b>
->>> processing "accept" (TESTSUITE/test-config 70)
+>>> processing inline ACL "accept"
 >>> accept: condition test succeeded in inline ACL
 >>> end of inline ACL: ACCEPT
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
->>> processing "warn" (TESTSUITE/test-config 51)
+>>> processing ACL check_data "warn" (TESTSUITE/test-config 51)
 >>> check logwrite = Subject is: "$h_subject:"
 >>>                = Subject is: ""
 LOG: 10HmaZ-000000005vi-0000 Subject is: ""
->>> warn: condition test succeeded in ACL "check_data"
->>> processing "deny" (TESTSUITE/test-config 52)
+>>> warn: condition test succeeded in ACL check_data
+>>> processing ACL check_data "deny" (TESTSUITE/test-config 52)
 >>>   message: reply_address=<$reply_address>
->>> deny: condition test succeeded in ACL "check_data"
->>> end of ACL "check_data": DENY
+>>> deny: condition test succeeded in ACL check_data
+>>> end of ACL check_data: DENY
 LOG: 10HmaZ-000000005vi-0000 H=(test) [V4NET.0.0.0] F=<> rejected after DATA: reply_address=<c@d>
->>> processing "accept" (TESTSUITE/test-config 70)
+>>> processing inline ACL "accept"
 >>> accept: condition test succeeded in inline ACL
 >>> end of inline ACL: ACCEPT
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
->>> processing "warn" (TESTSUITE/test-config 51)
+>>> processing ACL check_data "warn" (TESTSUITE/test-config 51)
 >>> check logwrite = Subject is: "$h_subject:"
 >>>                = Subject is: ""
 LOG: 10HmbA-000000005vi-0000 Subject is: ""
->>> warn: condition test succeeded in ACL "check_data"
->>> processing "deny" (TESTSUITE/test-config 52)
+>>> warn: condition test succeeded in ACL check_data
+>>> processing ACL check_data "deny" (TESTSUITE/test-config 52)
 >>>   message: reply_address=<$reply_address>
->>> deny: condition test succeeded in ACL "check_data"
->>> end of ACL "check_data": DENY
+>>> deny: condition test succeeded in ACL check_data
+>>> end of ACL check_data: DENY
 LOG: 10HmbA-000000005vi-0000 H=(test) [V4NET.0.0.0] F=<> rejected after DATA: reply_address=<>
->>> processing "accept" (TESTSUITE/test-config 70)
+>>> processing inline ACL "accept"
 >>> accept: condition test succeeded in inline ACL
 >>> end of inline ACL: ACCEPT
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
->>> processing "warn" (TESTSUITE/test-config 51)
+>>> processing ACL check_data "warn" (TESTSUITE/test-config 51)
 >>> check logwrite = Subject is: "$h_subject:"
 >>>                = Subject is: ""
 LOG: 10HmbB-000000005vi-0000 Subject is: ""
->>> warn: condition test succeeded in ACL "check_data"
->>> processing "deny" (TESTSUITE/test-config 52)
+>>> warn: condition test succeeded in ACL check_data
+>>> processing ACL check_data "deny" (TESTSUITE/test-config 52)
 >>>   message: reply_address=<$reply_address>
->>> deny: condition test succeeded in ACL "check_data"
->>> end of ACL "check_data": DENY
+>>> deny: condition test succeeded in ACL check_data
+>>> end of ACL check_data: DENY
 LOG: 10HmbB-000000005vi-0000 H=(test) [V4NET.0.0.0] F=<> rejected after DATA: reply_address=<x@y>
 >>> host in hosts_connection_nolog? no (option unset)
 >>> host in host_lookup? no (option unset)
@@ -725,27 +748,30 @@ LOG: 10HmbB-000000005vi-0000 H=(test) [V4NET.0.0.0] F=<> rejected after DATA: re
 >>> host in helo_try_verify_hosts? no (option unset)
 >>> host in helo_accept_junk_hosts? no (option unset)
 >>> using ACL "connect0"
->>> processing "accept" (TESTSUITE/test-config 42)
->>> accept: condition test succeeded in ACL "connect0"
->>> end of ACL "connect0": ACCEPT
+>>> processing ACL connect0 "accept" (TESTSUITE/test-config 42)
+>>> check logwrite = connection_id: $connection_id
+>>>                = connection_id: conn1112
+LOG: connection_id: conn1112
+>>> accept: condition test succeeded in ACL connect0
+>>> end of ACL connect0: ACCEPT
 >>> test in helo_lookup_domains?
 >>>  list element: @
 >>>  list element: @[]
 >>> test in helo_lookup_domains? no (end of list)
->>> processing "accept" (TESTSUITE/test-config 70)
+>>> processing inline ACL "accept"
 >>> accept: condition test succeeded in inline ACL
 >>> end of inline ACL: ACCEPT
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
->>> processing "warn" (TESTSUITE/test-config 51)
+>>> processing ACL check_data "warn" (TESTSUITE/test-config 51)
 >>> check logwrite = Subject is: "$h_subject:"
 >>>                = Subject is: "=?iso-8859-8?Q?_here_we_go=3A_a_string_that_is_going_to_be_encoded=3A_it_will_go_over_the_75-char_limit_by_a_long_way=3B_in_fact_this_one_will_go_over_the_150_character_limit?="
 LOG: 10HmbC-000000005vi-0000 Subject is: "=?iso-8859-8?Q?_here_we_go=3A_a_string_that_is_going_to_be_encoded=3A_it_will_go_over_the_75-char_limit_by_a_long_way=3B_in_fact_this_one_will_go_over_the_150_character_limit?="
->>> warn: condition test succeeded in ACL "check_data"
->>> processing "deny" (TESTSUITE/test-config 52)
+>>> warn: condition test succeeded in ACL check_data
+>>> processing ACL check_data "deny" (TESTSUITE/test-config 52)
 >>>   message: reply_address=<$reply_address>
->>> deny: condition test succeeded in ACL "check_data"
->>> end of ACL "check_data": DENY
+>>> deny: condition test succeeded in ACL check_data
+>>> end of ACL check_data: DENY
 LOG: 10HmbC-000000005vi-0000 H=(test) [V4NET.0.0.0] F=<> rejected after DATA: reply_address=<>
 >>> host in hosts_connection_nolog? no (option unset)
 >>> host in host_lookup? no (option unset)
@@ -756,29 +782,33 @@ LOG: 10HmbC-000000005vi-0000 H=(test) [V4NET.0.0.0] F=<> rejected after DATA: re
 >>> host in helo_try_verify_hosts? no (option unset)
 >>> host in helo_accept_junk_hosts? no (option unset)
 >>> using ACL "connect0"
->>> processing "accept" (TESTSUITE/test-config 42)
->>> accept: condition test succeeded in ACL "connect0"
->>> end of ACL "connect0": ACCEPT
+>>> processing ACL connect0 "accept" (TESTSUITE/test-config 42)
+>>> check logwrite = connection_id: $connection_id
+>>>                = connection_id: conn1113
+LOG: connection_id: conn1113
+>>> accept: condition test succeeded in ACL connect0
+>>> end of ACL connect0: ACCEPT
 >>> test in helo_lookup_domains?
 >>>  list element: @
 >>>  list element: @[]
 >>> test in helo_lookup_domains? no (end of list)
->>> processing "accept" (TESTSUITE/test-config 70)
+>>> processing inline ACL "accept"
 >>> accept: condition test succeeded in inline ACL
 >>> end of inline ACL: ACCEPT
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
->>> processing "warn" (TESTSUITE/test-config 51)
+>>> processing ACL check_data "warn" (TESTSUITE/test-config 51)
 >>> check logwrite = Subject is: "$h_subject:"
 >>>                = Subject is: " here we go: a string that is going to be encoded: it will go over the 75-char limit by a long way; in fact this one will go over the 150 character limit"
 LOG: 10HmbD-000000005vi-0000 Subject is: " here we go: a string that is going to be encoded: it will go over the 75-char limit by a long way; in fact this one will go over the 150 character limit"
->>> warn: condition test succeeded in ACL "check_data"
->>> processing "deny" (TESTSUITE/test-config 52)
+>>> warn: condition test succeeded in ACL check_data
+>>> processing ACL check_data "deny" (TESTSUITE/test-config 52)
 >>>   message: reply_address=<$reply_address>
->>> deny: condition test succeeded in ACL "check_data"
->>> end of ACL "check_data": DENY
+>>> deny: condition test succeeded in ACL check_data
+>>> end of ACL check_data: DENY
 LOG: 10HmbD-000000005vi-0000 H=(test) [V4NET.0.0.0] F=<> rejected after DATA: reply_address=<>
 Exim version x.yz ....
+Hints DB:
 changed uid/gid: -C, -D, -be or -bf forces real uid
   uid=CALLER_UID gid=CALLER_GID pid=p1240
 configuration file is TESTSUITE/test-config
@@ -786,14 +816,60 @@ admin user
 dropping to exim gid; retaining priv uid
 originator: uid=CALLER_UID gid=CALLER_GID login=CALLER name=CALLER_NAME
 sender address = CALLER@myhost.test.ex
- 1.2.3.4 in "1.2.3"?
-  list element: 1.2.3
-  1.2.3.4 in "1.2.3"? no (malformed IPv4 address or address mask: 1.2.3)
-  1.2.3.4 in "1.2.3.4/abc"?
-   list element: 1.2.3.4/abc
-   1.2.3.4 in "1.2.3.4/abc"? no (malformed IPv4 address or address mask: 1.2.3.4)
-   ::1 in "<; aaaa:bbbb"?
-   ╎list element: aaaa:bbbb
-   ╎::1 in "<; aaaa:bbbb"? no (malformed IPv6 address or address mask: aaaa:bbbb)
 1.2.3.4 in "1.2.3"?
+   list element: 1.2.3
+   1.2.3.4 in "1.2.3"? no (malformed IPv4 address or address mask: 1.2.3)
+   1.2.3.4 in "1.2.3.4/abc"?
+   list element: 1.2.3.4/abc
+   1.2.3.4 in "1.2.3.4/abc"? no (malformed IPv4 address or address mask: 1.2.3.4)
+   ::1 in "<; aaaa:bbbb"?
+   ╎ list element: aaaa:bbbb
+   ╎ ::1 in "<; aaaa:bbbb"? no (malformed IPv6 address or address mask: aaaa:bbbb)
    search_tidyup called
 >>>>>>>>>>>>>>>> Exim pid=p1240 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
+Exim version x.yz ....
+Hints DB:
+environment after trimming:
+ USER=CALLER
+configuration file is TESTSUITE/test-config
+admin user
+dropping to exim gid; retaining priv uid
+try option gecos_pattern
+try option gecos_name
+try option unknown_login
+ ╭considering: '\${listextract░{2}░{$acl_m0}}'░░=>░░░'${listextract░{2}░{$acl_m0}}'
+ ├───────text: '
+ ├considering: \${listextract░{2}░{$acl_m0}}'░░=>░░░'${listextract░{2}░{$acl_m0}}'
+ ├backslashed: '\$'
+ ├considering: {listextract░{2}░{$acl_m0}}'░░=>░░░'${listextract░{2}░{$acl_m0}}'
+ ├───────text: {listextract░{2
+ ├considering: }░{$acl_m0}}'░░=>░░░'${listextract░{2}░{$acl_m0}}'
+ ├───────text: }░{
+ ├considering: $acl_m0}}'░░=>░░░'${listextract░{2}░{$acl_m0}}'
+ ├──────value: my:target:string:list
+            ╰──(tainted)
+ ├considering: }}'░░=>░░░'${listextract░{2}░{$acl_m0}}'
+ ├───────text: }
+ ├considering: }'░░=>░░░'${listextract░{2}░{$acl_m0}}'
+ ├───────text: }'░░=>░░░'
+ ├considering: ${listextract░{2}░{$acl_m0}}'
+  ╭considering: 2}░{$acl_m0}}'
+  ├───────text: 2
+  ├considering: }░{$acl_m0}}'
+  ├───expanded: 2
+  ╰─────result: 2
+  ╭considering: $acl_m0}}'
+  ├──────value: my:target:string:list
+             ╰──(tainted)
+  ├considering: }}'
+  ├───expanded: $acl_m0
+  ╰─────result: my:target:string:list
+             ╰──(tainted)
+ ├───item-res: target
+            ╰──(tainted)
+ ├considering: '
+ ├───────text: '
+ ├───expanded: '\${listextract░{2}░{$acl_m0}}'░░=>░░░'${listextract░{2}░{$acl_m0}}'
+ ╰─────result: '${listextract░{2}░{my:target:string:list}}'░░=>░░░'target'
+            ╰──(tainted)
+>>>>>>>>>>>>>>>> Exim pid=p1241 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>