CVE-2020-28012: Missing close-on-exec flag for privileged pipe
[exim.git] / test / stderr / 0002
index 023c001bda7a9f7e957af8da4225d33415bfd554..9d6fb5df8c628b46324c1331bf9df825e25b12bf 100644 (file)
 Exim version x.yz ....
 configuration file is TESTSUITE/test-config
 admin user
 Exim version x.yz ....
 configuration file is TESTSUITE/test-config
 admin user
-expanding: primary_hostname: $primary_hostname
-   result: primary_hostname: myhost.test.ex
-expanding: abcd
-   result: abcd
-expanding: \N^([ab]+)(\w+)$\N
-   result: ^([ab]+)(\w+)$
-condition: match{abcd}{\N^([ab]+)(\w+)$\N}
-   result: true
-expanding: $2$1
-   result: cdab
-expanding: match:  ${if match{abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
-   result: match:  cdab
-expanding: wxyz
-   result: wxyz
-expanding: \N^([ab]+)(\w+)$\N
-   result: ^([ab]+)(\w+)$
-condition: match{wxyz}{\N^([ab]+)(\w+)$\N}
-   result: false
-expanding: $2$1
-   result: 
-skipping: result is not used
-failed to expand: match:  ${if match{wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
-   error message: "if" failed and "fail" requested
-failure was forced
-expanding: 1
-   result: 1
-expanding: 1
-   result: 1
-condition: eq {1}{1}
-   result: true
-expanding: yes
-   result: yes
-expanding: xx
-   result: xx
-skipping: result is not used
-expanding: /non/exist
-   result: /non/exist
-skipping: result is not used
-expanding: ${lookup{xx}lsearch{/non/exist}}
-   result: 
-skipping: result is not used
-expanding: ${if eq {1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
-   result: yes
-expanding: a.b.c
-   result: a.b.c
-expanding: a.b.c
-   result: a.b.c
+dropping to exim gid; retaining priv uid
+ ╭considering: primary_hostname: $primary_hostname
+ ├──expanding: primary_hostname: $primary_hostname
+ ╰─────result: primary_hostname: myhost.test.ex
+ ╭considering: sender_address: $sender_address
+ ├──expanding: sender_address: $sender_address
+ ╰─────result: sender_address: sndr@dom
+            ╰──(tainted)
+ ╭considering: match:  ${if match{abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+  ╭considering: abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+  ├──expanding: abcd
+  ╰─────result: abcd
+  ╭considering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
+  ├──expanding: \N^([ab]+)(\w+)$\N
+  ╰─────result: ^([ab]+)(\w+)$
+ ├──condition: match{abcd}{\N^([ab]+)(\w+)$\N}
+ ├─────result: true
+  ╭considering: $2$1}fail}
+  ├──expanding: $2$1
+  ╰─────result: cdab
+ ├──expanding: match:  ${if match{abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+ ╰─────result: match:  cdab
+ ╭considering: match:  ${if match{wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+  ╭considering: wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+  ├──expanding: wxyz
+  ╰─────result: wxyz
+  ╭considering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
+  ├──expanding: \N^([ab]+)(\w+)$\N
+  ╰─────result: ^([ab]+)(\w+)$
+ ├──condition: match{wxyz}{\N^([ab]+)(\w+)$\N}
+ ├─────result: false
+  ╭───scanning: $2$1}fail}
+  ├──expanding: $2$1
+  ├─────result: 
+  ╰───skipping: result is not used
+ ├failed to expand: match:  ${if match{wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+ ├───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}}}}
+  ├──expanding: 1
+  ╰─────result: 1
+  ╭considering: 1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+  ├──expanding: 1
+  ╰─────result: 1
+ ├──condition: eq {1}{1}
+ ├─────result: true
+  ╭considering: yes}{${lookup{xx}lsearch{/non/exist}}}}
+  ├──expanding: yes
+  ╰─────result: yes
+  ╭───scanning: ${lookup{xx}lsearch{/non/exist}}}}
+   ╭───scanning: xx}lsearch{/non/exist}}}}
+   ├──expanding: xx
+   ├─────result: xx
+   ╰───skipping: result is not used
+   ╭───scanning: /non/exist}}}}
+   ├──expanding: /non/exist
+   ├─────result: /non/exist
+   ╰───skipping: result is not used
+  ├──expanding: ${lookup{xx}lsearch{/non/exist}}
+  ├─────result: 
+  ╰───skipping: result is not used
+ ├──expanding: ${if eq {1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+ ╰─────result: yes
+ ╭considering: match_address:   ${if match_address{a.b.c}{a.b.c}{yes}{no}}
+  ╭considering: a.b.c}{a.b.c}{yes}{no}}
+  ├──expanding: a.b.c
+  ╰─────result: a.b.c
+  ╭considering: a.b.c}{yes}{no}}
+  ├──expanding: 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"
 LOG: MAIN PANIC
   no @ found in the subject of an address list match: subject="a.b.c" pattern="a.b.c"
