Fix listquote expansion item to handle empty-string input
[users/heiko/exim.git] / test / stderr / 0002
index ee53aeccec4e8caafe25e7ab522f09f7cc665a77..9d6fb5df8c628b46324c1331bf9df825e25b12bf 100644 (file)
@@ -2,86 +2,90 @@ Exim version x.yz ....
 configuration file is TESTSUITE/test-config
 admin user
 dropping to exim gid; retaining priv uid
- â\94\8cconsidering: primary_hostname: $primary_hostname
+ â\95­considering: primary_hostname: $primary_hostname
  ├──expanding: primary_hostname: $primary_hostname
- └─────result: primary_hostname: myhost.test.ex
- ┌considering: match:  ${if match{abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
-  ┌considering: abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+ ╰─────result: primary_hostname: myhost.test.ex
+ ╭considering: sender_address: $sender_address
+ ├──expanding: sender_address: $sender_address
+ ╰─────result: sender_address: sndr@dom
+            ╰──(tainted)
+ ╭considering: match:  ${if match{abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+  ╭considering: abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
   ├──expanding: abcd
-  â\94\94─────result: abcd
-  â\94\8cconsidering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
+  â\95°─────result: abcd
+  â\95­considering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
   ├──expanding: \N^([ab]+)(\w+)$\N
-  â\94\94─────result: ^([ab]+)(\w+)$
+  â\95°─────result: ^([ab]+)(\w+)$
  ├──condition: match{abcd}{\N^([ab]+)(\w+)$\N}
  ├─────result: true
-  â\94\8cconsidering: $2$1}fail}
+  â\95­considering: $2$1}fail}
   ├──expanding: $2$1
-  â\94\94─────result: cdab
+  â\95°─────result: cdab
  ├──expanding: match:  ${if match{abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
- â\94\94─────result: match:  cdab
- â\94\8cconsidering: match:  ${if match{wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
-  â\94\8cconsidering: wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+ â\95°─────result: match:  cdab
+ â\95­considering: match:  ${if match{wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+  â\95­considering: wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
   ├──expanding: wxyz
-  â\94\94─────result: wxyz
-  â\94\8cconsidering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
+  â\95°─────result: wxyz
+  â\95­considering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
   ├──expanding: \N^([ab]+)(\w+)$\N
-  â\94\94─────result: ^([ab]+)(\w+)$
+  â\95°─────result: ^([ab]+)(\w+)$
  ├──condition: match{wxyz}{\N^([ab]+)(\w+)$\N}
  ├─────result: false
-  â\94\8c───scanning: $2$1}fail}
+  â\95­───scanning: $2$1}fail}
   ├──expanding: $2$1
   ├─────result: 
-  â\94\94───skipping: result is not used
+  â\95°───skipping: result is not used
  ├failed to expand: match:  ${if match{wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
  ├───error message: "if" failed and "fail" requested
- â\94\94failure was forced
- â\94\8cconsidering: ${if eq {1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
-  â\94\8cconsidering: 1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+ â\95°failure was forced
+ â\95­considering: ${if eq {1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+  â\95­considering: 1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
   ├──expanding: 1
-  â\94\94─────result: 1
-  â\94\8cconsidering: 1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+  â\95°─────result: 1
+  â\95­considering: 1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
   ├──expanding: 1
-  â\94\94─────result: 1
+  â\95°─────result: 1
  ├──condition: eq {1}{1}
  ├─────result: true
-  â\94\8cconsidering: yes}{${lookup{xx}lsearch{/non/exist}}}}
+  â\95­considering: yes}{${lookup{xx}lsearch{/non/exist}}}}
   ├──expanding: yes
-  â\94\94─────result: yes
-  â\94\8c───scanning: ${lookup{xx}lsearch{/non/exist}}}}
-   â\94\8c───scanning: xx}lsearch{/non/exist}}}}
+  â\95°─────result: yes
+  â\95­───scanning: ${lookup{xx}lsearch{/non/exist}}}}
+   â\95­───scanning: xx}lsearch{/non/exist}}}}
    ├──expanding: xx
    ├─────result: xx
-   â\94\94───skipping: result is not used
-   â\94\8c───scanning: /non/exist}}}}
+   â\95°───skipping: result is not used
+   â\95­───scanning: /non/exist}}}}
    ├──expanding: /non/exist
    ├─────result: /non/exist
-   â\94\94───skipping: result is not used
+   â\95°───skipping: result is not used
   ├──expanding: ${lookup{xx}lsearch{/non/exist}}
   ├─────result: 
