Hintsdb sqlite: use transaction rather than file lock
[exim.git] / test / stderr / 0398
index 067b3e467f78e17dd95aefceeb55a54e7c60345e..745b5bb120ae1621880f57414ace8a2609e872ec 100644 (file)
@@ -1,10 +1,11 @@
 Exim version x.yz ....
 Exim version x.yz ....
+Hints DB:
 changed uid/gid: forcing real = effective
 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
 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=p1234
 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
@@ -15,6 +16,8 @@ LOG: smtp_connection MAIN
   SMTP connection from CALLER
 SMTP>> 220 mail.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
 smtp_setup_msg entered
   SMTP connection from CALLER
 SMTP>> 220 mail.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
 smtp_setup_msg entered
+SMTP<< helo test
+SMTP>> 250 mail.test.ex Hello CALLER at test
 SMTP<< mail from:<qq@remote>
 spool directory space = nnnnnK inodes = nnnnn check_space = 10240K inodes = 100 msg_size = 0
 log directory space = nnnnnK inodes = nnnnn check_space = 10240K inodes = 100
 SMTP<< mail from:<qq@remote>
 spool directory space = nnnnnK inodes = nnnnn check_space = 10240K inodes = 100 msg_size = 0
 log directory space = nnnnnK inodes = nnnnn check_space = 10240K inodes = 100
@@ -23,9 +26,13 @@ SMTP<< rcpt to:<abc@local>
 using ACL "rcpt"
 processing "deny" (TESTSUITE/test-config 19)
 check senders = qq@remote
 using ACL "rcpt"
 processing "deny" (TESTSUITE/test-config 19)
 check senders = qq@remote
-address match test: subject=qq@remote pattern=qq@remote
-remote in "remote"? yes (matched "remote")
-qq@remote in "qq@remote"? yes (matched "qq@remote")
+qq@remote in "qq@remote"?
+ list element: qq@remote
+ address match test: subject=qq@remote pattern=qq@remote
+ remote in "remote"?
+  list element: remote
+  remote in "remote"? yes (matched "remote")
+ qq@remote in "qq@remote"? yes (matched "qq@remote")
 check !verify = sender
 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 Verifying qq@remote
 check !verify = sender
 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 Verifying qq@remote
@@ -36,23 +43,28 @@ routing qq@remote
 --------> r1 router <--------
 local_part=qq domain=remote
 checking domains
 --------> r1 router <--------
 local_part=qq domain=remote
 checking domains
-remote in "local"? no (end of list)
+remote in domains?
+ list element: local
+remote in domains? no (end of list)
 r1 router skipped: domains mismatch
 --------> r2 router <--------
 local_part=qq domain=remote
 checking domains
 r1 router skipped: domains mismatch
 --------> r2 router <--------
 local_part=qq domain=remote
 checking domains
-remote in "remote"? yes (matched "remote")
+remote in domains?
+ list element: remote
+ remote in domains? yes (matched "remote")
 calling r2 router
 r2 router called for qq@remote
   domain = remote
 route_item = * 127.0.0.1
 calling r2 router
 r2 router called for qq@remote
   domain = remote
 route_item = * 127.0.0.1
-remote in "*"? yes (matched "*")
+remote in "*"?
+ list element: *
+ remote in "*"? yes (matched "*")
 original list of hosts = '127.0.0.1' options = ''
 expanded list of hosts = '127.0.0.1' options = ''
 set transport t2
 finding IP address for 127.0.0.1
 calling host_find_byname
 original list of hosts = '127.0.0.1' options = ''
 expanded list of hosts = '127.0.0.1' options = ''
 set transport t2
 finding IP address for 127.0.0.1
 calling host_find_byname
-host_fake_gethostbyname returned 1 (HOST_NOT_FOUND)
 using host_fake_gethostbyname for 127.0.0.1 (IPv4)
 local host found for non-MX address
 fully qualified name = 127.0.0.1
 using host_fake_gethostbyname for 127.0.0.1 (IPv4)
 local host found for non-MX address
 fully qualified name = 127.0.0.1
@@ -63,7 +75,7 @@ remote host address is the local host: remote: configured to try delivery anyway
 queued for t2 transport: local_part = qq
 domain = remote
   errors_to=NULL
 queued for t2 transport: local_part = qq
 domain = remote
   errors_to=NULL
