Testsuite: clarify testcase for dnsdb dns:fail event.
[exim.git] / test / stderr / 0278
index bea5f6422a34b10b68e35d1b02ea8bfc83bcbe8d..6f80654b34e5c945a79a1f4c8ffe110a8c2c9c35 100644 (file)
@@ -1,6 +1,6 @@
 Exim version x.yz ....
 changed uid/gid: forcing real = effective
 Exim version x.yz ....
 changed uid/gid: forcing real = effective
-  uid=uuuu gid=CALLER_GID pid=pppp
+  uid=uuuu gid=CALLER_GID pid=p1234
 configuration file is TESTSUITE/test-config
 admin user
 dropping to exim gid; retaining priv uid
 configuration file is TESTSUITE/test-config
 admin user
 dropping to exim gid; retaining priv uid
@@ -18,29 +18,61 @@ routing CALLER@test.ex
 --------> r1 router <--------
 local_part=CALLER domain=test.ex
 checking local_parts
 --------> r1 router <--------
 local_part=CALLER domain=test.ex
 checking local_parts
-CALLER in "never"? no (end of list)
-CALLER in "never1"? no (end of list)
-CALLER in "CALLER"? yes (matched "CALLER")
-CALLER in "+never_localparts : +n1_localparts : ! +local_localparts"? no (matched "! +local_localparts")
+CALLER in "+never_localparts : +n1_localparts : ! +local_localparts"?
+ list element: +never_localparts
+  start sublist never_localparts
+   CALLER in "never"?
+   ╎list element: never
+   CALLER in "never"? no (end of list)
+  end sublist never_localparts
+ list element: +n1_localparts
+  start sublist n1_localparts
+   CALLER in "never1"?
+   ╎list element: never1
+   CALLER in "never1"? no (end of list)
+  end sublist n1_localparts
+ list element: ! +local_localparts
+  start sublist local_localparts
+   CALLER in "CALLER"?
+   ╎list element: CALLER
+   ╎CALLER in "CALLER"? yes (matched "CALLER")
+  end sublist local_localparts
+ data from lookup saved for cache for +local_localparts: key 'CALLER' value 'CALLER'
+ CALLER in "+never_localparts : +n1_localparts : ! +local_localparts"? no (matched "! +local_localparts")
 r1 router skipped: local_parts mismatch
 --------> r2 router <--------
 local_part=CALLER domain=test.ex
 checking local_parts
 r1 router skipped: local_parts mismatch
 --------> r2 router <--------
 local_part=CALLER domain=test.ex
 checking local_parts
-cached no match for +never_localparts
-cached lookup data = NULL
-cached no match for +n1_localparts
-cached lookup data = NULL
-CALLER in "<; never2 ; +n1_localparts"? no (end of list)
-cached yes match for +local_localparts
-cached lookup data = NULL
-CALLER in "+never_localparts : +n2_localparts : !+local_localparts"? no (matched "!+local_localparts" - cached)
+CALLER in "+never_localparts : +n2_localparts : !+local_localparts"?
+ list element: +never_localparts
+  start sublist never_localparts
+ cached no match for +never_localparts
+ cached lookup data = NULL
+ list element: +n2_localparts
+  start sublist n2_localparts
+   CALLER in "<; never2 ; +n1_localparts"?
+   ╎list element: never2
+   ╎list element: +n1_localparts
+   ╎ start sublist n1_localparts
+   ╎cached no match for +n1_localparts
+   ╎cached lookup data = NULL
+   CALLER in "<; never2 ; +n1_localparts"? no (end of list)
+  end sublist n2_localparts
+ list element: !+local_localparts
+  start sublist local_localparts
+ cached yes match for +local_localparts
+ cached lookup data = CALLER
+ CALLER in "+never_localparts : +n2_localparts : !+local_localparts"? no (matched "!+local_localparts" - cached)
 r2 router skipped: local_parts mismatch
 --------> r3 router <--------
 local_part=CALLER domain=test.ex
 checking local_parts
 r2 router skipped: local_parts mismatch
 --------> r3 router <--------
 local_part=CALLER domain=test.ex
 checking local_parts
