Fix list-expansion for various domainlists, having included sublist elements. Bug...
[users/heiko/exim.git] / test / stderr / 2620
index a263e1fdd6adf47da57df94b360d5c588d31d3b7..7875ec24b6cf2fee76f2eb23c4ed7a79d90c60e9 100644 (file)
@@ -5,201 +5,215 @@ You can change this by editing pg_hba.conf or using the option -A, or
 Exim version x.yz ....
 configuration file is TESTSUITE/test-config
 admin user
 Exim version x.yz ....
 configuration file is TESTSUITE/test-config
 admin user
-search_open: pgsql "NULL"
-search_find: file="NULL"
-  key="select name from them where id='ph10';" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="select name from them where id='ph10';"
-database lookup required for select name from them where id='ph10';
-PostgreSQL query: select name from them where id='ph10';
-PGSQL new connection: host=localhost port=1223 database=test user=CALLER
-lookup yielded: Philip Hazel
-search_open: pgsql "NULL"
-  cached open
-search_find: file="NULL"
-  key="select name from them where id='ph10';" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="select name from them where id='ph10';"
-cached data used for lookup of select name from them where id='ph10';
-lookup yielded: Philip Hazel
-search_open: pgsql "NULL"
-  cached open
-search_find: file="NULL"
-  key="select name from them where id='xxxx';" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="select name from them where id='xxxx';"
-database lookup required for select name from them where id='xxxx';
-PostgreSQL query: select name from them where id='xxxx';
-PGSQL using cached connection for localhost:1223/test/CALLER
-PGSQL: no data found
-lookup failed
-search_open: pgsql "NULL"
-  cached open
-search_find: file="NULL"
-  key="select name from them where id='nothing';" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="select name from them where id='nothing';"
-database lookup required for select name from them where id='nothing';
-PostgreSQL query: select name from them where id='nothing';
-PGSQL using cached connection for localhost:1223/test/CALLER
-lookup yielded: 
-search_open: pgsql "NULL"
-  cached open
-search_find: file="NULL"
-  key="select id,name from them where id='nothing';" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="select id,name from them where id='nothing';"
-database lookup required for select id,name from them where id='nothing';
-PostgreSQL query: select id,name from them where id='nothing';
-PGSQL using cached connection for localhost:1223/test/CALLER
-lookup yielded: id=nothing name="" 
-search_open: pgsql "NULL"
-  cached open
-search_find: file="NULL"
-  key="delete from them where id='nonexist';" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="delete from them where id='nonexist';"
-database lookup required for delete from them where id='nonexist';
-PostgreSQL query: delete from them where id='nonexist';
-PGSQL using cached connection for localhost:1223/test/CALLER
-PGSQL: command does not return any data but was successful. Rows affected: 0
-lookup forced cache cleanup
-lookup yielded: 0
-search_open: pgsql "NULL"
-  cached open
-search_find: file="NULL"
-  key="select * from them where id='quote2';" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="select * from them where id='quote2';"
-database lookup required for select * from them where id='quote2';
-PostgreSQL query: select * from them where id='quote2';
-PGSQL using cached connection for localhost:1223/test/CALLER
-lookup yielded: name="\"stquot" id=quote2 
-search_open: pgsql "NULL"
-  cached open
-search_find: file="NULL"
-  key="select * from them where id='newline';" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="select * from them where id='newline';"
-database lookup required for select * from them where id='newline';
-PostgreSQL query: select * from them where id='newline';
-PGSQL using cached connection for localhost:1223/test/CALLER
-lookup yielded: name="before\r
-after" id=newline 
-search_open: pgsql "NULL"
-  cached open
-search_find: file="NULL"
-  key="select * from them where id='tab';" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="select * from them where id='tab';"
-database lookup required for select * from them where id='tab';
-PostgreSQL query: select * from them where id='tab';
-PGSQL using cached connection for localhost:1223/test/CALLER
-lookup yielded: name="x        x" id=tab 
-search_open: pgsql "NULL"
-  cached open
-search_find: file="NULL"
-  key="select * from them where name='''stquot';" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="select * from them where name='''stquot';"
-database lookup required for select * from them where name='''stquot';
-PostgreSQL query: select * from them where name='''stquot';
-PGSQL using cached connection for localhost:1223/test/CALLER
-lookup yielded: name='stquot id=quote1 
-search_open: pgsql "NULL"
-  cached open
-search_find: file="NULL"
-  key="servers=x:localhost; select name from them where id='ph10';" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="servers=x:localhost; select name from them where id='ph10';"
-database lookup required for servers=x:localhost; select name from them where id='ph10';
-PostgreSQL query: servers=x:localhost; select name from them where id='ph10';
-lookup deferred: PostgreSQL server "x" not found in pgsql_servers
-search_open: pgsql "NULL"
-  cached open
-search_find: file="NULL"
-  key="servers=localhost::1223:x; select name from them where id='ph10';" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="servers=localhost::1223:x; select name from them where id='ph10';"
-database lookup required for servers=localhost::1223:x; select name from them where id='ph10';
-PostgreSQL query: servers=localhost::1223:x; select name from them where id='ph10';
-PGSQL using cached connection for localhost:1223/test/CALLER
-lookup yielded: Philip Hazel
-search_open: pgsql "NULL"
-  cached open
-search_find: file="NULL"
-  key="servers=localhost::1223/test/CALLER/:x; select name from them where id='ph10';" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="servers=localhost::1223/test/CALLER/:x; select name from them where id='ph10';"
-database lookup required for servers=localhost::1223/test/CALLER/:x; select name from them where id='ph10';
-PostgreSQL query: servers=localhost::1223/test/CALLER/:x; select name from them where id='ph10';
-PGSQL using cached connection for localhost:1223/test/CALLER
-lookup yielded: Philip Hazel
-search_open: pgsql "NULL"
-  cached open
-search_find: file="NULL"
-  key="servers=(TESTSUITE/pgsql/.s.PGSQL.1223)/test/CALLER/:x; select name from them where id='ph10';" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="servers=(TESTSUITE/pgsql/.s.PGSQL.1223)/test/CALLER/:x; select name from them where id='ph10';"
-database lookup required for servers=(TESTSUITE/pgsql/.s.PGSQL.1223)/test/CALLER/:x; select name from them where id='ph10';
-PostgreSQL query: servers=(TESTSUITE/pgsql/.s.PGSQL.1223)/test/CALLER/:x; select name from them where id='ph10';
-PGSQL new connection: socket=TESTSUITE/pgsql/.s.PGSQL.1223 database=test user=CALLER
-lookup yielded: Philip Hazel
-search_open: pgsql "NULL"
-  cached open
-search_find: file="NULL"
-  key="SELECT name FROM them WHERE id IN ('ph10', 'aaaa');" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="SELECT name FROM them WHERE id IN ('ph10', 'aaaa');"
-database lookup required for SELECT name FROM them WHERE id IN ('ph10', 'aaaa');
-PostgreSQL query: SELECT name FROM them WHERE id IN ('ph10', 'aaaa');
-PGSQL using cached connection for localhost:1223/test/CALLER
-lookup yielded: Philip Hazel
-Aristotle
-search_open: pgsql "NULL"
-  cached open
-search_find: file="NULL"
-  key="SELECT *    FROM them WHERE id IN ('ph10', 'aaaa');" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="SELECT *    FROM them WHERE id IN ('ph10', 'aaaa');"
-database lookup required for SELECT *    FROM them WHERE id IN ('ph10', 'aaaa');
-PostgreSQL query: SELECT *    FROM them WHERE id IN ('ph10', 'aaaa');
-PGSQL using cached connection for localhost:1223/test/CALLER
-lookup yielded: name="Philip Hazel" id=ph10 
-name=Aristotle id=aaaa 
-search_open: pgsql "NULL"
-  cached open
-search_find: file="NULL"
-  key="delete from them where id='aaaa'" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="delete from them where id='aaaa'"
-database lookup required for delete from them where id='aaaa'
-PostgreSQL query: delete from them where id='aaaa'
-PGSQL using cached connection for localhost:1223/test/CALLER
-PGSQL: command does not return any data but was successful. Rows affected: 1
-lookup forced cache cleanup
-lookup yielded: 1
+dropping to exim gid; retaining priv uid
+ search_open: pgsql "NULL"
+ search_find: file="NULL"
+   key="select name from them where id='ph10';" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="select name from them where id='ph10';" opts=NULL
+ database lookup required for select name from them where id='ph10';
+ PostgreSQL query: "select name from them where id='ph10';" opts 'NULL'
+ PGSQL new connection: host=localhost port=1223 database=test user=CALLER
+ creating new cache entry
+ lookup yielded: Philip Hazel
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="select name from them where id='ph10';" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="select name from them where id='ph10';" opts=NULL
+ cached data used for lookup of select name from them where id='ph10';
+ lookup yielded: Philip Hazel
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="select name from them where id='xxxx';" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="select name from them where id='xxxx';" opts=NULL
+ database lookup required for select name from them where id='xxxx';
+ PostgreSQL query: "select name from them where id='xxxx';" opts 'NULL'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ PGSQL: no data found
+ creating new cache entry
+ lookup failed
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="select name from them where id='nothing';" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="select name from them where id='nothing';" opts=NULL
+ database lookup required for select name from them where id='nothing';
+ PostgreSQL query: "select name from them where id='nothing';" opts 'NULL'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ creating new cache entry
+ lookup yielded: 
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="select id,name from them where id='nothing';" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="select id,name from them where id='nothing';" opts=NULL
+ database lookup required for select id,name from them where id='nothing';
+ PostgreSQL query: "select id,name from them where id='nothing';" opts 'NULL'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ creating new cache entry
+ lookup yielded: id=nothing name="" 
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="delete from them where id='nonexist';" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="delete from them where id='nonexist';" opts=NULL
+ database lookup required for delete from them where id='nonexist';
+ PostgreSQL query: "delete from them where id='nonexist';" opts 'NULL'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ PGSQL: command does not return any data but was successful. Rows affected: 0
+ lookup forced cache cleanup
+ lookup yielded: 0
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="select * from them where id='quote2';" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="select * from them where id='quote2';" opts=NULL
+ database lookup required for select * from them where id='quote2';
+ PostgreSQL query: "select * from them where id='quote2';" opts 'NULL'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ creating new cache entry
+ lookup yielded: name="\"stquot" id=quote2 
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="select * from them where id='newline';" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="select * from them where id='newline';" opts=NULL
+ database lookup required for select * from them where id='newline';
+ PostgreSQL query: "select * from them where id='newline';" opts 'NULL'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ creating new cache entry
+ lookup yielded: name="before\r
+ after" id=newline 
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="select * from them where id='tab';" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="select * from them where id='tab';" opts=NULL
+ database lookup required for select * from them where id='tab';
+ PostgreSQL query: "select * from them where id='tab';" opts 'NULL'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ creating new cache entry
+ lookup yielded: name="x       x" id=tab 
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="select * from them where name='''stquot';" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="select * from them where name='''stquot';" opts=NULL
+ database lookup required for select * from them where name='''stquot';
+ PostgreSQL query: "select * from them where name='''stquot';" opts 'NULL'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ creating new cache entry
+ lookup yielded: name='stquot id=quote1 
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="servers=x:localhost; select name from them where id='ph10';" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="servers=x:localhost; select name from them where id='ph10';" opts=NULL
+ database lookup required for servers=x:localhost; select name from them where id='ph10';
+ PostgreSQL query: "servers=x:localhost; select name from them where id='ph10';" opts 'NULL'
+ lookup deferred: PostgreSQL server "x" not found in pgsql_servers
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="servers=localhost::1223:x; select name from them where id='ph10';" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="servers=localhost::1223:x; select name from them where id='ph10';" opts=NULL
+ database lookup required for servers=localhost::1223:x; select name from them where id='ph10';
+ PostgreSQL query: "servers=localhost::1223:x; select name from them where id='ph10';" opts 'NULL'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ creating new cache entry
+ lookup yielded: Philip Hazel
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="servers=localhost::1223/test/CALLER/:x; select name from them where id='ph10';" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="servers=localhost::1223/test/CALLER/:x; select name from them where id='ph10';" opts=NULL
+ database lookup required for servers=localhost::1223/test/CALLER/:x; select name from them where id='ph10';
+ PostgreSQL query: "servers=localhost::1223/test/CALLER/:x; select name from them where id='ph10';" opts 'NULL'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ creating new cache entry
+ lookup yielded: Philip Hazel
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="servers=(TESTSUITE/pgsql/.s.PGSQL.1223)/test/CALLER/:x; select name from them where id='ph10';" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="servers=(TESTSUITE/pgsql/.s.PGSQL.1223)/test/CALLER/:x; select name from them where id='ph10';" opts=NULL
+ database lookup required for servers=(TESTSUITE/pgsql/.s.PGSQL.1223)/test/CALLER/:x; select name from them where id='ph10';
+ PostgreSQL query: "servers=(TESTSUITE/pgsql/.s.PGSQL.1223)/test/CALLER/:x; select name from them where id='ph10';" opts 'NULL'
+ PGSQL new connection: socket=TESTSUITE/pgsql/.s.PGSQL.1223 database=test user=CALLER
+ creating new cache entry
+ lookup yielded: Philip Hazel
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="SELECT name FROM them WHERE id IN ('ph10', 'aaaa');" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="SELECT name FROM them WHERE id IN ('ph10', 'aaaa');" opts=NULL
+ database lookup required for SELECT name FROM them WHERE id IN ('ph10', 'aaaa');
+ PostgreSQL query: "SELECT name FROM them WHERE id IN ('ph10', 'aaaa');" opts 'NULL'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ creating new cache entry
+ lookup yielded: Philip Hazel
+ Aristotle
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="SELECT *    FROM them WHERE id IN ('ph10', 'aaaa');" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="SELECT *    FROM them WHERE id IN ('ph10', 'aaaa');" opts=NULL
+ database lookup required for SELECT *    FROM them WHERE id IN ('ph10', 'aaaa');
+ PostgreSQL query: "SELECT *    FROM them WHERE id IN ('ph10', 'aaaa');" opts 'NULL'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ creating new cache entry
+ lookup yielded: name="Philip Hazel" id=ph10 
+ name=Aristotle id=aaaa 
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="delete from them where id='aaaa'" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="delete from them where id='aaaa'" opts=NULL
+ database lookup required for delete from them where id='aaaa'
+ PostgreSQL query: "delete from them where id='aaaa'" opts 'NULL'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ PGSQL: command does not return any data but was successful. Rows affected: 1
+ lookup forced cache cleanup
+ lookup yielded: 1
 search_tidyup called
 close PGSQL connection: (TESTSUITE/pgsql/.s.PGSQL.1223)/test/CALLER
 close PGSQL connection: localhost:1223/test/CALLER
 search_tidyup called
 close PGSQL connection: (TESTSUITE/pgsql/.s.PGSQL.1223)/test/CALLER
 close PGSQL connection: localhost:1223/test/CALLER