-condition: match_address{a.b.c}{a.b.c}
-   result: false
-expanding: yes
-   result: yes
-skipping: result is not used
-expanding: no
-   result: no
-expanding: match_address:   ${if match_address{a.b.c}{a.b.c}{yes}{no}}
-   result: match_address:   no
->>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
+ ├──condition: match_address{a.b.c}{a.b.c}
+ ├─────result: false
+  ╭───scanning: yes}{no}}
+  ├──expanding: yes
+  ├─────result: yes
+  ╰───skipping: result is not used
+  ╭considering: no}}
+  ├──expanding: no
+  ╰─────result: no
+ ├──expanding: match_address:   ${if match_address{a.b.c}{a.b.c}{yes}{no}}
+ ╰─────result: match_address:   no
+>>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 Exim version x.yz ....
 configuration file is TESTSUITE/test-config
 admin user
 Exim version x.yz ....
 configuration file is TESTSUITE/test-config
 admin user
-expanding: -oMa  sender_host_address = $sender_host_address
-   result: -oMa  sender_host_address = V4NET.0.0.1
-expanding:       sender_host_port = $sender_host_port
-   result:       sender_host_port = 1234
-expanding: -oMaa sender_host_authenticated = $sender_host_authenticated
-   result: -oMaa sender_host_authenticated = AAA
-expanding: -oMai authenticated_id = $authenticated_id
-   result: -oMai authenticated_id = philip
-expanding: -oMas authenticated_sender = $authenticated_sender
-   result: -oMas authenticated_sender = xx@yy.zz
-expanding: -oMi  interface_address = $interface_address
-   result: -oMi  interface_address = 1.1.1.1
-expanding:       interface_port = $interface_port
-   result:       interface_port = 99
-expanding: -oMr  received_protocol = $received_protocol
-   result: -oMr  received_protocol = special
-expanding: -oMt  sender_ident = $sender_ident
-   result: -oMt  sender_ident = me
->>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
+dropping to exim gid; retaining priv uid
+ /considering: primary_hostname: $primary_hostname
+ |--expanding: primary_hostname: $primary_hostname
+ \_____result: primary_hostname: myhost.test.ex
+ /considering: match:  ${if match{abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+  /considering: abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+  |--expanding: abcd
+  \_____result: abcd
+  /considering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
+  |--expanding: \N^([ab]+)(\w+)$\N
+  \_____result: ^([ab]+)(\w+)$
+ |--condition: match{abcd}{\N^([ab]+)(\w+)$\N}
+ |-----result: true
+  /considering: $2$1}fail}
+  |--expanding: $2$1
+  \_____result: cdab
+ |--expanding: match:  ${if match{abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+ \_____result: match:  cdab
+ /considering: match:  ${if match{wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+  /considering: wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+  |--expanding: wxyz
+  \_____result: wxyz
+  /considering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
+  |--expanding: \N^([ab]+)(\w+)$\N
+  \_____result: ^([ab]+)(\w+)$
+ |--condition: match{wxyz}{\N^([ab]+)(\w+)$\N}
+ |-----result: false
+  /---scanning: $2$1}fail}
+  |--expanding: $2$1
+  |-----result: 
+  \___skipping: result is not used
+ |failed to expand: match:  ${if match{wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+ |---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}}}}
+  |--expanding: 1
+  \_____result: 1
+  /considering: 1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+  |--expanding: 1
+  \_____result: 1
+ |--condition: eq {1}{1}
+ |-----result: true
+  /considering: yes}{${lookup{xx}lsearch{/non/exist}}}}
+  |--expanding: yes
+  \_____result: yes
+  /---scanning: ${lookup{xx}lsearch{/non/exist}}}}
+   /---scanning: xx}lsearch{/non/exist}}}}
+   |--expanding: xx
+   |-----result: xx
+   \___skipping: result is not used
+   /---scanning: /non/exist}}}}
+   |--expanding: /non/exist
+   |-----result: /non/exist
+   \___skipping: result is not used
+  |--expanding: ${lookup{xx}lsearch{/non/exist}}
+  |-----result: 
+  \___skipping: result is not used
+ |--expanding: ${if eq {1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+ \_____result: yes
+ /considering: match_address:   ${if match_address{a.b.c}{a.b.c}{yes}{no}}
+  /considering: a.b.c}{a.b.c}{yes}{no}}
+  |--expanding: a.b.c
+  \_____result: a.b.c
+  /considering: a.b.c}{yes}{no}}
+  |--expanding: 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"
+ |--condition: match_address{a.b.c}{a.b.c}
+ |-----result: false
+  /---scanning: yes}{no}}
+  |--expanding: yes
+  |-----result: yes
+  \___skipping: result is not used
+  /considering: no}}
+  |--expanding: no
+  \_____result: no
+ |--expanding: match_address:   ${if match_address{a.b.c}{a.b.c}{yes}{no}}
+ \_____result: match_address:   no
+>>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
+Exim version x.yz ....
+configuration file is TESTSUITE/test-config
+admin user
+dropping to exim gid; retaining priv uid
+ ╭considering: -oMa  sender_host_address = $sender_host_address
+ ├──expanding: -oMa  sender_host_address = $sender_host_address
+ ╰─────result: -oMa  sender_host_address = V4NET.0.0.1
+            ╰──(tainted)
+ ╭considering:       sender_host_port = $sender_host_port
+ ├──expanding:       sender_host_port = $sender_host_port
+ ╰─────result:       sender_host_port = 1234
+ ╭considering: -oMaa sender_host_authenticated = $sender_host_authenticated
+ ├──expanding: -oMaa sender_host_authenticated = $sender_host_authenticated
+ ╰─────result: -oMaa sender_host_authenticated = AAA
+            ╰──(tainted)
+ ╭considering: -oMai authenticated_id = $authenticated_id
+ ├──expanding: -oMai authenticated_id = $authenticated_id
+ ╰─────result: -oMai authenticated_id = philip
+            ╰──(tainted)
+ ╭considering: -oMas authenticated_sender = $authenticated_sender
+ ├──expanding: -oMas authenticated_sender = $authenticated_sender
+ ╰─────result: -oMas authenticated_sender = xx@yy.zz
+            ╰──(tainted)
+ ╭considering: -oMi  interface_address = $interface_address
+ ├──expanding: -oMi  interface_address = $interface_address
+ ╰─────result: -oMi  interface_address = 1.1.1.1
+            ╰──(tainted)
+ ╭considering:       interface_port = $interface_port
+ ├──expanding:       interface_port = $interface_port
+ ╰─────result:       interface_port = 99
+ ╭considering: -oMr  received_protocol = $received_protocol
+ ├──expanding: -oMr  received_protocol = $received_protocol
+ ╰─────result: -oMr  received_protocol = special
+            ╰──(tainted)
+ ╭considering: -oMt  sender_ident = $sender_ident
+ ├──expanding: -oMt  sender_ident = $sender_ident
+ ╰─────result: -oMt  sender_ident = me
+            ╰──(tainted)
+>>>>>>>>>>>>>>>> Exim pid=pppp (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 ....
 configuration file is TESTSUITE/test-config
 admin user
 1999-03-02 09:44:33 no host name found for IP address V4NET.11.12.13
 Exim version x.yz ....
 configuration file is TESTSUITE/test-config
 admin user
-expanding: -oMa  sender_host_address = $sender_host_address
-   result: -oMa  sender_host_address = V4NET.0.0.1
-expanding:       sender_host_port = $sender_host_port
-   result:       sender_host_port = 1234
-expanding: -oMaa sender_host_authenticated = $sender_host_authenticated
-   result: -oMaa sender_host_authenticated = AAA
-expanding: -oMai authenticated_id = $authenticated_id
-   result: -oMai authenticated_id = philip
-expanding: -oMas authenticated_sender = $authenticated_sender
-   result: -oMas authenticated_sender = xx@yy.zz
-expanding: -oMi  interface_address = $interface_address
-   result: -oMi  interface_address = 1.1.1.1
-expanding:       interface_port = $interface_port
-   result:       interface_port = 99
-expanding: -oMr  received_protocol = $received_protocol
-   result: -oMr  received_protocol = special
-expanding: black
-   result: black
-expanding: white
-   result: white
-condition: eq{black}{white}
-   result: false
-expanding: $sender_host_name
-   result: 
-skipping: result is not used
-expanding: No
-   result: No
-expanding: ----> No lookup yet: ${if eq{black}{white}{$sender_host_name}{No}}
-   result: ----> No lookup yet: No
+dropping to exim gid; retaining priv uid
+ ╭considering: -oMa  sender_host_address = $sender_host_address
+ ├──expanding: -oMa  sender_host_address = $sender_host_address
+ ╰─────result: -oMa  sender_host_address = V4NET.0.0.1
+            ╰──(tainted)
+ ╭considering:       sender_host_port = $sender_host_port
+ ├──expanding:       sender_host_port = $sender_host_port
+ ╰─────result:       sender_host_port = 1234
+ ╭considering: -oMaa sender_host_authenticated = $sender_host_authenticated
+ ├──expanding: -oMaa sender_host_authenticated = $sender_host_authenticated
+ ╰─────result: -oMaa sender_host_authenticated = AAA
+            ╰──(tainted)
+ ╭considering: -oMai authenticated_id = $authenticated_id
+ ├──expanding: -oMai authenticated_id = $authenticated_id
+ ╰─────result: -oMai authenticated_id = philip
+            ╰──(tainted)
+ ╭considering: -oMas authenticated_sender = $authenticated_sender
+ ├──expanding: -oMas authenticated_sender = $authenticated_sender
+ ╰─────result: -oMas authenticated_sender = xx@yy.zz
+            ╰──(tainted)
+ ╭considering: -oMi  interface_address = $interface_address
+ ├──expanding: -oMi  interface_address = $interface_address
+ ╰─────result: -oMi  interface_address = 1.1.1.1
+            ╰──(tainted)
+ ╭considering:       interface_port = $interface_port
+ ├──expanding:       interface_port = $interface_port
+ ╰─────result:       interface_port = 99
+ ╭considering: -oMr  received_protocol = $received_protocol
+ ├──expanding: -oMr  received_protocol = $received_protocol
+ ╰─────result: -oMr  received_protocol = special
+            ╰──(tainted)
+ ╭considering: ----> No lookup yet: ${if eq{black}{white}{$sender_host_name}{No}}
+  ╭considering: black}{white}{$sender_host_name}{No}}
+  ├──expanding: black
+  ╰─────result: black
+  ╭considering: white}{$sender_host_name}{No}}
+  ├──expanding: white
+  ╰─────result: white
+ ├──condition: eq{black}{white}
+ ├─────result: false
+  ╭───scanning: $sender_host_name}{No}}
+  ├──expanding: $sender_host_name
+  ├─────result: 
+  ╰───skipping: result is not used
+  ╭considering: No}}
+  ├──expanding: No
+  ╰─────result: No
+ ├──expanding: ----> No lookup yet: ${if eq{black}{white}{$sender_host_name}{No}}
+ ╰─────result: ----> No lookup yet: No
+ ╭considering: -oMs  sender_host_name = $sender_host_name
 looking up host name for V4NET.0.0.1
 looking up host name for V4NET.0.0.1