-  domain_data=remote localpart_data=NULL
+  domain_data=remote local_part_data=NULL
 routed by r2 router
   envelope to: qq@remote
   transport: t2
 routed by r2 router
   envelope to: qq@remote
   transport: t2
@@ -73,9 +85,13 @@ sender qq@remote verified ok
 deny: condition test failed in ACL "rcpt"
 processing "warn" (TESTSUITE/test-config 21)
 check senders = qq@remote
 deny: condition test failed in ACL "rcpt"
 processing "warn" (TESTSUITE/test-config 21)
 check senders = qq@remote
-address match test: subject=qq@remote pattern=qq@remote
-remote in "remote"? yes (matched "remote")
-qq@remote in "qq@remote"? yes (matched "qq@remote")
+qq@remote in "qq@remote"?
+ list element: qq@remote
+ address match test: subject=qq@remote pattern=qq@remote
+ remote in "remote"?
+  list element: remote
+  remote in "remote"? yes (matched "remote")
+ qq@remote in "qq@remote"? yes (matched "qq@remote")
 check !verify = sender/callout
 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 Verifying qq@remote
 check !verify = sender/callout
 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 Verifying qq@remote
@@ -86,22 +102,27 @@ routing qq@remote
 --------> r1 router <--------
 local_part=qq domain=remote
 checking domains
 --------> r1 router <--------
 local_part=qq domain=remote
 checking domains
-remote in "local"? no (end of list)
+remote in domains?
+ list element: local
+remote in domains? no (end of list)
 r1 router skipped: domains mismatch
 --------> r2 router <--------
 local_part=qq domain=remote
 checking domains
 r1 router skipped: domains mismatch
 --------> r2 router <--------
 local_part=qq domain=remote
 checking domains
-remote in "remote"? yes (matched "remote")
+remote in domains?
+ list element: remote
+ remote in domains? yes (matched "remote")
 calling r2 router
 r2 router called for qq@remote
   domain = remote
 route_item = * 127.0.0.1
 calling r2 router
 r2 router called for qq@remote
   domain = remote
 route_item = * 127.0.0.1
-remote in "*"? yes (matched "*")
+remote in "*"?
+ list element: *
+ remote in "*"? yes (matched "*")
 original list of hosts = '127.0.0.1' options = ''
 expanded list of hosts = '127.0.0.1' options = ''
 finding IP address for 127.0.0.1
 calling host_find_byname
 original list of hosts = '127.0.0.1' options = ''
 expanded list of hosts = '127.0.0.1' options = ''
 finding IP address for 127.0.0.1
 calling host_find_byname
-host_fake_gethostbyname returned 1 (HOST_NOT_FOUND)
 using host_fake_gethostbyname for 127.0.0.1 (IPv4)
 local host found for non-MX address
 fully qualified name = 127.0.0.1
 using host_fake_gethostbyname for 127.0.0.1 (IPv4)
 local host found for non-MX address
 fully qualified name = 127.0.0.1
@@ -112,25 +133,28 @@ remote host address is the local host: remote: configured to try delivery anyway
 queued for t2 transport: local_part = qq
 domain = remote
   errors_to=NULL
 queued for t2 transport: local_part = qq
 domain = remote
   errors_to=NULL
-  domain_data=remote localpart_data=NULL
+  domain_data=remote local_part_data=NULL
 routed by r2 router
   envelope to: qq@remote
   transport: t2
   host 127.0.0.1 [127.0.0.1]
 Attempting full verification using callout
 routed by r2 router
   envelope to: qq@remote
   transport: t2
   host 127.0.0.1 [127.0.0.1]
 Attempting full verification using callout
- locking TESTSUITE/spool/db/callout.lockfile
- locked  TESTSUITE/spool/db/callout.lockfile
  EXIM_DBOPEN: file <TESTSUITE/spool/db/callout> dir <TESTSUITE/spool/db> flags=O_RDWR
  returned from EXIM_DBOPEN: 0xAAAAAAAA
  opened hints database TESTSUITE/spool/db/callout: flags=O_RDWR
  dbfn_read: key=remote
  EXIM_DBOPEN: file <TESTSUITE/spool/db/callout> dir <TESTSUITE/spool/db> flags=O_RDWR
  returned from EXIM_DBOPEN: 0xAAAAAAAA
  opened hints database TESTSUITE/spool/db/callout: flags=O_RDWR
  dbfn_read: key=remote
