summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Harris <jgh146exb@wizmail.org>2022-01-09 20:53:57 +0000
committerJeremy Harris <jgh146exb@wizmail.org>2022-01-09 20:53:57 +0000
commit6dbf85ed0c969432afa9e821a81122193544bfdc (patch)
tree83841f7e626379e9d096bb2b76d10c55d0baaca8
parent22452ad59f031b741bfcfe26519ba11a7508ac82 (diff)
Testsuite: fix pgsql testcase
-rw-r--r--test/confs/26208
-rw-r--r--test/stderr/2620146
2 files changed, 109 insertions, 45 deletions
diff --git a/test/confs/2620 b/test/confs/2620
index e63fca286..85d25035f 100644
--- a/test/confs/2620
+++ b/test/confs/2620
@@ -28,23 +28,23 @@ check_recipient:
# taint only in lookup string
set acl_m0 = ok: ${lookup pgsql {select name from them where id = '$local_part'}}
# option on lookup type unaffected
- set acl_m0 = ok: ${lookup pgsql,servers=SSPEC {select name from them where id = '$local_part'}}
+ set acl_m0 = ok: ${lookup pgsql,servers=SERVERS {select name from them where id = '$local_part'}}
# partial server-spec, indexing main-option, works
set acl_m0 = ok: ${lookup pgsql,servers=PARTIAL {select name from them where id = '$local_part'}}
# oldstyle server spec, prepended to lookup string, fails with taint
- set acl_m0 = FAIL: ${lookup pgsql {servers=SSPEC; select name from them where id = '$local_part'}}
+ set acl_m0 = FAIL: ${lookup pgsql {servers=SERVERS; select name from them where id = '$local_part'}}
# In list-stle lookup, tainted lookup string is ok if server spec comes from main-option
warn set acl_m0 = ok: hostlist
hosts = net-pgsql;select * from them where id='$local_part'
# ... but setting a per-query servers spec fails due to the taint
warn set acl_m0 = FAIL: hostlist
- hosts = <& net-pgsql;servers=SSPEC; select * from them where id='$local_part'
+ hosts = <& net-pgsql;servers=SERVERS; select * from them where id='$local_part'
# The newer server-list-as-option-to-lookup-type is not a solution to tainted data in the lookup, because
# string-expansion is done before list-expansion so the taint contaminates the entire list.
warn set acl_m0 = FAIL: hostlist
- hosts = <& net-pgsql,servers=SSPEC; select * from them where id='$local_part'
+ hosts = <& net-pgsql,servers=SERVERS; select * from them where id='$local_part'
accept domains = +local_domains
accept hosts = +relay_hosts
diff --git a/test/stderr/2620 b/test/stderr/2620
index 620aa86b1..992a60904 100644
--- a/test/stderr/2620
+++ b/test/stderr/2620
@@ -270,16 +270,46 @@ check set acl_m0 = ok: ${lookup pgsql {select name from the
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"
+ key="select name from them where id = 'c'" partial=-1 affix=NULL starflags=0 opts="servers=localhost::1223/test/CALLER/"
LRU list:
internal_search_find: file="NULL"
- type=pgsql key="select name from them where id = 'c'" opts="servers=SSPEC"
+ type=pgsql key="select name from them where id = 'c'" opts="servers=localhost::1223/test/CALLER/"
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
+ PostgreSQL query: "select name from them where id = 'c'" opts 'servers=localhost::1223/test/CALLER/'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ PGSQL: no data found
+ replacing old cache entry
+ lookup failed
+check set acl_m0 = ok: ${lookup pgsql,servers=localhost::1223/test/CALLER/ {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=localhost::1223"
+ LRU list:
+ internal_search_find: file="NULL"
+ type=pgsql key="select name from them where id = 'c'" opts="servers=localhost::1223"
+ 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=localhost::1223'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ PGSQL: no data found
+ replacing old cache entry
+ lookup failed
+check set acl_m0 = ok: ${lookup pgsql,servers=localhost::1223 {select name from them where id = '$local_part'}}
+ = ok:
+ search_open: pgsql "NULL"
+ cached open
+ search_find: file="NULL"
+ key="servers=localhost::1223/test/CALLER/; 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="servers=localhost::1223/test/CALLER/; select name from them where id = 'c'" opts=NULL
+ database lookup required for servers=localhost::1223/test/CALLER/; select name from them where id = 'c'
+ PostgreSQL query: "servers=localhost::1223/test/CALLER/; select name from them where id = 'c'" opts 'NULL'
+ lookup deferred: Tainted PostgreSQL server 'localhost:1223/test/CALLER/'
warn: condition test deferred in ACL "check_recipient"
LOG: MAIN
- H=(test) [10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+ H=(test) [10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: Tainted PostgreSQL server 'localhost:1223/test/CALLER/'
processing "warn" (TESTSUITE/test-config 38)
check set acl_m0 = ok: hostlist
check hosts = net-pgsql;select * from them where id='$local_part'
@@ -300,38 +330,38 @@ 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'
+check hosts = <& net-pgsql;servers=localhost::1223/test/CALLER/; 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
+ key="servers=localhost::1223/test/CALLER/; 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'
+ type=pgsql key="servers=localhost::1223/test/CALLER/; select * from them where id='c'" opts=NULL
+database lookup required for servers=localhost::1223/test/CALLER/; select * from them where id='c'
+PostgreSQL query: "servers=localhost::1223/test/CALLER/; select * from them where id='c'" opts 'NULL'
+lookup deferred: Tainted PostgreSQL server 'localhost:1223/test/CALLER/'
+host in "<& net-pgsql;servers=localhost::1223/test/CALLER/; select * from them where id='c'"? list match deferred for net-pgsql;servers=localhost::1223/test/CALLER/; select * from them where id='c'
warn: condition test deferred in ACL "check_recipient"
LOG: MAIN
- H=(test) [10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+ H=(test) [10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: Tainted PostgreSQL server 'localhost:1223/test/CALLER/'
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'
+check hosts = <& net-pgsql,servers=localhost::1223/test/CALLER/; 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"
+ key=" select * from them where id='c'" partial=-1 affix=NULL starflags=0 opts="servers=localhost::1223/test/CALLER/"
LRU list:
internal_search_find: file="NULL"
- type=pgsql key=" select * from them where id='c'" opts="servers=SSPEC"
+ type=pgsql key=" select * from them where id='c'" opts="servers=localhost::1223/test/CALLER/"
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'
+PostgreSQL query: " select * from them where id='c'" opts 'servers=localhost::1223/test/CALLER/'
+lookup deferred: Tainted PostgreSQL server 'localhost:1223/test/CALLER/'
+host in "<& net-pgsql,servers=localhost::1223/test/CALLER/; select * from them where id='c'"? list match deferred for net-pgsql,servers=localhost::1223/test/CALLER/; select * from them where id='c'
warn: condition test deferred in ACL "check_recipient"
LOG: MAIN
- H=(test) [10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+ H=(test) [10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: Tainted PostgreSQL server 'localhost:1223/test/CALLER/'
processing "accept" (TESTSUITE/test-config 49)
check domains = +local_domains
d in "@"? no (end of list)
@@ -372,23 +402,57 @@ processing "warn" (TESTSUITE/test-config 27)
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'
+ 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 'NULL'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ PGSQL: no data found
+ replacing old 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"
+ key="select name from them where id = 'c'" partial=-1 affix=NULL starflags=0 opts="servers=localhost::1223/test/CALLER/"
LRU list:
internal_search_find: file="NULL"
- type=pgsql key="select name from them where id = 'c'" opts="servers=SSPEC"
+ type=pgsql key="select name from them where id = 'c'" opts="servers=localhost::1223/test/CALLER/"
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
+ PostgreSQL query: "select name from them where id = 'c'" opts 'servers=localhost::1223/test/CALLER/'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ PGSQL: no data found
+ replacing old cache entry
+ lookup failed
+check set acl_m0 = ok: ${lookup pgsql,servers=localhost::1223/test/CALLER/ {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=localhost::1223"
+ LRU list:
+ internal_search_find: file="NULL"
+ type=pgsql key="select name from them where id = 'c'" opts="servers=localhost::1223"
+ 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=localhost::1223'
+ PGSQL using cached connection for localhost:1223/test/CALLER
+ PGSQL: no data found
+ replacing old cache entry
+ lookup failed
+check set acl_m0 = ok: ${lookup pgsql,servers=localhost::1223 {select name from them where id = '$local_part'}}
+ = ok:
+ search_open: pgsql "NULL"
+ cached open
+ search_find: file="NULL"
+ key="servers=localhost::1223/test/CALLER/; 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="servers=localhost::1223/test/CALLER/; select name from them where id = 'c'" opts=NULL
+ database lookup required for servers=localhost::1223/test/CALLER/; select name from them where id = 'c'
+ PostgreSQL query: "servers=localhost::1223/test/CALLER/; select name from them where id = 'c'" opts 'NULL'
+ lookup deferred: Tainted PostgreSQL server 'localhost:1223/test/CALLER/'
warn: condition test deferred in ACL "check_recipient"
LOG: MAIN
- H=(test) [10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+ H=(test) [10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: Tainted PostgreSQL server 'localhost:1223/test/CALLER/'
processing "warn" (TESTSUITE/test-config 38)
check set acl_m0 = ok: hostlist
check hosts = net-pgsql;select * from them where id='$local_part'
@@ -405,38 +469,38 @@ 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'
+check hosts = <& net-pgsql;servers=localhost::1223/test/CALLER/; 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
+ key="servers=localhost::1223/test/CALLER/; 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'
+ type=pgsql key="servers=localhost::1223/test/CALLER/; select * from them where id='c'" opts=NULL
+database lookup required for servers=localhost::1223/test/CALLER/; select * from them where id='c'
+PostgreSQL query: "servers=localhost::1223/test/CALLER/; select * from them where id='c'" opts 'NULL'
+lookup deferred: Tainted PostgreSQL server 'localhost:1223/test/CALLER/'
+host in "<& net-pgsql;servers=localhost::1223/test/CALLER/; select * from them where id='c'"? list match deferred for net-pgsql;servers=localhost::1223/test/CALLER/; select * from them where id='c'
warn: condition test deferred in ACL "check_recipient"
LOG: MAIN
- H=(test) [10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+ H=(test) [10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: Tainted PostgreSQL server 'localhost:1223/test/CALLER/'
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'
+check hosts = <& net-pgsql,servers=localhost::1223/test/CALLER/; 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"
+ key=" select * from them where id='c'" partial=-1 affix=NULL starflags=0 opts="servers=localhost::1223/test/CALLER/"
LRU list:
internal_search_find: file="NULL"
- type=pgsql key=" select * from them where id='c'" opts="servers=SSPEC"
+ type=pgsql key=" select * from them where id='c'" opts="servers=localhost::1223/test/CALLER/"
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'
+PostgreSQL query: " select * from them where id='c'" opts 'servers=localhost::1223/test/CALLER/'
+lookup deferred: Tainted PostgreSQL server 'localhost:1223/test/CALLER/'
+host in "<& net-pgsql,servers=localhost::1223/test/CALLER/; select * from them where id='c'"? list match deferred for net-pgsql,servers=localhost::1223/test/CALLER/; select * from them where id='c'
warn: condition test deferred in ACL "check_recipient"
LOG: MAIN
- H=(test) [10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: PostgreSQL server "SSPEC" not found in pgsql_servers
+ H=(test) [10.0.0.0] Warning: ACL "warn" statement skipped: condition test deferred: Tainted PostgreSQL server 'localhost:1223/test/CALLER/'
processing "accept" (TESTSUITE/test-config 49)
check domains = +local_domains
d in "@"? no (end of list)