->>>>>>>>>>>>>>>> Exim pid=pppp (main: expansion test) 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
@@ -232,28 +246,110 @@ log directory space = nnnnnK inodes = nnnnn check_space = 10240K inodes = 100
 SMTP>> 250 OK
 SMTP<< rcpt to:<c@d>
 using ACL "check_recipient"
 SMTP>> 250 OK
 SMTP<< rcpt to:<c@d>
 using ACL "check_recipient"
-processing "accept" (TESTSUITE/test-config 25)
+processing "warn" (TESTSUITE/test-config 27)
+ search_open: pgsql "NULL"
+ search_find: file="NULL"
+   key="select name from them where id = 'c'" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="select name from them where id = 'c'" opts=NULL
+ database lookup required for select name from them where id = 'c'
+ PostgreSQL query: "select name from them where id = 'c'" opts 'NULL'
+ PGSQL new connection: host=localhost port=1223 database=test user=CALLER
+ PGSQL: no data found
+ creating new cache entry
+ lookup failed
+check set acl_m0 = ok:   ${lookup pgsql                    {select name from them where id = '$local_part'}}
+                 = ok:   
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="select name from them where id = 'c'" partial=-1 affix=NULL starflags=0 opts="servers=SSPEC"
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="select name from them where id = 'c'" opts="servers=SSPEC"
+ cached data found but wrong opts;  database lookup required for select name from them where id = 'c'
+ PostgreSQL query: "select name from them where id = 'c'" opts 'servers=SSPEC'
+ lookup deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+warn: condition test deferred in ACL "check_recipient"
+LOG: MAIN
+  H=[10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+processing "warn" (TESTSUITE/test-config 38)
+check set acl_m0 = ok:   hostlist
+check hosts = net-pgsql;select * from them where id='$local_part'
+search_open: pgsql "NULL"
+  cached open
+search_find: file="NULL"
+  key="select * from them where id='c'" partial=-1 affix=NULL starflags=0 opts=NULL
+LRU list:
+internal_search_find: file="NULL"
+  type=pgsql key="select * from them where id='c'" opts=NULL
+database lookup required for select * from them where id='c'
+PostgreSQL query: "select * from them where id='c'" opts 'NULL'
+PGSQL using cached connection for localhost:1223/test/CALLER
+PGSQL: no data found
+creating new cache entry
+lookup failed
+host in "net-pgsql;select * from them where id='c'"? no (end of list)
+warn: condition test failed in ACL "check_recipient"
+processing "warn" (TESTSUITE/test-config 41)
+check set acl_m0 = FAIL: hostlist
+check hosts = <& net-pgsql;servers=SSPEC; select * from them where id='$local_part'
+search_open: pgsql "NULL"
+  cached open
+search_find: file="NULL"
+  key="servers=SSPEC; select * from them where id='c'" partial=-1 affix=NULL starflags=0 opts=NULL
+LRU list:
+internal_search_find: file="NULL"
+  type=pgsql key="servers=SSPEC; select * from them where id='c'" opts=NULL
+database lookup required for servers=SSPEC; select * from them where id='c'
+PostgreSQL query: "servers=SSPEC; select * from them where id='c'" opts 'NULL'
+lookup deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+host in "<& net-pgsql;servers=SSPEC; select * from them where id='c'"? list match deferred for net-pgsql;servers=SSPEC; select * from them where id='c'
+warn: condition test deferred in ACL "check_recipient"
+LOG: MAIN
+  H=[10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+processing "warn" (TESTSUITE/test-config 46)
+check set acl_m0 = FAIL: hostlist
+check hosts = <& net-pgsql,servers=SSPEC; select * from them where id='$local_part'
+search_open: pgsql "NULL"
+  cached open
+search_find: file="NULL"
+  key=" select * from them where id='c'" partial=-1 affix=NULL starflags=0 opts="servers=SSPEC"
+LRU list:
+internal_search_find: file="NULL"
+  type=pgsql key=" select * from them where id='c'" opts="servers=SSPEC"
+database lookup required for  select * from them where id='c'
+PostgreSQL query: " select * from them where id='c'" opts 'servers=SSPEC'
+lookup deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+host in "<& net-pgsql,servers=SSPEC; select * from them where id='c'"? list match deferred for net-pgsql,servers=SSPEC; select * from them where id='c'
+warn: condition test deferred in ACL "check_recipient"
+LOG: MAIN
+  H=[10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+processing "accept" (TESTSUITE/test-config 49)
 check domains = +local_domains
 d in "@"? no (end of list)
 d in "+local_domains"? no (end of list)
 accept: condition test failed in ACL "check_recipient"
 check domains = +local_domains
 d in "@"? no (end of list)
 d in "+local_domains"? no (end of list)
 accept: condition test failed in ACL "check_recipient"
-processing "accept" (TESTSUITE/test-config 26)
+processing "accept" (TESTSUITE/test-config 50)
 check hosts = +relay_hosts
 search_open: pgsql "NULL"
 check hosts = +relay_hosts
 search_open: pgsql "NULL"
+  cached open
 search_find: file="NULL"
 search_find: file="NULL"
-  key="select * from them where id='10.0.0.0'" partial=-1 affix=NULL starflags=0
+  key="select * from them where id='10.0.0.0'" partial=-1 affix=NULL starflags=0 opts=NULL
 LRU list:
 internal_search_find: file="NULL"
 LRU list:
 internal_search_find: file="NULL"
-  type=pgsql key="select * from them where id='10.0.0.0'"
+  type=pgsql key="select * from them where id='10.0.0.0'" opts=NULL
 database lookup required for select * from them where id='10.0.0.0'
 database lookup required for select * from them where id='10.0.0.0'
-PostgreSQL query: select * from them where id='10.0.0.0'
-PGSQL new connection: host=localhost port=1223 database=test user=CALLER
+PostgreSQL query: "select * from them where id='10.0.0.0'" opts 'NULL'
+PGSQL using cached connection for localhost:1223/test/CALLER
 PGSQL: no data found
 PGSQL: no data found
+creating new cache entry
 lookup failed
 host in "net-pgsql;select * from them where id='10.0.0.0'"? no (end of list)
 host in "+relay_hosts"? no (end of list)
 accept: condition test failed in ACL "check_recipient"
 lookup failed
 host in "net-pgsql;select * from them where id='10.0.0.0'"? no (end of list)
 host in "+relay_hosts"? no (end of list)
 accept: condition test failed in ACL "check_recipient"
-processing "deny" (TESTSUITE/test-config 27)
+processing "deny" (TESTSUITE/test-config 51)
   message: relay not permitted
 deny: condition test succeeded in ACL "check_recipient"
 end of ACL "check_recipient": DENY
   message: relay not permitted
 deny: condition test succeeded in ACL "check_recipient"
 end of ACL "check_recipient": DENY
@@ -262,26 +358,99 @@ LOG: MAIN REJECT
   H=[10.0.0.0] F=<a@b> rejected RCPT <c@d>: relay not permitted
 SMTP<< rcpt to:<c@d>
 using ACL "check_recipient"
   H=[10.0.0.0] F=<a@b> rejected RCPT <c@d>: relay not permitted
 SMTP<< rcpt to:<c@d>
 using ACL "check_recipient"
-processing "accept" (TESTSUITE/test-config 25)
+processing "warn" (TESTSUITE/test-config 27)
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="select name from them where id = 'c'" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="select name from them where id = 'c'" opts=NULL
+ cached data used for lookup of select name from them where id = 'c'
+ lookup failed
+check set acl_m0 = ok:   ${lookup pgsql                    {select name from them where id = '$local_part'}}
+                 = ok:   
+ search_open: pgsql "NULL"
+   cached open
+ search_find: file="NULL"
+   key="select name from them where id = 'c'" partial=-1 affix=NULL starflags=0 opts="servers=SSPEC"
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="select name from them where id = 'c'" opts="servers=SSPEC"
+ cached data found but wrong opts;  database lookup required for select name from them where id = 'c'
+ PostgreSQL query: "select name from them where id = 'c'" opts 'servers=SSPEC'
+ lookup deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+warn: condition test deferred in ACL "check_recipient"
+LOG: MAIN
+  H=[10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+processing "warn" (TESTSUITE/test-config 38)
+check set acl_m0 = ok:   hostlist
+check hosts = net-pgsql;select * from them where id='$local_part'
+search_open: pgsql "NULL"
+  cached open
+search_find: file="NULL"
+  key="select * from them where id='c'" partial=-1 affix=NULL starflags=0 opts=NULL
+LRU list:
+internal_search_find: file="NULL"
+  type=pgsql key="select * from them where id='c'" opts=NULL
+cached data used for lookup of select * from them where id='c'
+lookup failed
+host in "net-pgsql;select * from them where id='c'"? no (end of list)
+warn: condition test failed in ACL "check_recipient"
+processing "warn" (TESTSUITE/test-config 41)
+check set acl_m0 = FAIL: hostlist
+check hosts = <& net-pgsql;servers=SSPEC; select * from them where id='$local_part'
+search_open: pgsql "NULL"
+  cached open
+search_find: file="NULL"
+  key="servers=SSPEC; select * from them where id='c'" partial=-1 affix=NULL starflags=0 opts=NULL
+LRU list:
+internal_search_find: file="NULL"
+  type=pgsql key="servers=SSPEC; select * from them where id='c'" opts=NULL
+database lookup required for servers=SSPEC; select * from them where id='c'
+PostgreSQL query: "servers=SSPEC; select * from them where id='c'" opts 'NULL'
+lookup deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+host in "<& net-pgsql;servers=SSPEC; select * from them where id='c'"? list match deferred for net-pgsql;servers=SSPEC; select * from them where id='c'
+warn: condition test deferred in ACL "check_recipient"
+LOG: MAIN
+  H=[10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+processing "warn" (TESTSUITE/test-config 46)
+check set acl_m0 = FAIL: hostlist
+check hosts = <& net-pgsql,servers=SSPEC; select * from them where id='$local_part'
+search_open: pgsql "NULL"
+  cached open
+search_find: file="NULL"
+  key=" select * from them where id='c'" partial=-1 affix=NULL starflags=0 opts="servers=SSPEC"
+LRU list:
+internal_search_find: file="NULL"
+  type=pgsql key=" select * from them where id='c'" opts="servers=SSPEC"
+database lookup required for  select * from them where id='c'
+PostgreSQL query: " select * from them where id='c'" opts 'servers=SSPEC'
+lookup deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+host in "<& net-pgsql,servers=SSPEC; select * from them where id='c'"? list match deferred for net-pgsql,servers=SSPEC; select * from them where id='c'
+warn: condition test deferred in ACL "check_recipient"
+LOG: MAIN
+  H=[10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+processing "accept" (TESTSUITE/test-config 49)
 check domains = +local_domains
 d in "@"? no (end of list)
 d in "+local_domains"? no (end of list)
 accept: condition test failed in ACL "check_recipient"
 check domains = +local_domains
 d in "@"? no (end of list)
 d in "+local_domains"? no (end of list)
 accept: condition test failed in ACL "check_recipient"
-processing "accept" (TESTSUITE/test-config 26)
+processing "accept" (TESTSUITE/test-config 50)
 check hosts = +relay_hosts
 search_open: pgsql "NULL"
   cached open
 search_find: file="NULL"
 check hosts = +relay_hosts
 search_open: pgsql "NULL"
   cached open
 search_find: file="NULL"
-  key="select * from them where id='10.0.0.0'" partial=-1 affix=NULL starflags=0
+  key="select * from them where id='10.0.0.0'" partial=-1 affix=NULL starflags=0 opts=NULL
 LRU list:
 internal_search_find: file="NULL"
 LRU list:
 internal_search_find: file="NULL"
-  type=pgsql key="select * from them where id='10.0.0.0'"
+  type=pgsql key="select * from them where id='10.0.0.0'" opts=NULL
 cached data used for lookup of select * from them where id='10.0.0.0'
 lookup failed
 host in "net-pgsql;select * from them where id='10.0.0.0'"? no (end of list)
 host in "+relay_hosts"? no (end of list)
 accept: condition test failed in ACL "check_recipient"
 cached data used for lookup of select * from them where id='10.0.0.0'
 lookup failed
 host in "net-pgsql;select * from them where id='10.0.0.0'"? no (end of list)
 host in "+relay_hosts"? no (end of list)
 accept: condition test failed in ACL "check_recipient"
-processing "deny" (TESTSUITE/test-config 27)
+processing "deny" (TESTSUITE/test-config 51)
   message: relay not permitted
 deny: condition test succeeded in ACL "check_recipient"
 end of ACL "check_recipient": DENY
   message: relay not permitted
 deny: condition test succeeded in ACL "check_recipient"
 end of ACL "check_recipient": DENY
@@ -294,7 +463,7 @@ LOG: smtp_connection MAIN
   SMTP connection from [10.0.0.0] closed by QUIT
 search_tidyup called
 close PGSQL connection: localhost:1223/test/CALLER
   SMTP connection from [10.0.0.0] closed by QUIT
 search_tidyup called
 close PGSQL connection: localhost:1223/test/CALLER
->>>>>>>>>>>>>>>> Exim pid=pppp (main) 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
@@ -331,23 +500,21 @@ P Received: from CALLER by myhost.test.ex with local (Exim x.yz)
        id 10HmaX-0005vi-00
        for CALLER@myhost.test.ex; Tue, 2 Mar 1999 09:44:33 +0000
 Writing spool header file: TESTSUITE/spool//input//hdr.10HmaX-0005vi-00
        id 10HmaX-0005vi-00
        for CALLER@myhost.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 :0
-DSN: **** SPOOL_OUT - address: |CALLER@myhost.test.ex| errorsto: |NULL| orcpt: |NULL| dsn_flags: 0
+DSN: **** SPOOL_OUT - address: <CALLER@myhost.test.ex> errorsto: <NULL> orcpt: <NULL> dsn_flags: 0x0
 Renaming spool header file: TESTSUITE/spool//input//10HmaX-0005vi-00-H
 Size of headers = sss
 LOG: MAIN
   <= CALLER@myhost.test.ex U=CALLER P=local S=sss
 created log directory TESTSUITE/spool/log
 search_tidyup called
 Renaming spool header file: TESTSUITE/spool//input//10HmaX-0005vi-00-H
 Size of headers = sss
 LOG: MAIN
   <= CALLER@myhost.test.ex U=CALLER P=local S=sss
 created log directory TESTSUITE/spool/log
 search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmaX-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -MCd local-accept-delivery -odi -Mc 10HmaX-0005vi-00
 Exim version x.yz ....
 changed uid/gid: forcing real = effective
   uid=uuuu gid=EXIM_GID pid=pppp
 configuration file is TESTSUITE/test-config
 trusted user
 admin user
 Exim version x.yz ....
 changed uid/gid: forcing real = effective
   uid=uuuu gid=EXIM_GID pid=pppp
 configuration file is TESTSUITE/test-config
 trusted user
 admin user
+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
@@ -357,12 +524,12 @@ reading spool file 10HmaX-0005vi-00-H
 user=CALLER uid=CALLER_UID gid=CALLER_GID sender=CALLER@myhost.test.ex
 sender_local=1 ident=CALLER
 Non-recipients:
 user=CALLER uid=CALLER_UID gid=CALLER_GID sender=CALLER@myhost.test.ex
 sender_local=1 ident=CALLER
 Non-recipients:
-Empty Tree
+ Empty Tree
 ---- End of tree ----
 recipients_count=1
 **** SPOOL_IN - No additional fields
 body_linecount=1 message_linecount=7
 ---- End of tree ----
 recipients_count=1
 **** SPOOL_IN - No additional fields
 body_linecount=1 message_linecount=7
-DSN: set orcpt:   flags: 0
+DSN: set orcpt:   flags: 0x0
 Delivery address list:
   CALLER@myhost.test.ex 
  locking TESTSUITE/spool/db/retry.lockfile
 Delivery address list:
   CALLER@myhost.test.ex 
  locking TESTSUITE/spool/db/retry.lockfile
@@ -383,16 +550,17 @@ routing CALLER@myhost.test.ex
 --------> r1 router <--------
 local_part=CALLER domain=myhost.test.ex
 processing address_data
 --------> r1 router <--------
 local_part=CALLER domain=myhost.test.ex
 processing address_data
-search_open: pgsql "NULL"
-search_find: file="NULL"
-  key="select name from them where id='ph10'" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="select name from them where id='ph10'"
-database lookup required for select name from them where id='ph10'
-PostgreSQL query: select name from them where id='ph10'
-PGSQL new connection: host=localhost port=1223 database=test user=CALLER
-lookup yielded: Philip Hazel
+ search_open: pgsql "NULL"
+ search_find: file="NULL"
+   key="select name from them where id='ph10'" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="select name from them where id='ph10'" opts=NULL
+ database lookup required for select name from them where id='ph10'
+ PostgreSQL query: "select name from them where id='ph10'" opts 'NULL'
+ PGSQL new connection: host=localhost port=1223 database=test user=CALLER
+ creating new cache entry
+ lookup yielded: Philip Hazel
 calling r1 router
 r1 router called for CALLER@myhost.test.ex
   domain = myhost.test.ex
 calling r1 router
 r1 router called for CALLER@myhost.test.ex
   domain = myhost.test.ex
@@ -400,7 +568,7 @@ set transport t1
 queued for t1 transport: local_part = CALLER
 domain = myhost.test.ex
   errors_to=NULL
 queued for t1 transport: local_part = CALLER
 domain = myhost.test.ex
   errors_to=NULL
-  domain_data=NULL localpart_data=NULL
+  domain_data=NULL local_part_data=NULL
 routed by r1 router
   envelope to: CALLER@myhost.test.ex
   transport: t1
 routed by r1 router
   envelope to: CALLER@myhost.test.ex
   transport: t1
@@ -427,16 +595,17 @@ changed uid/gid: local delivery to CALLER <CALLER@myhost.test.ex> transport=t1
   home=NULL current=/
 set_process_info: pppp delivering 10HmaX-0005vi-00 to CALLER using t1
 appendfile transport entered
   home=NULL current=/
 set_process_info: pppp delivering 10HmaX-0005vi-00 to CALLER using t1
 appendfile transport entered
-search_open: pgsql "NULL"
-search_find: file="NULL"
-  key="select id from them where id='ph10'" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="select id from them where id='ph10'"
-database lookup required for select id from them where id='ph10'
-PostgreSQL query: select id from them where id='ph10'
-PGSQL new connection: host=localhost port=1223 database=test user=CALLER
-lookup yielded: ph10
+ search_open: pgsql "NULL"
+ search_find: file="NULL"
+   key="select id from them where id='ph10'" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="select id from them where id='ph10'" opts=NULL
+ database lookup required for select id from them where id='ph10'
+ PostgreSQL query: "select id from them where id='ph10'" opts 'NULL'
+ PGSQL new connection: host=localhost port=1223 database=test user=CALLER
+ creating new cache entry
+ lookup yielded: ph10
 appendfile: mode=600 notify_comsat=0 quota=0 warning=0
   file=TESTSUITE/test-mail/ph10 format=unix
   message_prefix=From ${if def:return_path{$return_path}{MAILER-DAEMON}} ${tod_bsdinbox}\n
 appendfile: mode=600 notify_comsat=0 quota=0 warning=0
   file=TESTSUITE/test-mail/ph10 format=unix
   message_prefix=From ${if def:return_path{$return_path}{MAILER-DAEMON}} ${tod_bsdinbox}\n
@@ -474,7 +643,7 @@ end of retry processing
 DSN: processing router : r1
 DSN: processing successful delivery address: CALLER@myhost.test.ex
 DSN: Sender_address: CALLER@myhost.test.ex
 DSN: processing router : r1
 DSN: processing successful delivery address: CALLER@myhost.test.ex
 DSN: Sender_address: CALLER@myhost.test.ex
-DSN: orcpt: NULL  flags: 0
+DSN: orcpt: NULL  flags: 0x0
 DSN: envid: NULL  ret: 0
 DSN: Final recipient: CALLER@myhost.test.ex
 DSN: Remote SMTP server supports DSN: 0
 DSN: envid: NULL  ret: 0
 DSN: Final recipient: CALLER@myhost.test.ex
 DSN: Remote SMTP server supports DSN: 0
@@ -484,24 +653,26 @@ LOG: MAIN
 end delivery of 10HmaX-0005vi-00
 search_tidyup called
 search_tidyup called
 end delivery of 10HmaX-0005vi-00
 search_tidyup called
 search_tidyup called
->>>>>>>>>>>>>>>> Exim pid=pppp (main) terminating with rc=0 >>>>>>>>>>>>>>>>
+>>>>>>>>>>>>>>>> Exim pid=pppp (local-accept-delivery) terminating with rc=0 >>>>>>>>>>>>>>>>
 search_tidyup called
 search_tidyup called
->>>>>>>>>>>>>>>> Exim pid=pppp (main) terminating with rc=0 >>>>>>>>>>>>>>>>
+>>>>>>>>>>>>>>>> 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
-search_open: pgsql "NULL"
-search_find: file="NULL"
-  key="select name from them where id='ph10';" partial=-1 affix=NULL starflags=0
-LRU list:
-internal_search_find: file="NULL"
-  type=pgsql key="select name from them where id='ph10';"
-database lookup required for select name from them where id='ph10';
-PostgreSQL query: select name from them where id='ph10';
-PGSQL new connection: socket=TESTSUITE/pgsql/.s.PGSQL.1223 database=test user=CALLER
-lookup yielded: Philip Hazel
+dropping to exim gid; retaining priv uid
+ search_open: pgsql "NULL"
+ search_find: file="NULL"
+   key="select name from them where id='ph10';" partial=-1 affix=NULL starflags=0 opts=NULL
+ LRU list:
+ internal_search_find: file="NULL"
+   type=pgsql key="select name from them where id='ph10';" opts=NULL
+ database lookup required for select name from them where id='ph10';
+ PostgreSQL query: "select name from them where id='ph10';" opts 'NULL'
+ PGSQL new connection: socket=TESTSUITE/pgsql/.s.PGSQL.1223 database=test user=CALLER
+ creating new cache entry
+ lookup yielded: Philip Hazel
 search_tidyup called
 close PGSQL connection: (TESTSUITE/pgsql/.s.PGSQL.1223)/test/CALLER
 search_tidyup called
 close PGSQL connection: (TESTSUITE/pgsql/.s.PGSQL.1223)/test/CALLER
->>>>>>>>>>>>>>>> Exim pid=pppp (main: expansion test) terminating with rc=0 >>>>>>>>>>>>>>>>
+>>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 
 ******** SERVER ********
 
 ******** SERVER ********