-IP address lookup yielded ten-1.test.ex
-using host_fake_gethostbyname for ten-1.test.ex (IPv4)
-MUNGED: ::1 will be omitted in what follows
-get[host|ipnode]byname[2] looked up these IP addresses:
-  name=ten-1.test.ex address=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
   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)
 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)
-expanding: -oMs  sender_host_name = $sender_host_name
-   result: -oMs  sender_host_name = ten-1.test.ex
-expanding: -oMt  sender_ident = $sender_ident
-   result: -oMt  sender_ident = me
->>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
+ ├──expanding: -oMs  sender_host_name = $sender_host_name
+ ╰─────result: -oMs  sender_host_name = ten-1.test.ex
+            ╰──(tainted)
+ ╭considering: -oMt  sender_ident = $sender_ident
+ ├──expanding: -oMt  sender_ident = $sender_ident
+ ╰─────result: -oMt  sender_ident = me
+            ╰──(tainted)
+>>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 Exim version x.yz ....
 changed uid/gid: forcing real = effective
   uid=uuuu gid=CALLER_GID pid=pppp
 Exim version x.yz ....
 changed uid/gid: forcing real = effective
   uid=uuuu gid=CALLER_GID pid=pppp
@@ -153,31 +301,29 @@ 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"
 host in helo_try_verify_hosts? no (option unset)
 host in helo_accept_junk_hosts? no (option unset)
 using ACL "connect1"