-cached yes match for +local_localparts
-cached lookup data = NULL
-CALLER in "+local_localparts"? yes (matched "+local_localparts" - cached)
+CALLER in "+local_localparts"?
+ list element: +local_localparts
+  start sublist local_localparts
+ cached yes match for +local_localparts
+ cached lookup data = CALLER
+ CALLER in "+local_localparts"? yes (matched "+local_localparts" - cached)
 checking for local user
 seeking password data for user "CALLER": using cached result
 getpwnam() succeeded uid=CALLER_UID gid=CALLER_GID
 checking for local user
 seeking password data for user "CALLER": using cached result
 getpwnam() succeeded uid=CALLER_UID gid=CALLER_GID
@@ -51,19 +83,19 @@ set transport t1
 queued for t1 transport: local_part = CALLER
 domain = test.ex
   errors_to=NULL
 queued for t1 transport: local_part = CALLER
 domain = test.ex
   errors_to=NULL
-  domain_data=NULL localpart_data=NULL
+  domain_data=NULL local_part_data=CALLER
 routed by r3 router
   envelope to: CALLER@test.ex
   transport: t1
 search_tidyup called
 routed by r3 router
   envelope to: CALLER@test.ex
   transport: t1
 search_tidyup called
->>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
+>>>>>>>>>>>>>>>> Exim pid=p1234 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 Exim version x.yz ....
 changed uid/gid: forcing real = effective
 Exim version x.yz ....
 changed uid/gid: forcing real = effective
-  uid=uuuu gid=CALLER_GID pid=pppp
+  uid=uuuu gid=CALLER_GID pid=p1235
 configuration file is TESTSUITE/test-config
 admin user
 changed uid/gid: privilege not needed
 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=p1235
 seeking password data for user "CALLER": cache not available
 getpwnam() succeeded uid=CALLER_UID gid=CALLER_GID
 originator: uid=CALLER_UID gid=CALLER_GID login=CALLER name=CALLER_NAME
 seeking password data for user "CALLER": cache not available
 getpwnam() succeeded uid=CALLER_UID gid=CALLER_GID
 originator: uid=CALLER_UID gid=CALLER_GID login=CALLER name=CALLER_NAME
@@ -77,39 +109,37 @@ Recipients:
 search_tidyup called
 >>Headers received:
 
 search_tidyup called
 >>Headers received:
 
-rewrite_one_header: type=F:
-  From: CALLER_NAME <CALLER@test.ex>
+qualify & rewrite recipients list
+rewrite rules on sender address
+qualify and rewrite headers
+ rewrite_one_header: type=F:
+   From: CALLER_NAME <CALLER@test.ex>
 search_tidyup called
 >>Headers after rewriting and local additions:
 search_tidyup called
 >>Headers after rewriting and local additions:
-I Message-Id: <E10HmaX-0005vi-00@myhost.test.ex>
-F From: CALLER_NAME <CALLER@test.ex>
-  Date: Tue, 2 Mar 1999 09:44:33 +0000
+ I Message-Id: <E10HmaX-000000005vi-0000@myhost.test.ex>
+ F From: CALLER_NAME <CALLER@test.ex>
+   Date: Tue, 2 Mar 1999 09:44:33 +0000
 
 
-Data file name: TESTSUITE/spool//input//10HmaX-0005vi-00-D
-Data file written for message 10HmaX-0005vi-00
+Data file name: TESTSUITE/spool//input//10HmaX-000000005vi-0000-D
+Data file written for message 10HmaX-000000005vi-0000
 >>Generated Received: header line
 P Received: from CALLER by myhost.test.ex with local (Exim x.yz)
        (envelope-from <CALLER@test.ex>)
 >>Generated Received: header line
 P Received: from CALLER by myhost.test.ex with local (Exim x.yz)
        (envelope-from <CALLER@test.ex>)