-  â\94\94───skipping: result is not used
+  â\95°───skipping: result is not used
  ├──expanding: ${if eq {1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
- â\94\94─────result: yes
- â\94\8cconsidering: match_address:   ${if match_address{a.b.c}{a.b.c}{yes}{no}}
-  â\94\8cconsidering: a.b.c}{a.b.c}{yes}{no}}
+ â\95°─────result: yes
+ â\95­considering: match_address:   ${if match_address{a.b.c}{a.b.c}{yes}{no}}
+  â\95­considering: a.b.c}{a.b.c}{yes}{no}}
   ├──expanding: a.b.c
-  â\94\94─────result: a.b.c
-  â\94\8cconsidering: a.b.c}{yes}{no}}
+  â\95°─────result: a.b.c
+  â\95­considering: a.b.c}{yes}{no}}
   ├──expanding: a.b.c
-  â\94\94─────result: a.b.c
+  â\95°─────result: a.b.c
 LOG: MAIN PANIC
   no @ found in the subject of an address list match: subject="a.b.c" pattern="a.b.c"
  ├──condition: match_address{a.b.c}{a.b.c}
  ├─────result: false
-  â\94\8c───scanning: yes}{no}}
+  â\95­───scanning: yes}{no}}
   ├──expanding: yes
   ├─────result: yes
-  â\94\94───skipping: result is not used
-  â\94\8cconsidering: no}}
+  â\95°───skipping: result is not used
+  â\95­considering: no}}
   ├──expanding: no
-  â\94\94─────result: no
- ├──expanding: a.b.c
- â\94\94─────result: match_address:   no
->>>>>>>>>>>>>>>> Exim pid=pppp (main: expansion test) terminating with rc=0 >>>>>>>>>>>>>>>>
+  â\95°─────result: no
+ ├──expanding: match_address:   ${if match_address{a.b.c}{a.b.c}{yes}{no}}
+ â\95°─────result: match_address:   no
+>>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 Exim version x.yz ....
 configuration file is TESTSUITE/test-config
 admin user
@@ -163,89 +167,102 @@ LOG: MAIN PANIC
   /considering: no}}
   |--expanding: no
   \_____result: no
- |--expanding: a.b.c
+ |--expanding: match_address:   ${if match_address{a.b.c}{a.b.c}{yes}{no}}
  \_____result: match_address:   no
->>>>>>>>>>>>>>>> Exim pid=pppp (main: expansion test) 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
 dropping to exim gid; retaining priv uid
- â\94\8cconsidering: -oMa  sender_host_address = $sender_host_address
+ â\95­considering: -oMa  sender_host_address = $sender_host_address
  ├──expanding: -oMa  sender_host_address = $sender_host_address
- └─────result: -oMa  sender_host_address = V4NET.0.0.1
- ┌considering:       sender_host_port = $sender_host_port
+ ╰─────result: -oMa  sender_host_address = V4NET.0.0.1
+            ╰──(tainted)
+ ╭considering:       sender_host_port = $sender_host_port
  ├──expanding:       sender_host_port = $sender_host_port
- â\94\94─────result:       sender_host_port = 1234
- â\94\8cconsidering: -oMaa sender_host_authenticated = $sender_host_authenticated
+ â\95°─────result:       sender_host_port = 1234
+ â\95­considering: -oMaa sender_host_authenticated = $sender_host_authenticated
  ├──expanding: -oMaa sender_host_authenticated = $sender_host_authenticated
- └─────result: -oMaa sender_host_authenticated = AAA
- ┌considering: -oMai authenticated_id = $authenticated_id
+ ╰─────result: -oMaa sender_host_authenticated = AAA
+            ╰──(tainted)
+ ╭considering: -oMai authenticated_id = $authenticated_id
  ├──expanding: -oMai authenticated_id = $authenticated_id
- └─────result: -oMai authenticated_id = philip
- ┌considering: -oMas authenticated_sender = $authenticated_sender
+ ╰─────result: -oMai authenticated_id = philip
+            ╰──(tainted)
+ ╭considering: -oMas authenticated_sender = $authenticated_sender
  ├──expanding: -oMas authenticated_sender = $authenticated_sender
- └─────result: -oMas authenticated_sender = xx@yy.zz
- ┌considering: -oMi  interface_address = $interface_address
+ ╰─────result: -oMas authenticated_sender = xx@yy.zz
+            ╰──(tainted)
+ ╭considering: -oMi  interface_address = $interface_address
  ├──expanding: -oMi  interface_address = $interface_address
- └─────result: -oMi  interface_address = 1.1.1.1
- ┌considering:       interface_port = $interface_port
+ ╰─────result: -oMi  interface_address = 1.1.1.1
+            ╰──(tainted)
+ ╭considering:       interface_port = $interface_port
  ├──expanding:       interface_port = $interface_port
- â\94\94─────result:       interface_port = 99
- â\94\8cconsidering: -oMr  received_protocol = $received_protocol
+ â\95°─────result:       interface_port = 99
+ â\95­considering: -oMr  received_protocol = $received_protocol
  ├──expanding: -oMr  received_protocol = $received_protocol