-processing "deny"
+processing "deny" (TESTSUITE/test-config 45)
 check hosts = <\n partial-lsearch;TESTSUITE/aux-fixed/0002.lsearch \n 1.2.3.4
 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
 check hosts = <\n partial-lsearch;TESTSUITE/aux-fixed/0002.lsearch \n 1.2.3.4
 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
-using host_fake_gethostbyname for ten-1.test.ex (IPv4)
+IP address lookup yielded "ten-1.test.ex"
 DNS lookup of ten-1.test.ex (A) using fakens
 DNS lookup of ten-1.test.ex (A) succeeded
 DNS lookup of ten-1.test.ex (A) using fakens
 DNS lookup of ten-1.test.ex (A) succeeded
-MUNGED: ::1 will be omitted in what follows
-get[host|ipnode]byname[2] looked up these IP addresses:
-  name=ten-1.test.ex address=V4NET.0.0.1
+ten-1.test.ex V4NET.0.0.1 mx=-1 sort=xx 
 checking addresses for ten-1.test.ex
 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])
 search_open: lsearch "TESTSUITE/aux-fixed/0002.lsearch"
 search_find: file="TESTSUITE/aux-fixed/0002.lsearch"
   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])
 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
+  key="ten-1.test.ex" partial=2 affix=*. starflags=0 opts=NULL
 LRU list:
   0TESTSUITE/aux-fixed/0002.lsearch
   End
 internal_search_find: file="TESTSUITE/aux-fixed/0002.lsearch"
 LRU list:
   0TESTSUITE/aux-fixed/0002.lsearch
   End
 internal_search_find: file="TESTSUITE/aux-fixed/0002.lsearch"