-       id 10HmaX-0005vi-00
-       for CALLER@test.ex; Tue, 2 Mar 1999 09:44:33 +0000
-Writing spool header file: TESTSUITE/spool//input//hdr.10HmaX-0005vi-00
-DSN: Write SPOOL: -dsn_envid NULL
-DSN: Write SPOOL  :-dsn_ret 0
-DSN: Flags: 0x0
+       id 10HmaX-000000005vi-0000
+       for CALLER@test.ex;
+       Tue, 2 Mar 1999 09:44:33 +0000
+Writing spool header file: TESTSUITE/spool//input//hdr.10HmaX-000000005vi-0000
 DSN: **** SPOOL_OUT - address: <CALLER@test.ex> errorsto: <NULL> orcpt: <NULL> dsn_flags: 0x0
 DSN: **** SPOOL_OUT - address: <CALLER@test.ex> errorsto: <NULL> orcpt: <NULL> dsn_flags: 0x0
-Renaming spool header file: TESTSUITE/spool//input//10HmaX-0005vi-00-H
+Renaming spool header file: TESTSUITE/spool//input//10HmaX-000000005vi-0000-H
 Size of headers = sss
 LOG: MAIN
   <= CALLER@test.ex U=CALLER P=local S=sss
 created log directory TESTSUITE/spool/log
 search_tidyup called
 Size of headers = sss
 LOG: MAIN
   <= CALLER@test.ex U=CALLER P=local S=sss
 created log directory TESTSUITE/spool/log
 search_tidyup called
-fresh-exec forking for local-accept-delivery
-postfork: local-accept-delivery
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -MCd local-accept-delivery -odi -Mc 10HmaX-0005vi-00
-fresh-exec forked for local-accept-delivery: npppp
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -MCd local-accept-delivery -odi -Mc 10HmaX-000000005vi-0000
 Exim version x.yz ....
 changed uid/gid: forcing real = effective
 Exim version x.yz ....
 changed uid/gid: forcing real = effective
-  uid=uuuu gid=EXIM_GID pid=pppp
+  uid=uuuu gid=EXIM_GID pid=p1236
 configuration file is TESTSUITE/test-config
 trusted user
 admin user
 configuration file is TESTSUITE/test-config
 trusted user
 admin user
@@ -117,17 +147,17 @@ dropping to exim gid; retaining priv uid
 seeking password data for user "CALLER": cache not available
 getpwnam() succeeded uid=CALLER_UID gid=CALLER_GID
 set_process_info: pppp delivering specified messages
 seeking password data for user "CALLER": cache not available
 getpwnam() succeeded uid=CALLER_UID gid=CALLER_GID
 set_process_info: pppp delivering specified messages
-set_process_info: pppp delivering 10HmaX-0005vi-00
-Trying spool file TESTSUITE/spool//input//10HmaX-0005vi-00-D
-reading spool file 10HmaX-0005vi-00-H
+set_process_info: pppp delivering 10HmaX-000000005vi-0000
+Trying spool file TESTSUITE/spool//input//10HmaX-000000005vi-0000-D
+reading spool file 10HmaX-000000005vi-0000-H
 user=CALLER uid=CALLER_UID gid=CALLER_GID sender=CALLER@test.ex
 sender_local=1 ident=CALLER
 Non-recipients:
 user=CALLER uid=CALLER_UID gid=CALLER_GID sender=CALLER@test.ex
 sender_local=1 ident=CALLER
 Non-recipients:
-Empty Tree
+ Empty Tree
 ---- End of tree ----
 recipients_count=1
 **** SPOOL_IN - No additional fields
 ---- End of tree ----
 recipients_count=1
 **** SPOOL_IN - No additional fields
-body_linecount=0 message_linecount=7
+body_linecount=0 message_linecount=8
 DSN: set orcpt:   flags: 0x0
 Delivery address list:
   CALLER@test.ex 
 DSN: set orcpt:   flags: 0x0
 Delivery address list:
   CALLER@test.ex 
@@ -135,8 +165,7 @@ Delivery address list:
  locked  TESTSUITE/spool/db/retry.lockfile
  EXIM_DBOPEN: file <TESTSUITE/spool/db/retry> dir <TESTSUITE/spool/db> flags=O_RDONLY
  returned from EXIM_DBOPEN: (nil)
  locked  TESTSUITE/spool/db/retry.lockfile
  EXIM_DBOPEN: file <TESTSUITE/spool/db/retry> dir <TESTSUITE/spool/db> flags=O_RDONLY
  returned from EXIM_DBOPEN: (nil)