-callout cache: found domain record for remote
+ dbfn_read: size 40 return
+ callout cache: found domain record for remote
  dbfn_read: key=qq@remote
  dbfn_read: key=qq@remote
-callout cache: no address record found for qq@remote
+ dbfn_read: null return
+ callout cache: no address record found for qq@remote
  EXIM_DBCLOSE(0xAAAAAAAA)
  EXIM_DBCLOSE(0xAAAAAAAA)
- closed hints database and lockfile
-interface=NULL port=1224
-Connecting to 127.0.0.1 [127.0.0.1]:1224 ...  connected
+ closed hints database
+interface=NULL port=PORT_S
+Connecting to 127.0.0.1 [127.0.0.1]:PORT_S ...
+ 127.0.0.1 in hosts_try_fastopen?
+  list element: 
+connected
   SMTP<< 220 Server ready
 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
   SMTP>> EHLO mail.test.ex
   SMTP<< 220 Server ready
 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
   SMTP>> EHLO mail.test.ex
@@ -144,24 +168,23 @@ cmd buf flush ddd bytes
   SMTP<< 250 OK
   SMTP>> RCPT TO:<qq@remote>
 cmd buf flush ddd bytes
   SMTP<< 250 OK
   SMTP>> RCPT TO:<qq@remote>
 cmd buf flush ddd bytes
-sync_responses expect rcpt
+sync_responses expect rcpt for qq@remote
   SMTP<< 550 Unknown
   SMTP>> QUIT
 cmd buf flush ddd bytes
   SMTP<< 250 OK
   SMTP(close)>>
   SMTP<< 550 Unknown
   SMTP>> QUIT
 cmd buf flush ddd bytes
   SMTP<< 250 OK
   SMTP(close)>>
- locking TESTSUITE/spool/db/callout.lockfile
- locked  TESTSUITE/spool/db/callout.lockfile
- EXIM_DBOPEN: file <TESTSUITE/spool/db/callout> dir <TESTSUITE/spool/db> flags=O_RDWR|O_CREAT
+cmdlog: '220:EHLO:250:MAIL:250:RCPT:550:QUIT:250'
+ EXIM_DBOPEN: file <TESTSUITE/spool/db/callout> dir <TESTSUITE/spool/db> flags=O_RDWR
  returned from EXIM_DBOPEN: 0xAAAAAAAA
  returned from EXIM_DBOPEN: 0xAAAAAAAA
- opened hints database TESTSUITE/spool/db/callout: flags=O_RDWR|O_CREAT
- dbfn_write: key=remote
-wrote callout cache domain record for remote:
-  result=1 postmaster=0 random=0
- dbfn_write: key=qq@remote
-wrote negative callout cache address record for qq@remote
+ opened hints database TESTSUITE/spool/db/callout: flags=O_RDWR
+ dbfn_write: key=remote datalen 40
+ wrote callout cache domain record for remote:
+   result=1 postmaster=0 random=0
+ dbfn_write: key=qq@remote datalen 16
+ wrote negative callout cache address record for qq@remote
  EXIM_DBCLOSE(0xAAAAAAAA)
  EXIM_DBCLOSE(0xAAAAAAAA)
- closed hints database and lockfile
+ closed hints database
 ----------- end verify ------------
 l_message: $acl_verify_message
 warn: condition test succeeded in ACL "rcpt"
 ----------- end verify ------------
 l_message: $acl_verify_message
 warn: condition test succeeded in ACL "rcpt"
@@ -169,28 +192,39 @@ LOG: MAIN
   U=CALLER Warning: Sender verify failed: 127.0.0.1 [127.0.0.1] : SMTP error from remote mail server after RCPT TO:<qq@remote>: 550 Unknown
 processing "accept" (TESTSUITE/test-config 24)
 check senders = qq@remote
   U=CALLER Warning: Sender verify failed: 127.0.0.1 [127.0.0.1] : SMTP error from remote mail server after RCPT TO:<qq@remote>: 550 Unknown
 processing "accept" (TESTSUITE/test-config 24)
 check senders = qq@remote