- └─────result: -oMr  received_protocol = special
- ┌considering: -oMt  sender_ident = $sender_ident
+ ╰─────result: -oMr  received_protocol = special
+            ╰──(tainted)
+ ╭considering: -oMt  sender_ident = $sender_ident
  ├──expanding: -oMt  sender_ident = $sender_ident
- └─────result: -oMt  sender_ident = me
->>>>>>>>>>>>>>>> Exim pid=pppp (main: expansion test) terminating with rc=0 >>>>>>>>>>>>>>>>
+ ╰─────result: -oMt  sender_ident = me
+            ╰──(tainted)
+>>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 1999-03-02 09:44:33 no host name found for IP address V4NET.11.12.13
 Exim version x.yz ....
 configuration file is TESTSUITE/test-config
 admin user
 dropping to exim gid; retaining priv uid
- â\94\8cconsidering: -oMa  sender_host_address = $sender_host_address
+ â\95­considering: -oMa  sender_host_address = $sender_host_address
  ├──expanding: -oMa  sender_host_address = $sender_host_address
- └─────result: -oMa  sender_host_address = V4NET.0.0.1
- ┌considering:       sender_host_port = $sender_host_port
+ ╰─────result: -oMa  sender_host_address = V4NET.0.0.1
+            ╰──(tainted)
+ ╭considering:       sender_host_port = $sender_host_port
  ├──expanding:       sender_host_port = $sender_host_port
- â\94\94─────result:       sender_host_port = 1234
- â\94\8cconsidering: -oMaa sender_host_authenticated = $sender_host_authenticated
+ â\95°─────result:       sender_host_port = 1234
+ â\95­considering: -oMaa sender_host_authenticated = $sender_host_authenticated
  ├──expanding: -oMaa sender_host_authenticated = $sender_host_authenticated
- └─────result: -oMaa sender_host_authenticated = AAA
- ┌considering: -oMai authenticated_id = $authenticated_id
+ ╰─────result: -oMaa sender_host_authenticated = AAA
+            ╰──(tainted)
+ ╭considering: -oMai authenticated_id = $authenticated_id
  ├──expanding: -oMai authenticated_id = $authenticated_id
- └─────result: -oMai authenticated_id = philip
- ┌considering: -oMas authenticated_sender = $authenticated_sender
+ ╰─────result: -oMai authenticated_id = philip
+            ╰──(tainted)
+ ╭considering: -oMas authenticated_sender = $authenticated_sender
  ├──expanding: -oMas authenticated_sender = $authenticated_sender
- └─────result: -oMas authenticated_sender = xx@yy.zz
- ┌considering: -oMi  interface_address = $interface_address
+ ╰─────result: -oMas authenticated_sender = xx@yy.zz
+            ╰──(tainted)
+ ╭considering: -oMi  interface_address = $interface_address
  ├──expanding: -oMi  interface_address = $interface_address
- └─────result: -oMi  interface_address = 1.1.1.1
- ┌considering:       interface_port = $interface_port
+ ╰─────result: -oMi  interface_address = 1.1.1.1
+            ╰──(tainted)
+ ╭considering:       interface_port = $interface_port
  ├──expanding:       interface_port = $interface_port
- â\94\94─────result:       interface_port = 99
- â\94\8cconsidering: -oMr  received_protocol = $received_protocol
+ â\95°─────result:       interface_port = 99
+ â\95­considering: -oMr  received_protocol = $received_protocol
  ├──expanding: -oMr  received_protocol = $received_protocol
- └─────result: -oMr  received_protocol = special
- ┌considering: ----> No lookup yet: ${if eq{black}{white}{$sender_host_name}{No}}
-  ┌considering: black}{white}{$sender_host_name}{No}}
+ ╰─────result: -oMr  received_protocol = special
+            ╰──(tainted)
+ ╭considering: ----> No lookup yet: ${if eq{black}{white}{$sender_host_name}{No}}
+  ╭considering: black}{white}{$sender_host_name}{No}}
   ├──expanding: black
-  â\94\94─────result: black
-  â\94\8cconsidering: white}{$sender_host_name}{No}}
+  â\95°─────result: black
+  â\95­considering: white}{$sender_host_name}{No}}
   ├──expanding: white
-  â\94\94─────result: white
+  â\95°─────result: white
  ├──condition: eq{black}{white}
  ├─────result: false
-  â\94\8c───scanning: $sender_host_name}{No}}
+  â\95­───scanning: $sender_host_name}{No}}
   ├──expanding: $sender_host_name
   ├─────result: 
-  â\94\94───skipping: result is not used
-  â\94\8cconsidering: No}}
+  â\95°───skipping: result is not used
+  â\95­considering: No}}
   ├──expanding: No