-  type=lsearch key="ten-1.test.ex"
+  type=lsearch key="ten-1.test.ex" opts=NULL
 file lookup required for ten-1.test.ex
   in TESTSUITE/aux-fixed/0002.lsearch
 lookup yielded: 
 file lookup required for ten-1.test.ex
   in TESTSUITE/aux-fixed/0002.lsearch
 lookup yielded: 
@@ -185,11 +331,12 @@ 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"
  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
 SMTP>> 550 Administrative prohibition
 SMTP>> 550 Administrative prohibition
-LOG: MAIN REJECT
+LOG: connection_reject MAIN REJECT
   H=ten-1.test.ex [V4NET.0.0.1] rejected connection in "connect" ACL
 search_tidyup called
   H=ten-1.test.ex [V4NET.0.0.1] rejected connection in "connect" ACL
 search_tidyup called
->>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
+>>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 Exim version x.yz ....
 changed uid/gid: forcing real = effective
   uid=uuuu gid=CALLER_GID pid=pppp
 Exim version x.yz ....
 changed uid/gid: forcing real = effective
   uid=uuuu gid=CALLER_GID pid=pppp
@@ -213,16 +360,16 @@ 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"
 host in helo_try_verify_hosts? no (option unset)
 host in helo_accept_junk_hosts? no (option unset)
 using ACL "connect2"
-processing "deny"
+processing "deny" (TESTSUITE/test-config 48)
 check hosts = net-lsearch;TESTSUITE/aux-fixed/0002.lsearch
 search_open: lsearch "TESTSUITE/aux-fixed/0002.lsearch"
 search_find: file="TESTSUITE/aux-fixed/0002.lsearch"
 check hosts = net-lsearch;TESTSUITE/aux-fixed/0002.lsearch
 search_open: lsearch "TESTSUITE/aux-fixed/0002.lsearch"
 search_find: file="TESTSUITE/aux-fixed/0002.lsearch"
-  key="V4NET.0.0.2" partial=-1 affix=NULL starflags=0
+  key="V4NET.0.0.2" partial=-1 affix=NULL starflags=0 opts=NULL
 LRU list:
   0TESTSUITE/aux-fixed/0002.lsearch
   End
 internal_search_find: file="TESTSUITE/aux-fixed/0002.lsearch"
 LRU list:
   0TESTSUITE/aux-fixed/0002.lsearch
   End
 internal_search_find: file="TESTSUITE/aux-fixed/0002.lsearch"
