CVE-2020-28026: Line truncation and injection in spool_read_header()
[exim.git] / test / stderr / 0275
index f34132b55bac12241c49a9bb1e7c8e68ebf946f1..1d85b56c1e5f7eeaca4c60bab6af003508c4a9f9 100644 (file)
@@ -3,17 +3,9 @@ changed uid/gid: forcing real = effective
   uid=uuuu gid=CALLER_GID pid=pppp
 configuration file is TESTSUITE/test-config
 admin user
   uid=uuuu gid=CALLER_GID pid=pppp
 configuration file is TESTSUITE/test-config
 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
 seeking password data for user "CALLER": cache not available
 getpwnam() succeeded uid=CALLER_UID gid=CALLER_GID
-DSN: r00 propagating DSN
-DSN: r01 propagating DSN
-DSN: r02 propagating DSN
-DSN: r03 propagating DSN
-DSN: r04 propagating DSN
-DSN: r05 propagating DSN
-DSN: r1 propagating DSN
-DSN: r2 propagating DSN
-DSN: r3 propagating DSN
 originator: uid=CALLER_UID gid=CALLER_GID login=CALLER name=CALLER_NAME
 sender address = CALLER@test.ex
 Address testing: uid=uuuu gid=EXIM_GID euid=uuuu egid=EXIM_GID
 originator: uid=CALLER_UID gid=CALLER_GID login=CALLER name=CALLER_NAME
 sender address = CALLER@test.ex
 Address testing: uid=uuuu gid=EXIM_GID euid=uuuu egid=EXIM_GID
@@ -71,6 +63,7 @@ checking domains
 test.ex in "never.ex"? no (end of list)
 test.ex in "never1.ex"? no (end of list)
 test.ex in "test.ex"? yes (matched "test.ex")
 test.ex in "never.ex"? no (end of list)
 test.ex in "never1.ex"? no (end of list)
 test.ex in "test.ex"? yes (matched "test.ex")
+data from lookup saved for cache for +local_domains: key 'test.ex' value 'test.ex'
 test.ex in "+never_domains : +n1_domains : ! +local_domains"? no (matched "! +local_domains")
 r1 router skipped: domains mismatch
 --------> r2 router <--------
 test.ex in "+never_domains : +n1_domains : ! +local_domains"? no (matched "! +local_domains")
 r1 router skipped: domains mismatch
 --------> r2 router <--------
@@ -82,14 +75,14 @@ cached no match for +n1_domains
 cached lookup data = NULL
 test.ex in "<; never2.ex ; +n1_domains"? no (end of list)
 cached yes match for +local_domains
 cached lookup data = NULL
 test.ex in "<; never2.ex ; +n1_domains"? no (end of list)
 cached yes match for +local_domains
-cached lookup data = NULL
+cached lookup data = test.ex
 test.ex in "+never_domains : +n2_domains : !+local_domains"? no (matched "!+local_domains" - cached)
 r2 router skipped: domains mismatch
 --------> r3 router <--------
 local_part=userx domain=test.ex
 checking domains
 cached yes match for +local_domains
 test.ex in "+never_domains : +n2_domains : !+local_domains"? no (matched "!+local_domains" - cached)
 r2 router skipped: domains mismatch
 --------> r3 router <--------
 local_part=userx domain=test.ex
 checking domains
 cached yes match for +local_domains
-cached lookup data = NULL
+cached lookup data = test.ex
 test.ex in "+local_domains"? yes (matched "+local_domains" - cached)
 checking local_parts
 userx in "userx"? yes (matched "userx")
 test.ex in "+local_domains"? yes (matched "+local_domains" - cached)
 checking local_parts
 userx in "userx"? yes (matched "userx")
@@ -100,12 +93,12 @@ set transport t1
 queued for t1 transport: local_part = userx
 domain = test.ex
   errors_to=NULL
 queued for t1 transport: local_part = userx
 domain = test.ex
   errors_to=NULL