- ensuring TESTSUITE/spool/db/retry.lockfile is owned by exim
- failed to open DB file TESTSUITE/spool/db/retry.lockfile: No such file or directory
+ failed to open DB file TESTSUITE/spool/db/retry: No such file or directory
 no retry data available
 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 Considering: CALLER@test.ex
 no retry data available
 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 Considering: CALLER@test.ex
@@ -149,29 +178,61 @@ routing CALLER@test.ex
 --------> r1 router <--------
 local_part=CALLER domain=test.ex
 checking local_parts
 --------> r1 router <--------
 local_part=CALLER domain=test.ex
 checking local_parts
-CALLER in "never"? no (end of list)
-CALLER in "never1"? no (end of list)
-CALLER in "CALLER"? yes (matched "CALLER")
-CALLER in "+never_localparts : +n1_localparts : ! +local_localparts"? no (matched "! +local_localparts")
+CALLER in "+never_localparts : +n1_localparts : ! +local_localparts"?
+ list element: +never_localparts
+  start sublist never_localparts
+   CALLER in "never"?
+   ╎list element: never
+   CALLER in "never"? no (end of list)
+  end sublist never_localparts
+ list element: +n1_localparts
+  start sublist n1_localparts
+   CALLER in "never1"?
+   ╎list element: never1
+   CALLER in "never1"? no (end of list)
+  end sublist n1_localparts
+ list element: ! +local_localparts
+  start sublist local_localparts
+   CALLER in "CALLER"?
+   ╎list element: CALLER
+   ╎CALLER in "CALLER"? yes (matched "CALLER")
+  end sublist local_localparts
+ data from lookup saved for cache for +local_localparts: key 'CALLER' value 'CALLER'
+ CALLER in "+never_localparts : +n1_localparts : ! +local_localparts"? no (matched "! +local_localparts")
 r1 router skipped: local_parts mismatch
 --------> r2 router <--------
 local_part=CALLER domain=test.ex
 checking local_parts
 r1 router skipped: local_parts mismatch
 --------> r2 router <--------
 local_part=CALLER domain=test.ex
 checking local_parts
-cached no match for +never_localparts
-cached lookup data = NULL
-cached no match for +n1_localparts
-cached lookup data = NULL
-CALLER in "<; never2 ; +n1_localparts"? no (end of list)
-cached yes match for +local_localparts
-cached lookup data = NULL
-CALLER in "+never_localparts : +n2_localparts : !+local_localparts"? no (matched "!+local_localparts" - cached)
+CALLER in "+never_localparts : +n2_localparts : !+local_localparts"?
+ list element: +never_localparts
+  start sublist never_localparts
+ cached no match for +never_localparts
+ cached lookup data = NULL
+ list element: +n2_localparts
+  start sublist n2_localparts
+   CALLER in "<; never2 ; +n1_localparts"?
+   ╎list element: never2
+   ╎list element: +n1_localparts
+   ╎ start sublist n1_localparts
+   ╎cached no match for +n1_localparts
+   ╎cached lookup data = NULL
+   CALLER in "<; never2 ; +n1_localparts"? no (end of list)
+  end sublist n2_localparts
+ list element: !+local_localparts
+  start sublist local_localparts
+ cached yes match for +local_localparts
+ cached lookup data = CALLER
+ CALLER in "+never_localparts : +n2_localparts : !+local_localparts"? no (matched "!+local_localparts" - cached)
 r2 router skipped: local_parts mismatch
 --------> r3 router <--------
 local_part=CALLER domain=test.ex
 checking local_parts
 r2 router skipped: local_parts mismatch
 --------> r3 router <--------
 local_part=CALLER domain=test.ex
 checking local_parts
-cached yes match for +local_localparts
-cached lookup data = NULL
-CALLER in "+local_localparts"? yes (matched "+local_localparts" - cached)
+CALLER in "+local_localparts"?
+ list element: +local_localparts
+  start sublist local_localparts
+ cached yes match for +local_localparts
+ cached lookup data = CALLER
+ CALLER in "+local_localparts"? yes (matched "+local_localparts" - cached)
 checking for local user
 seeking password data for user "CALLER": using cached result
 getpwnam() succeeded uid=CALLER_UID gid=CALLER_GID
 checking for local user
 seeking password data for user "CALLER": using cached result
 getpwnam() succeeded uid=CALLER_UID gid=CALLER_GID