-  type=lsearch key="V4NET.0.0.2"
+  type=lsearch key="V4NET.0.0.2" opts=NULL
 file lookup required for V4NET.0.0.2
   in TESTSUITE/aux-fixed/0002.lsearch
 lookup failed
 file lookup required for V4NET.0.0.2
   in TESTSUITE/aux-fixed/0002.lsearch
 lookup failed
@@ -230,10 +377,10 @@ 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
 SMTP>> 550 Administrative prohibition
 deny: condition test failed in ACL "connect2"
 end of ACL "connect2": implicit DENY
 SMTP>> 550 Administrative prohibition
-LOG: MAIN REJECT
+LOG: connection_reject MAIN REJECT
   H=[V4NET.0.0.2] rejected connection in "connect" ACL
 search_tidyup called
   H=[V4NET.0.0.2] rejected connection in "connect" ACL
 search_tidyup called
->>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
+>>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 >>> host in hosts_connection_nolog? no (option unset)
 >>> host in host_lookup? no (option unset)
 >>> host in host_reject_connection? no (option unset)
 >>> host in hosts_connection_nolog? no (option unset)
 >>> host in host_lookup? no (option unset)
 >>> host in host_reject_connection? no (option unset)
@@ -243,71 +390,82 @@ search_tidyup called
 >>> host in helo_try_verify_hosts? no (option unset)
 >>> host in helo_accept_junk_hosts? no (option unset)
 >>> using ACL "connect0"
 >>> host in helo_try_verify_hosts? no (option unset)
 >>> host in helo_accept_junk_hosts? no (option unset)
 >>> using ACL "connect0"
->>> processing "accept"
+>>> processing "accept" (TESTSUITE/test-config 42)
 >>> accept: condition test succeeded in ACL "connect0"
 >>> accept: condition test succeeded in ACL "connect0"
->>> processing "accept"
+>>> end of ACL "connect0": ACCEPT
+>>> processing "accept" (TESTSUITE/test-config 70)
 >>> accept: condition test succeeded in inline ACL
 >>> accept: condition test succeeded in inline ACL
+>>> end of inline ACL: ACCEPT
 >>> using ACL "check_data"
 >>> using ACL "check_data"
->>> processing "warn"
+>>> processing "warn" (TESTSUITE/test-config 51)
 >>> check logwrite = Subject is: "$h_subject:"
 >>>                = Subject is: ""
 LOG: 10HmaX-0005vi-00 Subject is: ""
 >>> warn: condition test succeeded in ACL "check_data"
 >>> check logwrite = Subject is: "$h_subject:"
 >>>                = Subject is: ""
 LOG: 10HmaX-0005vi-00 Subject is: ""
 >>> warn: condition test succeeded in ACL "check_data"
->>> processing "deny"
+>>> processing "deny" (TESTSUITE/test-config 52)
 >>>   message: reply_address=<$reply_address>
 >>> deny: condition test succeeded in ACL "check_data"
 >>>   message: reply_address=<$reply_address>
 >>> deny: condition test succeeded in ACL "check_data"
+>>> end of ACL "check_data": DENY
 LOG: 10HmaX-0005vi-00 H=[V4NET.0.0.0] F=<> rejected after DATA: reply_address=<>
 LOG: 10HmaX-0005vi-00 H=[V4NET.0.0.0] F=<> rejected after DATA: reply_address=<>
->>> processing "accept"
+>>> processing "accept" (TESTSUITE/test-config 70)
 >>> accept: condition test succeeded in inline ACL
 >>> accept: condition test succeeded in inline ACL
+>>> end of inline ACL: ACCEPT
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
->>> processing "warn"
+>>> processing "warn" (TESTSUITE/test-config 51)
 >>> check logwrite = Subject is: "$h_subject:"
 >>>                = Subject is: ""
 LOG: 10HmaY-0005vi-00 Subject is: ""
 >>> warn: condition test succeeded in ACL "check_data"
 >>> check logwrite = Subject is: "$h_subject:"
 >>>                = Subject is: ""
 LOG: 10HmaY-0005vi-00 Subject is: ""
 >>> warn: condition test succeeded in ACL "check_data"
->>> processing "deny"
+>>> processing "deny" (TESTSUITE/test-config 52)
 >>>   message: reply_address=<$reply_address>
 >>> deny: condition test succeeded in ACL "check_data"
 >>>   message: reply_address=<$reply_address>
 >>> deny: condition test succeeded in ACL "check_data"