-  domain_data=NULL localpart_data=NULL
+  domain_data=test.ex local_part_data=userx
 routed by r3 router
   envelope to: userx@test.ex
   transport: t1
 search_tidyup called
 routed by r3 router
   envelope to: userx@test.ex
   transport: t1
 search_tidyup called
->>>>>>>>>>>>>>>> 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
@@ -115,15 +108,6 @@ changed uid/gid: privilege not needed
   uid=EXIM_UID gid=EXIM_GID pid=pppp
 seeking password data for user "CALLER": cache not available
 getpwnam() succeeded uid=CALLER_UID gid=CALLER_GID
   uid=EXIM_UID gid=EXIM_GID pid=pppp
 seeking password data for user "CALLER": cache not available
 getpwnam() succeeded uid=CALLER_UID gid=CALLER_GID
-DSN: r00 propagating DSN
-DSN: r01 propagating DSN
-DSN: r02 propagating DSN
-DSN: r03 propagating DSN
-DSN: r04 propagating DSN
-DSN: r05 propagating DSN
-DSN: r1 propagating DSN
-DSN: r2 propagating DSN
-DSN: r3 propagating DSN
 originator: uid=CALLER_UID gid=CALLER_GID login=CALLER name=CALLER_NAME
 sender address = CALLER@test.ex
 set_process_info: pppp accepting a local non-SMTP message from <CALLER@test.ex>
 originator: uid=CALLER_UID gid=CALLER_GID login=CALLER name=CALLER_NAME
 sender address = CALLER@test.ex
 set_process_info: pppp accepting a local non-SMTP message from <CALLER@test.ex>
@@ -150,37 +134,24 @@ P Received: from CALLER by myhost.test.ex with local (Exim x.yz)
        (envelope-from <CALLER@test.ex>)
        id 10HmaX-0005vi-00
        for userx@test.ex; Tue, 2 Mar 1999 09:44:33 +0000
        (envelope-from <CALLER@test.ex>)
        id 10HmaX-0005vi-00
        for userx@test.ex; Tue, 2 Mar 1999 09:44:33 +0000
-calling local_scan(); timeout=300
-local_scan() returned 0 NULL
-Writing spool header file: TESTSUITE/spool//input//hdr.pppp
-DSN: Write SPOOL :-dsn_envid NULL
-DSN: Write SPOOL :-dsn_ret 0
-DSN: Flags :0
-DSN: **** SPOOL_OUT - address: |userx@test.ex| errorsto: |NULL| orcpt: |NULL| dsn_flags: 0
+Writing spool header file: TESTSUITE/spool//input//hdr.10HmaX-0005vi-00
+DSN: **** SPOOL_OUT - address: <userx@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@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@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=0xfbb95cfd -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
 seeking password data for user "CALLER": cache not available
 getpwnam() succeeded uid=CALLER_UID gid=CALLER_GID
-DSN: r00 propagating DSN
-DSN: r01 propagating DSN
-DSN: r02 propagating DSN
-DSN: r03 propagating DSN
-DSN: r04 propagating DSN
-DSN: r05 propagating DSN
-DSN: r1 propagating DSN
-DSN: r2 propagating DSN
-DSN: r3 propagating DSN
 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
 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
@@ -193,15 +164,14 @@ Empty Tree
 recipients_count=1
 **** SPOOL_IN - No additional fields
 body_linecount=0 message_linecount=7
 recipients_count=1
 **** SPOOL_IN - No additional fields
 body_linecount=0 message_linecount=7
-DSN: set orcpt: NULL  flags: 0
+DSN: set orcpt:   flags: 0x0
 Delivery address list:
   userx@test.ex 
 Delivery address list:
   userx@test.ex 