-address match test: subject=qq@remote pattern=qq@remote
-remote in "remote"? yes (matched "remote")
-qq@remote in "qq@remote"? yes (matched "qq@remote")
+qq@remote in "qq@remote"?
+ list element: qq@remote
+ address match test: subject=qq@remote pattern=qq@remote
+ remote in "remote"?
+  list element: remote
+  remote in "remote"? yes (matched "remote")
+ qq@remote in "qq@remote"? yes (matched "qq@remote")
 accept: condition test succeeded in ACL "rcpt"
 end of ACL "rcpt": ACCEPT
 SMTP>> 250 Accepted
 accept: condition test succeeded in ACL "rcpt"
 end of ACL "rcpt": ACCEPT
 SMTP>> 250 Accepted
-DSN: orcpt: NULL  flags: 0
 SMTP<< rcpt to:<xyz@local>
 using ACL "rcpt"
 processing "deny" (TESTSUITE/test-config 19)
 check senders = qq@remote
 SMTP<< rcpt to:<xyz@local>
 using ACL "rcpt"
 processing "deny" (TESTSUITE/test-config 19)
 check senders = qq@remote
-address match test: subject=qq@remote pattern=qq@remote
-remote in "remote"? yes (matched "remote")
-qq@remote in "qq@remote"? yes (matched "qq@remote")
+qq@remote in "qq@remote"?
+ list element: qq@remote
+ address match test: subject=qq@remote pattern=qq@remote
+ remote in "remote"?
+  list element: remote
+  remote in "remote"? yes (matched "remote")
+ qq@remote in "qq@remote"? yes (matched "qq@remote")
 check !verify = sender
 using cached sender verify result
 deny: condition test failed in ACL "rcpt"
 processing "warn" (TESTSUITE/test-config 21)
 check senders = qq@remote
 check !verify = sender
 using cached sender verify result
 deny: condition test failed in ACL "rcpt"
 processing "warn" (TESTSUITE/test-config 21)
 check senders = qq@remote
-address match test: subject=qq@remote pattern=qq@remote
-remote in "remote"? yes (matched "remote")
-qq@remote in "qq@remote"? yes (matched "qq@remote")
+qq@remote in "qq@remote"?
+ list element: qq@remote
+ address match test: subject=qq@remote pattern=qq@remote
+ remote in "remote"?
+  list element: remote
+  remote in "remote"? yes (matched "remote")
+ qq@remote in "qq@remote"? yes (matched "qq@remote")
 check !verify = sender/callout
 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 Verifying qq@remote
 check !verify = sender/callout
 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 Verifying qq@remote
@@ -201,22 +235,27 @@ routing qq@remote
 --------> r1 router <--------
 local_part=qq domain=remote
 checking domains
 --------> r1 router <--------
 local_part=qq domain=remote
 checking domains
-remote in "local"? no (end of list)
+remote in domains?
+ list element: local
+remote in domains? no (end of list)
 r1 router skipped: domains mismatch
 --------> r2 router <--------
 local_part=qq domain=remote
 checking domains
 r1 router skipped: domains mismatch
 --------> r2 router <--------
 local_part=qq domain=remote
 checking domains
-remote in "remote"? yes (matched "remote")
+remote in domains?
+ list element: remote
+ remote in domains? yes (matched "remote")
 calling r2 router
 r2 router called for qq@remote
   domain = remote
 route_item = * 127.0.0.1
 calling r2 router
 r2 router called for qq@remote
   domain = remote
 route_item = * 127.0.0.1
-remote in "*"? yes (matched "*")
+remote in "*"?
+ list element: *
+ remote in "*"? yes (matched "*")
 original list of hosts = '127.0.0.1' options = ''
 expanded list of hosts = '127.0.0.1' options = ''
 finding IP address for 127.0.0.1
 calling host_find_byname
 original list of hosts = '127.0.0.1' options = ''
 expanded list of hosts = '127.0.0.1' options = ''
 finding IP address for 127.0.0.1
 calling host_find_byname