+>>> end of ACL "check_data": DENY
 LOG: 10HmaY-0005vi-00 H=[V4NET.0.0.0] F=<> rejected after DATA: reply_address=<a@b>
 LOG: 10HmaY-0005vi-00 H=[V4NET.0.0.0] F=<> rejected after DATA: reply_address=<a@b>
->>> processing "accept"
+>>> processing "accept" (TESTSUITE/test-config 70)
 >>> accept: condition test succeeded in inline ACL
 >>> accept: condition test succeeded in inline ACL
+>>> end of inline ACL: ACCEPT
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
->>> processing "warn"
+>>> processing "warn" (TESTSUITE/test-config 51)
 >>> check logwrite = Subject is: "$h_subject:"
 >>>                = Subject is: ""
 LOG: 10HmaZ-0005vi-00 Subject is: ""
 >>> warn: condition test succeeded in ACL "check_data"
 >>> check logwrite = Subject is: "$h_subject:"
 >>>                = Subject is: ""
 LOG: 10HmaZ-0005vi-00 Subject is: ""
 >>> warn: condition test succeeded in ACL "check_data"
->>> processing "deny"
+>>> processing "deny" (TESTSUITE/test-config 52)
 >>>   message: reply_address=<$reply_address>
 >>> deny: condition test succeeded in ACL "check_data"
 >>>   message: reply_address=<$reply_address>
 >>> deny: condition test succeeded in ACL "check_data"
+>>> end of ACL "check_data": DENY
 LOG: 10HmaZ-0005vi-00 H=[V4NET.0.0.0] F=<> rejected after DATA: reply_address=<c@d>
 LOG: 10HmaZ-0005vi-00 H=[V4NET.0.0.0] F=<> rejected after DATA: reply_address=<c@d>
->>> processing "accept"
+>>> processing "accept" (TESTSUITE/test-config 70)
 >>> accept: condition test succeeded in inline ACL
 >>> accept: condition test succeeded in inline ACL
+>>> end of inline ACL: ACCEPT
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
->>> processing "warn"
+>>> processing "warn" (TESTSUITE/test-config 51)
 >>> check logwrite = Subject is: "$h_subject:"
 >>>                = Subject is: ""
 LOG: 10HmbA-0005vi-00 Subject is: ""
 >>> warn: condition test succeeded in ACL "check_data"
 >>> check logwrite = Subject is: "$h_subject:"
 >>>                = Subject is: ""
 LOG: 10HmbA-0005vi-00 Subject is: ""
 >>> warn: condition test succeeded in ACL "check_data"
->>> processing "deny"
+>>> processing "deny" (TESTSUITE/test-config 52)
 >>>   message: reply_address=<$reply_address>
 >>> deny: condition test succeeded in ACL "check_data"
 >>>   message: reply_address=<$reply_address>
 >>> deny: condition test succeeded in ACL "check_data"
+>>> end of ACL "check_data": DENY
 LOG: 10HmbA-0005vi-00 H=[V4NET.0.0.0] F=<> rejected after DATA: reply_address=<>
 LOG: 10HmbA-0005vi-00 H=[V4NET.0.0.0] F=<> rejected after DATA: reply_address=<>
->>> processing "accept"
+>>> processing "accept" (TESTSUITE/test-config 70)
 >>> accept: condition test succeeded in inline ACL
 >>> accept: condition test succeeded in inline ACL
+>>> end of inline ACL: ACCEPT
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
->>> processing "warn"
+>>> processing "warn" (TESTSUITE/test-config 51)
 >>> check logwrite = Subject is: "$h_subject:"
 >>>                = Subject is: ""
 LOG: 10HmbB-0005vi-00 Subject is: ""
 >>> warn: condition test succeeded in ACL "check_data"
 >>> check logwrite = Subject is: "$h_subject:"
 >>>                = Subject is: ""
 LOG: 10HmbB-0005vi-00 Subject is: ""
 >>> warn: condition test succeeded in ACL "check_data"
->>> processing "deny"
+>>> processing "deny" (TESTSUITE/test-config 52)
 >>>   message: reply_address=<$reply_address>
 >>> deny: condition test succeeded in ACL "check_data"
 >>>   message: reply_address=<$reply_address>
 >>> deny: condition test succeeded in ACL "check_data"
+>>> end of ACL "check_data": DENY
 LOG: 10HmbB-0005vi-00 H=[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)
 LOG: 10HmbB-0005vi-00 H=[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)