-locking TESTSUITE/spool/db/retry.lockfile
-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
+ locking TESTSUITE/spool/db/retry.lockfile
+ 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)
+ failed to open DB file TESTSUITE/spool/db/retry: No such file or directory
 no retry data available
 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 Considering: userx@test.ex
 no retry data available
 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 Considering: userx@test.ex
@@ -211,8 +181,8 @@ test.ex in percent_hack_domains? yes (matched "+not_queue_domains")
 cached no match for +hold_domains
 test.ex in hold_domains? no (end of list)
 unique = userx@test.ex
 cached no match for +hold_domains
 test.ex in hold_domains? no (end of list)
 unique = userx@test.ex
-no domain retry record
-no address retry record
+no   domain  retry record
+no   address retry record
 userx@test.ex: queued for routing
 cached yes match for +not_queue_domains
 test.ex in queue_domains? no (matched "!+not_queue_domains" - cached)
 userx@test.ex: queued for routing
 cached yes match for +not_queue_domains
 test.ex in queue_domains? no (matched "!+not_queue_domains" - cached)
@@ -263,6 +233,7 @@ checking domains
 test.ex in "never.ex"? no (end of list)
 test.ex in "never1.ex"? no (end of list)
 test.ex in "test.ex"? yes (matched "test.ex")
 test.ex in "never.ex"? no (end of list)
 test.ex in "never1.ex"? no (end of list)
 test.ex in "test.ex"? yes (matched "test.ex")
+data from lookup saved for cache for +local_domains: key 'test.ex' value 'test.ex'
 test.ex in "+never_domains : +n1_domains : ! +local_domains"? no (matched "! +local_domains")
 r1 router skipped: domains mismatch
 --------> r2 router <--------
 test.ex in "+never_domains : +n1_domains : ! +local_domains"? no (matched "! +local_domains")
 r1 router skipped: domains mismatch
 --------> r2 router <--------
@@ -274,14 +245,14 @@ cached no match for +n1_domains
 cached lookup data = NULL
 test.ex in "<; never2.ex ; +n1_domains"? no (end of list)
 cached yes match for +local_domains
 cached lookup data = NULL
 test.ex in "<; never2.ex ; +n1_domains"? no (end of list)
 cached yes match for +local_domains
-cached lookup data = NULL
+cached lookup data = test.ex
 test.ex in "+never_domains : +n2_domains : !+local_domains"? no (matched "!+local_domains" - cached)
 r2 router skipped: domains mismatch
 --------> r3 router <--------
 local_part=userx domain=test.ex
 checking domains
 cached yes match for +local_domains
 test.ex in "+never_domains : +n2_domains : !+local_domains"? no (matched "!+local_domains" - cached)
 r2 router skipped: domains mismatch
 --------> r3 router <--------
 local_part=userx domain=test.ex
 checking domains
 cached yes match for +local_domains
-cached lookup data = NULL
+cached lookup data = test.ex
 test.ex in "+local_domains"? yes (matched "+local_domains" - cached)
 checking local_parts
 userx in "userx"? yes (matched "userx")
 test.ex in "+local_domains"? yes (matched "+local_domains" - cached)
 checking local_parts
 userx in "userx"? yes (matched "userx")
@@ -292,7 +263,7 @@ set transport t1
 queued for t1 transport: local_part = userx
 domain = test.ex
   errors_to=NULL
 queued for t1 transport: local_part = userx
 domain = test.ex
   errors_to=NULL
-  domain_data=NULL localpart_data=NULL
+  domain_data=test.ex local_part_data=userx
 routed by r3 router
   envelope to: userx@test.ex
   transport: t1
 routed by r3 router
   envelope to: userx@test.ex
   transport: t1
@@ -306,11 +277,11 @@ After routing:
 search_tidyup called
 >>>>>>>>>>>>>>>> Local deliveries >>>>>>>>>>>>>>>>
 --------> userx@test.ex <--------
 search_tidyup called
 >>>>>>>>>>>>>>>> Local deliveries >>>>>>>>>>>>>>>>
 --------> userx@test.ex <--------