-host_fake_gethostbyname returned 1 (HOST_NOT_FOUND)
 using host_fake_gethostbyname for 127.0.0.1 (IPv4)
 local host found for non-MX address
 fully qualified name = 127.0.0.1
 using host_fake_gethostbyname for 127.0.0.1 (IPv4)
 local host found for non-MX address
 fully qualified name = 127.0.0.1
@@ -227,24 +266,24 @@ remote host address is the local host: remote: configured to try delivery anyway
 queued for t2 transport: local_part = qq
 domain = remote
   errors_to=NULL
 queued for t2 transport: local_part = qq
 domain = remote
   errors_to=NULL
-  domain_data=remote localpart_data=NULL
+  domain_data=remote local_part_data=NULL
 routed by r2 router
   envelope to: qq@remote
   transport: t2
   host 127.0.0.1 [127.0.0.1]
 Attempting full verification using callout
 routed by r2 router
   envelope to: qq@remote
   transport: t2
   host 127.0.0.1 [127.0.0.1]
 Attempting full verification using callout
- locking TESTSUITE/spool/db/callout.lockfile
- locked  TESTSUITE/spool/db/callout.lockfile
  EXIM_DBOPEN: file <TESTSUITE/spool/db/callout> dir <TESTSUITE/spool/db> flags=O_RDWR
  returned from EXIM_DBOPEN: 0xAAAAAAAA
  opened hints database TESTSUITE/spool/db/callout: flags=O_RDWR
  dbfn_read: key=remote
  EXIM_DBOPEN: file <TESTSUITE/spool/db/callout> dir <TESTSUITE/spool/db> flags=O_RDWR
  returned from EXIM_DBOPEN: 0xAAAAAAAA
  opened hints database TESTSUITE/spool/db/callout: flags=O_RDWR
  dbfn_read: key=remote
-callout cache: found domain record for remote
+ dbfn_read: size 40 return
+ callout cache: found domain record for remote
  dbfn_read: key=qq@remote
  dbfn_read: key=qq@remote
-callout cache: found address record for qq@remote
-callout cache: address record is negative
+ dbfn_read: size 16 return
+ callout cache: found address record for qq@remote
+ callout cache: address record is negative
  EXIM_DBCLOSE(0xAAAAAAAA)
  EXIM_DBCLOSE(0xAAAAAAAA)
- closed hints database and lockfile
+ closed hints database
 ----------- end verify ------------
 l_message: $acl_verify_message
 warn: condition test succeeded in ACL "rcpt"
 ----------- end verify ------------
 l_message: $acl_verify_message
 warn: condition test succeeded in ACL "rcpt"
@@ -252,16 +291,19 @@ LOG: MAIN
   U=CALLER Warning: Sender verify failed
 processing "accept" (TESTSUITE/test-config 24)
 check senders = qq@remote
   U=CALLER Warning: Sender verify failed
 processing "accept" (TESTSUITE/test-config 24)
 check senders = qq@remote
-address match test: subject=qq@remote pattern=qq@remote
-remote in "remote"? yes (matched "remote")
-qq@remote in "qq@remote"? yes (matched "qq@remote")
+qq@remote in "qq@remote"?
+ list element: qq@remote
+ address match test: subject=qq@remote pattern=qq@remote
+ remote in "remote"?
+  list element: remote
+  remote in "remote"? yes (matched "remote")
+ qq@remote in "qq@remote"? yes (matched "qq@remote")
 accept: condition test succeeded in ACL "rcpt"
 end of ACL "rcpt": ACCEPT
 SMTP>> 250 Accepted
 accept: condition test succeeded in ACL "rcpt"
 end of ACL "rcpt": ACCEPT
 SMTP>> 250 Accepted
-DSN: orcpt: NULL  flags: 0
 SMTP<< quit
 SMTP>> 221 mail.test.ex closing connection
 LOG: smtp_connection MAIN
 SMTP<< quit
 SMTP>> 221 mail.test.ex closing connection
 LOG: smtp_connection MAIN
-  SMTP connection from CALLER closed by QUIT
+  SMTP connection from CALLER D=qqs closed by QUIT
 search_tidyup called
 search_tidyup called
->>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
+>>>>>>>>>>>>>>>> Exim pid=p1234 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>