@@ -318,20 +476,23 @@ LOG: 10HmbB-0005vi-00 H=[V4NET.0.0.0] F=<> rejected after DATA: reply_address=<x
 >>> host in helo_try_verify_hosts? no (option unset)
 >>> host in helo_accept_junk_hosts? no (option unset)
 >>> using ACL "connect0"
 >>> host in helo_try_verify_hosts? no (option unset)
 >>> host in helo_accept_junk_hosts? no (option unset)
 >>> using ACL "connect0"
->>> processing "accept"
+>>> processing "accept" (TESTSUITE/test-config 42)
 >>> accept: condition test succeeded in ACL "connect0"
 >>> accept: condition test succeeded in ACL "connect0"
->>> processing "accept"
+>>> end of ACL "connect0": ACCEPT
+>>> processing "accept" (TESTSUITE/test-config 70)
 >>> accept: condition test succeeded in inline ACL
 >>> accept: condition test succeeded in inline ACL
+>>> end of inline ACL: ACCEPT
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
->>> processing "warn"
+>>> processing "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-0005vi-00 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"
 >>> 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-0005vi-00 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"
+>>> processing "deny" (TESTSUITE/test-config 52)
 >>>   message: reply_address=<$reply_address>
 >>> deny: condition test succeeded in ACL "check_data"
 >>>   message: reply_address=<$reply_address>
 >>> deny: condition test succeeded in ACL "check_data"
+>>> end of ACL "check_data": DENY
 LOG: 10HmbC-0005vi-00 H=[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)
 LOG: 10HmbC-0005vi-00 H=[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)
@@ -342,29 +503,33 @@ LOG: 10HmbC-0005vi-00 H=[V4NET.0.0.0] F=<> rejected after DATA: reply_address=<>
 >>> host in helo_try_verify_hosts? no (option unset)
 >>> host in helo_accept_junk_hosts? no (option unset)
 >>> using ACL "connect0"
 >>> host in helo_try_verify_hosts? no (option unset)
 >>> host in helo_accept_junk_hosts? no (option unset)
 >>> using ACL "connect0"
->>> processing "accept"
+>>> processing "accept" (TESTSUITE/test-config 42)
 >>> accept: condition test succeeded in ACL "connect0"
 >>> accept: condition test succeeded in ACL "connect0"
->>> processing "accept"
+>>> end of ACL "connect0": ACCEPT
+>>> processing "accept" (TESTSUITE/test-config 70)
 >>> accept: condition test succeeded in inline ACL
 >>> accept: condition test succeeded in inline ACL
+>>> end of inline ACL: ACCEPT
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
 >>> host in ignore_fromline_hosts? no (option unset)
 >>> using ACL "check_data"
->>> processing "warn"
+>>> processing "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-0005vi-00 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"
 >>> 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-0005vi-00 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"
+>>> processing "deny" (TESTSUITE/test-config 52)
 >>>   message: reply_address=<$reply_address>
 >>> deny: condition test succeeded in ACL "check_data"
 >>>   message: reply_address=<$reply_address>
 >>> deny: condition test succeeded in ACL "check_data"
+>>> end of ACL "check_data": DENY
 LOG: 10HmbD-0005vi-00 H=[V4NET.0.0.0] F=<> rejected after DATA: reply_address=<>
 Exim version x.yz ....
 changed uid/gid: -C, -D, -be or -bf forces real uid
   uid=CALLER_UID gid=CALLER_GID pid=pppp
 configuration file is TESTSUITE/test-config
 admin user
 LOG: 10HmbD-0005vi-00 H=[V4NET.0.0.0] F=<> rejected after DATA: reply_address=<>
 Exim version x.yz ....
 changed uid/gid: -C, -D, -be or -bf forces real uid
   uid=CALLER_UID gid=CALLER_GID pid=pppp
 configuration file is TESTSUITE/test-config
 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"? no (malformed IPv4 address or address mask)
 1.2.3.4 in "1.2.3.4/abc"? no (malformed IPv4 address or address mask)
 search_tidyup called
 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"? no (malformed IPv4 address or address mask)
 1.2.3.4 in "1.2.3.4/abc"? no (malformed IPv4 address or address mask)
 search_tidyup called
->>>>>>>>>>>>>>>> Exim pid=pppp terminating with rc=0 >>>>>>>>>>>>>>>>
+>>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>