-locking TESTSUITE/spool/db/retry.lockfile
-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)
-failed to open DB file TESTSUITE/spool/db/retry: No such file or directory
+ locking TESTSUITE/spool/db/retry.lockfile
+ 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)
+ failed to open DB file TESTSUITE/spool/db/retry: No such file or directory
 no retry data available
 search_tidyup called
 changed uid/gid: local delivery to userx <userx@test.ex> transport=t1
 no retry data available
 search_tidyup called
 changed uid/gid: local delivery to userx <userx@test.ex> transport=t1
@@ -344,7 +315,7 @@ end of retry processing
 DSN: processing router : r3
 DSN: processing successful delivery address: userx@test.ex
 DSN: Sender_address: CALLER@test.ex
 DSN: processing router : r3
 DSN: processing successful delivery address: userx@test.ex
 DSN: Sender_address: CALLER@test.ex
-DSN: orcpt: NULL  flags: 0
+DSN: orcpt: NULL  flags: 0x0
 DSN: envid: NULL  ret: 0
 DSN: Final recipient: userx@test.ex
 DSN: Remote SMTP server supports DSN: 0
 DSN: envid: NULL  ret: 0
 DSN: Final recipient: userx@test.ex
 DSN: Remote SMTP server supports DSN: 0
@@ -354,9 +325,9 @@ 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 ....
 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
@@ -366,16 +337,6 @@ changed uid/gid: privilege not needed
   uid=EXIM_UID gid=EXIM_GID pid=pppp
 seeking password data for user "CALLER": cache not available
 getpwnam() succeeded uid=CALLER_UID gid=CALLER_GID
   uid=EXIM_UID gid=EXIM_GID pid=pppp
 seeking password data for user "CALLER": cache not available
 getpwnam() succeeded uid=CALLER_UID gid=CALLER_GID
-DSN: r0f propagating DSN
-DSN: r00 propagating DSN
-DSN: r01 propagating DSN
-DSN: r02 propagating DSN
-DSN: r03 propagating DSN
-DSN: r04 propagating DSN
-DSN: r05 propagating DSN
-DSN: r1 propagating DSN
-DSN: r2 propagating DSN
-DSN: r3 propagating DSN
 originator: uid=CALLER_UID gid=CALLER_GID login=CALLER name=CALLER_NAME
 sender address = CALLER@test.ex
 sender_fullhost = [127.0.0.1]
 originator: uid=CALLER_UID gid=CALLER_GID login=CALLER name=CALLER_NAME
 sender address = CALLER@test.ex
 sender_fullhost = [127.0.0.1]
@@ -407,7 +368,7 @@ SMTP<< RCPT TO:<error@test.ex>
 test.ex in "! *.ex"? no (matched "! *.ex")
 test.ex in "test.ex"? yes (matched "test.ex")
 test.ex in percent_hack_domains? yes (matched "+not_queue_domains")
 test.ex in "! *.ex"? no (matched "! *.ex")
 test.ex in "test.ex"? yes (matched "test.ex")
 test.ex in percent_hack_domains? yes (matched "+not_queue_domains")
-processing "accept"
+processing "accept" (TESTSUITE/test-config 102)
 check verify = recipient
 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 Verifying error@test.ex
 check verify = recipient
 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 Verifying error@test.ex
@@ -434,4 +395,4 @@ SMTP>> 221 myhost.test.ex closing connection
 LOG: smtp_connection MAIN
   SMTP connection from (test) [127.0.0.1] closed by QUIT
 search_tidyup called
 LOG: smtp_connection MAIN
   SMTP connection from (test) [127.0.0.1] closed by QUIT
 search_tidyup called
->>>>>>>>>>>>>>>> Exim pid=pppp (main) terminating with rc=0 >>>>>>>>>>>>>>>>
+>>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>