@@ -182,7 +243,7 @@ set transport t1
 queued for t1 transport: local_part = CALLER
 domain = test.ex
   errors_to=NULL
 queued for t1 transport: local_part = CALLER
 domain = test.ex
   errors_to=NULL
-  domain_data=NULL localpart_data=NULL
+  domain_data=NULL local_part_data=CALLER
 routed by r3 router
   envelope to: CALLER@test.ex
   transport: t1
 routed by r3 router
   envelope to: CALLER@test.ex
   transport: t1
@@ -203,12 +264,10 @@ search_tidyup called
  failed to open DB file TESTSUITE/spool/db/retry: No such file or directory
 no retry data available
 search_tidyup called
  failed to open DB file TESTSUITE/spool/db/retry: No such file or directory
 no retry data available
 search_tidyup called
-local-accept-delivery forking for delivery-local
-postfork: delivery-local
 changed uid/gid: local delivery to CALLER <CALLER@test.ex> transport=t1
 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=p1237
   home=CALLER_HOME current=CALLER_HOME
   home=CALLER_HOME current=CALLER_HOME
-set_process_info: pppp delivering 10HmaX-0005vi-00 to CALLER using t1
+set_process_info: pppp delivering 10HmaX-000000005vi-0000 to CALLER using t1
 appendfile transport entered
 appendfile: mode=600 notify_comsat=0 quota=0 warning=0
   file=/dev/null format=unix
 appendfile transport entered
 appendfile: mode=600 notify_comsat=0 quota=0 warning=0
   file=/dev/null format=unix
@@ -217,7 +276,6 @@ appendfile: mode=600 notify_comsat=0 quota=0 warning=0
   maildir_use_size_file=no
   locking by lockfile fcntl 
 search_tidyup called
   maildir_use_size_file=no
   locking by lockfile fcntl 
 search_tidyup called
-local-accept-delivery forked for delivery-local: npppp
 journalling CALLER@test.ex
 t1 transport returned OK for CALLER@test.ex
 post-process CALLER@test.ex (0)
 journalling CALLER@test.ex
 t1 transport returned OK for CALLER@test.ex
 post-process CALLER@test.ex (0)
@@ -226,8 +284,8 @@ LOG: MAIN
   => CALLER <CALLER@test.ex> R=r3 T=t1
 >>>>>>>>>>>>>>>> deliveries are done >>>>>>>>>>>>>>>>
 changed uid/gid: post-delivery tidying
   => CALLER <CALLER@test.ex> R=r3 T=t1
 >>>>>>>>>>>>>>>> deliveries are done >>>>>>>>>>>>>>>>
 changed uid/gid: post-delivery tidying
-  uid=EXIM_UID gid=EXIM_GID pid=pppp
-set_process_info: pppp tidying up after delivering 10HmaX-0005vi-00
+  uid=EXIM_UID gid=EXIM_GID pid=p1236
+set_process_info: pppp tidying up after delivering 10HmaX-000000005vi-0000
 Processing retry items
 Succeeded addresses:
  CALLER@test.ex: no retry items
 Processing retry items
 Succeeded addresses:
  CALLER@test.ex: no retry items
@@ -244,15 +302,15 @@ DSN: Remote SMTP server supports DSN: 0
 DSN: not sending DSN success message
 LOG: MAIN
   Completed
 DSN: not sending DSN success message
 LOG: MAIN
   Completed
-end delivery of 10HmaX-0005vi-00
+end delivery of 10HmaX-000000005vi-0000
 search_tidyup called
 search_tidyup called
 search_tidyup called
 search_tidyup called
->>>>>>>>>>>>>>>> Exim pid=pppp (local-accept-delivery) terminating with rc=0 >>>>>>>>>>>>>>>>
+>>>>>>>>>>>>>>>> Exim pid=p1236 (local-accept-delivery) terminating with rc=0 >>>>>>>>>>>>>>>>
 search_tidyup called
 search_tidyup called
->>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
+>>>>>>>>>>>>>>>> Exim pid=p1235 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 Exim version x.yz ....
 changed uid/gid: forcing real = effective
 Exim version x.yz ....
 changed uid/gid: forcing real = effective