-  â\94\94─────result: No
+  â\95°─────result: No
  ├──expanding: ----> No lookup yet: ${if eq{black}{white}{$sender_host_name}{No}}
- â\94\94─────result: ----> No lookup yet: No
- â\94\8cconsidering: -oMs  sender_host_name = $sender_host_name
+ â\95°─────result: ----> No lookup yet: No
+ â\95­considering: -oMs  sender_host_name = $sender_host_name
 looking up host name for V4NET.0.0.1
 IP address lookup yielded "ten-1.test.ex"
 ten-1.test.ex V4NET.0.0.1 mx=-1 sort=xx 
@@ -254,11 +271,13 @@ checking addresses for ten-1.test.ex
 sender_fullhost = ten-1.test.ex [V4NET.0.0.1]
 sender_rcvhost = ten-1.test.ex ([V4NET.0.0.1] ident=me)
  ├──expanding: -oMs  sender_host_name = $sender_host_name
- └─────result: -oMs  sender_host_name = ten-1.test.ex
- ┌considering: -oMt  sender_ident = $sender_ident
+ ╰─────result: -oMs  sender_host_name = ten-1.test.ex
+            ╰──(tainted)
+ ╭considering: -oMt  sender_ident = $sender_ident
  ├──expanding: -oMt  sender_ident = $sender_ident
- └─────result: -oMt  sender_ident = me
->>>>>>>>>>>>>>>> Exim pid=pppp (main: expansion test) terminating with rc=0 >>>>>>>>>>>>>>>>
+ ╰─────result: -oMt  sender_ident = me
+            ╰──(tainted)
+>>>>>>>>>>>>>>>> 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
@@ -299,12 +318,12 @@ sender_fullhost = ten-1.test.ex [V4NET.0.0.1]
 sender_rcvhost = ten-1.test.ex ([V4NET.0.0.1])
 search_open: lsearch "TESTSUITE/aux-fixed/0002.lsearch"
 search_find: file="TESTSUITE/aux-fixed/0002.lsearch"
-  key="ten-1.test.ex" partial=2 affix=*. starflags=0
+  key="ten-1.test.ex" partial=2 affix=*. starflags=0 opts=NULL
 LRU list:
   0TESTSUITE/aux-fixed/0002.lsearch
   End
 internal_search_find: file="TESTSUITE/aux-fixed/0002.lsearch"
-  type=lsearch key="ten-1.test.ex"
+  type=lsearch key="ten-1.test.ex" opts=NULL
 file lookup required for ten-1.test.ex
   in TESTSUITE/aux-fixed/0002.lsearch
 lookup yielded: 
@@ -317,7 +336,7 @@ SMTP>> 550 Administrative prohibition
 LOG: connection_reject MAIN REJECT
   H=ten-1.test.ex [V4NET.0.0.1] rejected connection in "connect" ACL
 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
@@ -345,12 +364,12 @@ processing "deny" (TESTSUITE/test-config 48)
 check hosts = net-lsearch;TESTSUITE/aux-fixed/0002.lsearch
 search_open: lsearch "TESTSUITE/aux-fixed/0002.lsearch"
 search_find: file="TESTSUITE/aux-fixed/0002.lsearch"
-  key="V4NET.0.0.2" partial=-1 affix=NULL starflags=0
+  key="V4NET.0.0.2" partial=-1 affix=NULL starflags=0 opts=NULL
 LRU list:
   0TESTSUITE/aux-fixed/0002.lsearch
   End
 internal_search_find: file="TESTSUITE/aux-fixed/0002.lsearch"
-  type=lsearch key="V4NET.0.0.2"
+  type=lsearch key="V4NET.0.0.2" opts=NULL
 file lookup required for V4NET.0.0.2
   in TESTSUITE/aux-fixed/0002.lsearch
 lookup failed
@@ -361,7 +380,7 @@ SMTP>> 550 Administrative prohibition
 LOG: connection_reject MAIN REJECT
   H=[V4NET.0.0.2] rejected connection in "connect" ACL
 search_tidyup called
->>>>>>>>>>>>>>>> Exim pid=pppp (main) terminating with rc=0 >>>>>>>>>>>>>>>>
+>>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 >>> host in hosts_connection_nolog? no (option unset)
 >>> host in host_lookup? no (option unset)
 >>> host in host_reject_connection? no (option unset)
@@ -513,4 +532,4 @@ sender address = CALLER@myhost.test.ex
 1.2.3.4 in "1.2.3"? no (malformed IPv4 address or address mask)
 1.2.3.4 in "1.2.3.4/abc"? no (malformed IPv4 address or address mask)
 search_tidyup called
->>>>>>>>>>>>>>>> Exim pid=pppp (main: expansion test) terminating with rc=0 >>>>>>>>>>>>>>>>
+>>>>>>>>>>>>>>>> Exim pid=pppp (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>