-  uid=uuuu gid=CALLER_GID pid=pppp
+  uid=uuuu gid=CALLER_GID pid=p1238
 configuration file is TESTSUITE/test-config
 admin user
 dropping to exim gid; retaining priv uid
 configuration file is TESTSUITE/test-config
 admin user
 dropping to exim gid; retaining priv uid
@@ -270,47 +328,70 @@ routing unknown@test.ex
 --------> r1 router <--------
 local_part=unknown domain=test.ex
 checking local_parts
 --------> r1 router <--------
 local_part=unknown domain=test.ex
 checking local_parts
-unknown in "never"? no (end of list)
-unknown in "never1"? no (end of list)
-unknown in "CALLER"? no (end of list)
+unknown in "+never_localparts : +n1_localparts : ! +local_localparts"?
+ list element: +never_localparts
+  start sublist never_localparts
+   unknown in "never"?
+   ╎list element: never
+   unknown in "never"? no (end of list)
+  end sublist never_localparts
+ list element: +n1_localparts
+  start sublist n1_localparts
+   unknown in "never1"?
+   ╎list element: never1
+   unknown in "never1"? no (end of list)
+  end sublist n1_localparts
+ list element: ! +local_localparts
+  start sublist local_localparts
+   unknown in "CALLER"?
+   ╎list element: CALLER
+   unknown in "CALLER"? no (end of list)
+  end sublist local_localparts
 unknown in "+never_localparts : +n1_localparts : ! +local_localparts"? yes (end of list)
 calling r1 router
 r1 router called for unknown@test.ex
   domain = test.ex
 route_item = never
 unknown in "+never_localparts : +n1_localparts : ! +local_localparts"? yes (end of list)
 calling r1 router
 r1 router called for unknown@test.ex
   domain = test.ex
 route_item = never
+test.ex in "never"?
+ list element: never
 test.ex in "never"? no (end of list)
 r1 router declined for unknown@test.ex
 --------> r2 router <--------
 local_part=unknown domain=test.ex
 checking local_parts
 test.ex in "never"? no (end of list)
 r1 router declined for unknown@test.ex
 --------> r2 router <--------
 local_part=unknown domain=test.ex
 checking local_parts
-cached no match for +never_localparts
-cached lookup data = NULL
-cached no match for +n1_localparts
-cached lookup data = NULL
-unknown in "<; never2 ; +n1_localparts"? no (end of list)
-cached no match for +local_localparts
-cached lookup data = NULL
+unknown in "+never_localparts : +n2_localparts : !+local_localparts"?
+ list element: +never_localparts
+  start sublist never_localparts
+ cached no match for +never_localparts
+ cached lookup data = NULL
+ list element: +n2_localparts
+  start sublist n2_localparts
+   unknown in "<; never2 ; +n1_localparts"?
+   ╎list element: never2
+   ╎list element: +n1_localparts
+   ╎ start sublist n1_localparts
+   ╎cached no match for +n1_localparts
+   ╎cached lookup data = NULL
+   unknown in "<; never2 ; +n1_localparts"? no (end of list)
+  end sublist n2_localparts
+ list element: !+local_localparts
+  start sublist local_localparts
+ cached no match for +local_localparts
+ cached lookup data = NULL
 unknown in "+never_localparts : +n2_localparts : !+local_localparts"? yes (end of list)
 calling r2 router
 r2 router called for unknown@test.ex
   domain = test.ex
 unknown in "+never_localparts : +n2_localparts : !+local_localparts"? yes (end of list)
 calling r2 router
 r2 router called for unknown@test.ex
   domain = test.ex
-test.ex in "*"? yes (matched "*")
+test.ex in "*"?
+ list element: *
+ test.ex in "*"? yes (matched "*")
 DNS lookup of test.ex (MX) using fakens
 DNS lookup of test.ex (MX) using fakens
-fresh-exec forking for fakens-search
-postfork: fakens-search
-fresh-exec forked for fakens-search: npppp
 DNS lookup of test.ex (MX) gave NO_DATA
 returning DNS_NODATA
 faking res_search(MX) response length as 65535
  writing neg-cache entry for test.ex-MX-xxxx, ttl 3000
 test.ex (MX resp) DNSSEC
 DNS lookup of test.ex (MX) gave NO_DATA
 returning DNS_NODATA
 faking res_search(MX) response length as 65535
  writing neg-cache entry for test.ex-MX-xxxx, ttl 3000
 test.ex (MX resp) DNSSEC
-fresh-exec forking for fakens-search
-postfork: fakens-search
-fresh-exec forked for fakens-search: npppp
 DNS lookup of test.ex (A) using fakens
 DNS lookup of test.ex (A) using fakens
-fresh-exec forking for fakens-search
-postfork: fakens-search
-fresh-exec forked for fakens-search: npppp
 DNS lookup of test.ex (A) gave NO_DATA
 returning DNS_NODATA
 faking res_search(A) response length as 65535
 DNS lookup of test.ex (A) gave NO_DATA
 returning DNS_NODATA
 faking res_search(A) response length as 65535
@@ -319,29 +400,55 @@ r2 router declined for unknown@test.ex
 --------> r3 router <--------
 local_part=unknown domain=test.ex
 checking local_parts
 --------> r3 router <--------
 local_part=unknown domain=test.ex
 checking local_parts
-cached no match for +local_localparts
-cached lookup data = NULL
+unknown in "+local_localparts"?
+ list element: +local_localparts
+  start sublist local_localparts
+ cached no match for +local_localparts
+ cached lookup data = NULL
 unknown in "+local_localparts"? no (end of list)
 r3 router skipped: local_parts mismatch
 --------> r4 router <--------
 local_part=unknown domain=test.ex
 checking local_parts
 unknown in "+local_localparts"? no (end of list)
 r3 router skipped: local_parts mismatch
 --------> r4 router <--------
 local_part=unknown domain=test.ex
 checking local_parts
-cached no match for +local_localparts
-cached lookup data = NULL
-unknown in "test.ex"? no (end of list)
-unknown in "unexpanded"? no (end of list)
+unknown in "+local_localparts : +expanded : +unexpanded"?
+ list element: +local_localparts
+  start sublist local_localparts
+ cached no match for +local_localparts
+ cached lookup data = NULL
+ list element: +expanded
+  start sublist expanded
+   unknown in "test.ex"?
+   ╎list element: test.ex
+   unknown in "test.ex"? no (end of list)
+  end sublist expanded
+ list element: +unexpanded
+  start sublist unexpanded
+   unknown in "unexpanded"?
+   ╎list element: unexpanded
+   unknown in "unexpanded"? no (end of list)
+  end sublist unexpanded
 unknown in "+local_localparts : +expanded : +unexpanded"? no (end of list)
 r4 router skipped: local_parts mismatch
 --------> r5 router <--------
 local_part=unknown domain=test.ex
 checking local_parts
 unknown in "+local_localparts : +expanded : +unexpanded"? no (end of list)
 r4 router skipped: local_parts mismatch
 --------> r5 router <--------
 local_part=unknown domain=test.ex
 checking local_parts
-cached no match for +local_localparts
-cached lookup data = NULL
-unknown in "test.ex"? no (end of list)
-cached no match for +unexpanded
-cached lookup data = NULL
+unknown in "+local_localparts : +expanded : +unexpanded"?
+ list element: +local_localparts
+  start sublist local_localparts
+ cached no match for +local_localparts
+ cached lookup data = NULL
+ list element: +expanded
+  start sublist expanded
+   unknown in "test.ex"?
+   ╎list element: test.ex
+   unknown in "test.ex"? no (end of list)
+  end sublist expanded
+ list element: +unexpanded
+  start sublist unexpanded
+ cached no match for +unexpanded
+ cached lookup data = NULL
 unknown in "+local_localparts : +expanded : +unexpanded"? no (end of list)
 r5 router skipped: local_parts mismatch
 no more routers
 search_tidyup called
 unknown in "+local_localparts : +expanded : +unexpanded"? no (end of list)
 r5 router skipped: local_parts mismatch
 no more routers
 search_tidyup called
->>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=2 >>>>>>>>>>>>>>>>
+>>>>>>>>>>>>>>>> Exim pid=p1238 (fresh-exec) terminating with rc=2 >>>>>>>>>>>>>>>>