summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorJeremy Harris <jgh146exb@wizmail.org>2022-06-19 17:15:25 +0100
committerJeremy Harris <jgh146exb@wizmail.org>2022-06-19 17:15:25 +0100
commit7d5055276a22a91de71104775ade236051cebefc (patch)
tree970e5668c3ce454473eef2a760c9b969748dbb6b /test
parent7a23eb345eb78c928e7d59be4cdc917d63d2a9f9 (diff)
downloadexim4-7d5055276a22a91de71104775ade236051cebefc.tar.gz
Regex compile cacheing
Diffstat (limited to 'test')
-rw-r--r--test/confs/063237
-rw-r--r--test/log/06325
-rw-r--r--test/scripts/0000-Basic/063239
-rw-r--r--test/stderr/00028
-rw-r--r--test/stderr/018327
-rw-r--r--test/stderr/03863
-rw-r--r--test/stderr/03883
-rw-r--r--test/stderr/03983
-rw-r--r--test/stderr/04323
-rw-r--r--test/stderr/0471183
-rw-r--r--test/stderr/05446
-rw-r--r--test/stderr/0632908
-rw-r--r--test/stderr/34003
-rw-r--r--test/stderr/50054
-rw-r--r--test/stderr/50061
-rw-r--r--test/stderr/54109
-rw-r--r--test/stderr/54209
17 files changed, 1251 insertions, 0 deletions
diff --git a/test/confs/0632 b/test/confs/0632
new file mode 100644
index 000000000..55592bf3b
--- /dev/null
+++ b/test/confs/0632
@@ -0,0 +1,37 @@
+# Exim test configuration 0632
+
+.include DIR/aux-var/std_conf_prefix
+
+primary_hostname = myhost.test.ex
+queue_only
+
+# ----- Main settings -----
+
+acl_smtp_rcpt = chk_rcpt
+
+# ----- ACL -----
+
+begin acl
+
+chk_rcpt:
+ # We're doing these to see what REs the daemon compiles, in stderr
+ warn domains = ^nomatch_list
+ logwrite = should not match RE in list
+
+ warn condition = ${if match {a_random_string} {static_RE}}
+ logwrite = should not match RE in match cond
+ warn condition = ${if match {a_random_string} {tricky_static_RE\$}}
+ logwrite = should not match RE in match cond
+ warn condition = ${if match {a_random_string} {pid=${pid} uncacheable_RE}}
+ logwrite = should not match RE in match cond
+ accept
+
+# ----- Routers -----
+
+begin routers
+
+r0:
+ driver = redirect
+ data = :blackhole:
+#
+# End
diff --git a/test/log/0632 b/test/log/0632
new file mode 100644
index 000000000..fec06c918
--- /dev/null
+++ b/test/log/0632
@@ -0,0 +1,5 @@
+
+******** SERVER ********
+1999-03-02 09:44:33 exim x.yz daemon started: pid=p1234, no queue runs, listening for SMTP on port PORT_D
+1999-03-02 09:44:33 10HmaX-0005vi-00 <= CALLER@test.ex H=(test.ex) [127.0.0.1] P=smtp S=sss
+1999-03-02 09:44:33 10HmaY-0005vi-00 <= CALLER@test.ex H=(test.ex) [127.0.0.1] P=smtp S=sss
diff --git a/test/scripts/0000-Basic/0632 b/test/scripts/0000-Basic/0632
new file mode 100644
index 000000000..4bdefca0b
--- /dev/null
+++ b/test/scripts/0000-Basic/0632
@@ -0,0 +1,39 @@
+# regex caching
+#
+exim -d-all+queue_run+expand+lookup -DSERVER=server -bd -oX PORT_D
+****
+#
+client 127.0.0.1 PORT_D
+??? 220
+HELO test.ex
+??? 250
+MAIL FROM:<CALLER@test.ex>
+??? 250
+RCPT TO:<dest_1@test.ex>
+??? 250
+DATA
+??? 354
+.
+??? 250
+QUIT
+??? 221
+****
+client 127.0.0.1 PORT_D
+??? 220
+HELO test.ex
+??? 250
+MAIL FROM:<CALLER@test.ex>
+??? 250
+RCPT TO:<dest_2@test.ex>
+??? 250
+DATA
+??? 354
+.
+??? 250
+QUIT
+??? 221
+****
+#
+killdaemon
+no_msglog_check
+no_stdout_check
diff --git a/test/stderr/0002 b/test/stderr/0002
index 8f6bf8720..2f48f709f 100644
--- a/test/stderr/0002
+++ b/test/stderr/0002
@@ -26,6 +26,9 @@ dropping to exim gid; retaining priv uid
├considering: }{$2$1}fail}
├──expanding: \N^([ab]+)(\w+)$\N
╰─────result: ^([ab]+)(\w+)$
+ compiled RE '^([ab]+)(\w+)$' not found in local cache
+ compiling RE '^([ab]+)(\w+)$'
+ compiled RE '^([ab]+)(\w+)$' saved in local cache
├──condition: match{abcd}{\N^([ab]+)(\w+)$\N}
├─────result: true
╭considering: $2$1}fail}
@@ -49,6 +52,7 @@ dropping to exim gid; retaining priv uid
├considering: }{$2$1}fail}
├──expanding: \N^([ab]+)(\w+)$\N
╰─────result: ^([ab]+)(\w+)$
+ compiled RE '^([ab]+)(\w+)$' found in local cache
├──condition: match{wxyz}{\N^([ab]+)(\w+)$\N}
├─────result: false
╭───scanning: $2$1}fail}
@@ -151,6 +155,9 @@ dropping to exim gid; retaining priv uid
|considering: }{$2$1}fail}
|--expanding: \N^([ab]+)(\w+)$\N
\_____result: ^([ab]+)(\w+)$
+ compiled RE '^([ab]+)(\w+)$' not found in local cache
+ compiling RE '^([ab]+)(\w+)$'
+ compiled RE '^([ab]+)(\w+)$' saved in local cache
|--condition: match{abcd}{\N^([ab]+)(\w+)$\N}
|-----result: true
/considering: $2$1}fail}
@@ -174,6 +181,7 @@ dropping to exim gid; retaining priv uid
|considering: }{$2$1}fail}
|--expanding: \N^([ab]+)(\w+)$\N
\_____result: ^([ab]+)(\w+)$
+ compiled RE '^([ab]+)(\w+)$' found in local cache
|--condition: match{wxyz}{\N^([ab]+)(\w+)$\N}
|-----result: false
/---scanning: $2$1}fail}
diff --git a/test/stderr/0183 b/test/stderr/0183
index 2e2969aaa..63a312565 100644
--- a/test/stderr/0183
+++ b/test/stderr/0183
@@ -16,6 +16,8 @@ routing userx@test.again.dns
--------> srv router <--------
local_part=userx domain=test.again.dns
checking local_parts
+compiled caseless RE '^srv' not found in local cache
+compiled RE '^srv' saved in local cache
userx in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -47,6 +49,7 @@ routing abcd@test.again.dns
--------> srv router <--------
local_part=abcd domain=test.again.dns
checking local_parts
+compiled caseless RE '^srv' found in local cache
abcd in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -74,6 +77,7 @@ routing abcd@ten-1.test.ex
--------> srv router <--------
local_part=abcd domain=ten-1.test.ex
checking local_parts
+compiled caseless RE '^srv' found in local cache
abcd in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -117,6 +121,7 @@ routing usery@test.again.dns
--------> srv router <--------
local_part=usery domain=test.again.dns
checking local_parts
+compiled caseless RE '^srv' found in local cache
usery in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -150,6 +155,7 @@ routing userz@test.again.dns
--------> srv router <--------
local_part=userz domain=test.again.dns
checking local_parts
+compiled caseless RE '^srv' found in local cache
userz in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -178,6 +184,7 @@ routing xyz@ten-1.test.ex
--------> srv router <--------
local_part=xyz domain=ten-1.test.ex
checking local_parts
+compiled caseless RE '^srv' found in local cache
xyz in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -226,6 +233,8 @@ routing userx@test.fail.dns
--------> srv router <--------
local_part=userx domain=test.fail.dns
checking local_parts
+compiled caseless RE '^srv' not found in local cache
+compiled RE '^srv' saved in local cache
userx in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -256,6 +265,7 @@ routing abcd@test.fail.dns
--------> srv router <--------
local_part=abcd domain=test.fail.dns
checking local_parts
+compiled caseless RE '^srv' found in local cache
abcd in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -283,6 +293,7 @@ routing abcd@ten-1.test.ex
--------> srv router <--------
local_part=abcd domain=ten-1.test.ex
checking local_parts
+compiled caseless RE '^srv' found in local cache
abcd in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -326,6 +337,7 @@ routing usery@test.fail.dns
--------> srv router <--------
local_part=usery domain=test.fail.dns
checking local_parts
+compiled caseless RE '^srv' found in local cache
usery in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -358,6 +370,7 @@ routing userz@test.fail.dns
--------> srv router <--------
local_part=userz domain=test.fail.dns
checking local_parts
+compiled caseless RE '^srv' found in local cache
userz in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -386,6 +399,7 @@ routing xyz@ten-1.test.ex
--------> srv router <--------
local_part=xyz domain=ten-1.test.ex
checking local_parts
+compiled caseless RE '^srv' found in local cache
xyz in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -434,6 +448,8 @@ routing userx@nonexist.test.ex
--------> srv router <--------
local_part=userx domain=nonexist.test.ex
checking local_parts
+compiled caseless RE '^srv' not found in local cache
+compiled RE '^srv' saved in local cache
userx in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -466,6 +482,7 @@ routing abcd@nonexist.test.ex
--------> srv router <--------
local_part=abcd domain=nonexist.test.ex
checking local_parts
+compiled caseless RE '^srv' found in local cache
abcd in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -494,6 +511,7 @@ routing abcd@ten-1.test.ex
--------> srv router <--------
local_part=abcd domain=ten-1.test.ex
checking local_parts
+compiled caseless RE '^srv' found in local cache
abcd in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -537,6 +555,7 @@ routing usery@nonexist.test.ex
--------> srv router <--------
local_part=usery domain=nonexist.test.ex
checking local_parts
+compiled caseless RE '^srv' found in local cache
usery in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -570,6 +589,7 @@ routing userz@nonexist.test.ex
--------> srv router <--------
local_part=userz domain=nonexist.test.ex
checking local_parts
+compiled caseless RE '^srv' found in local cache
userz in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -598,6 +618,7 @@ routing xyz@ten-1.test.ex
--------> srv router <--------
local_part=xyz domain=ten-1.test.ex
checking local_parts
+compiled caseless RE '^srv' found in local cache
xyz in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -646,6 +667,8 @@ routing srv@test.again.dns
--------> srv router <--------
local_part=srv domain=test.again.dns
checking local_parts
+compiled caseless RE '^srv' not found in local cache
+compiled RE '^srv' saved in local cache
srv in "^srv"? yes (matched "^srv")
calling srv router
srv router called for srv@test.again.dns
@@ -668,6 +691,7 @@ routing srv@test.fail.dns
--------> srv router <--------
local_part=srv domain=test.fail.dns
checking local_parts
+compiled caseless RE '^srv' found in local cache
srv in "^srv"? yes (matched "^srv")
calling srv router
srv router called for srv@test.fail.dns
@@ -711,6 +735,8 @@ routing userx@nonexist.example.com
--------> srv router <--------
local_part=userx domain=nonexist.example.com
checking local_parts
+compiled caseless RE '^srv' not found in local cache
+compiled RE '^srv' saved in local cache
userx in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
@@ -743,6 +769,7 @@ routing userd@nonexist.example.com
--------> srv router <--------
local_part=userd domain=nonexist.example.com
checking local_parts
+compiled caseless RE '^srv' found in local cache
userd in "^srv"? no (end of list)
srv router skipped: local_parts mismatch
--------> useryz router <--------
diff --git a/test/stderr/0386 b/test/stderr/0386
index e4275b92f..6b675d4ab 100644
--- a/test/stderr/0386
+++ b/test/stderr/0386
@@ -50,6 +50,8 @@ check acl = TESTSUITE/aux-fixed/0386.acl1
accept: condition test failed in ACL "TESTSUITE/aux-fixed/0386.acl1"
processing "deny" (TESTSUITE/test-config 44)
check local_parts = ^.*[@%!/|]
+ compiled caseless RE '^.*[@%!/|]' not found in local cache
+ compiled RE '^.*[@%!/|]' saved in local cache
1 in "^.*[@%!/|]"? no (end of list)
deny: condition test failed in ACL "TESTSUITE/aux-fixed/0386.acl1"
processing "require" (TESTSUITE/test-config 44)
@@ -106,6 +108,7 @@ check acl = TESTSUITE/aux-fixed/0386.acl1
accept: condition test failed in ACL "TESTSUITE/aux-fixed/0386.acl1"
processing "deny" (TESTSUITE/test-config 44)
check local_parts = ^.*[@%!/|]
+ compiled caseless RE '^.*[@%!/|]' found in local cache
1 in "^.*[@%!/|]"? no (end of list)
deny: condition test failed in ACL "TESTSUITE/aux-fixed/0386.acl1"
processing "require" (TESTSUITE/test-config 44)
diff --git a/test/stderr/0388 b/test/stderr/0388
index 49b407430..c3c11ca75 100644
--- a/test/stderr/0388
+++ b/test/stderr/0388
@@ -87,6 +87,9 @@ Connecting to 127.0.0.1 [127.0.0.1]:PORT_S ... connected
SMTP>> EHLO myhost.test.ex
cmd buf flush ddd bytes
SMTP<< 250 OK
+ compiled RE '.outlook.com$' not found in local cache
+ compiling RE '.outlook.com$'
+ compiled RE '.outlook.com$' saved in local cache
127.0.0.1 in hosts_require_auth? no (option unset)
SMTP>> MAIL FROM:<CALLER@myhost.test.ex>
cmd buf flush ddd bytes
diff --git a/test/stderr/0398 b/test/stderr/0398
index 6ca63ed96..bdd3940ae 100644
--- a/test/stderr/0398
+++ b/test/stderr/0398
@@ -136,6 +136,9 @@ Connecting to 127.0.0.1 [127.0.0.1]:PORT_S ... connected
SMTP>> EHLO mail.test.ex
cmd buf flush ddd bytes
SMTP<< 250 OK
+ compiled RE '.outlook.com$' not found in local cache
+ compiling RE '.outlook.com$'
+ compiled RE '.outlook.com$' saved in local cache
not using PIPELINING
not using DSN
127.0.0.1 in hosts_require_auth? no (option unset)
diff --git a/test/stderr/0432 b/test/stderr/0432
index b29e326c6..be534ca18 100644
--- a/test/stderr/0432
+++ b/test/stderr/0432
@@ -103,6 +103,9 @@ Connecting to 127.0.0.1 [127.0.0.1]:PORT_S ... connected
SMTP>> EHLO myhost.test.ex
cmd buf flush ddd bytes
SMTP<< 250 OK
+ compiled RE '.outlook.com$' not found in local cache
+ compiling RE '.outlook.com$'
+ compiled RE '.outlook.com$' saved in local cache
not using PIPELINING
not using DSN
127.0.0.1 in hosts_require_auth? no (option unset)
diff --git a/test/stderr/0471 b/test/stderr/0471
index 0c170e1bc..7e4d62809 100644
--- a/test/stderr/0471
+++ b/test/stderr/0471
@@ -100,6 +100,8 @@ To: random@test.example,
qualify & rewrite recipients list
address match test: subject=r1@test.ex pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' not found in local cache
+ compiled RE '^.{40,}@*' saved in local cache
r1@test.ex in "^.{40,}@*"? no (end of list)
address match test: subject=r1@test.ex pattern=*@*
test.ex in "*"? yes (matched "*")
@@ -125,6 +127,7 @@ qualify & rewrite recipients list
lookup failed
global rewrite rules
address match test: subject=CALLER@myhost.test.ex pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
CALLER@myhost.test.ex in "^.{40,}@*"? no (end of list)
address match test: subject=CALLER@myhost.test.ex pattern=*@*
myhost.test.ex in "*"? yes (matched "*")
@@ -239,6 +242,7 @@ rewrite headers
random@test.exam
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -421,6 +425,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -602,6 +607,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -783,6 +789,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -964,6 +971,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -1145,6 +1153,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -1326,6 +1335,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -1507,6 +1517,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -1688,6 +1699,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -1869,6 +1881,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -2049,6 +2062,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -2229,6 +2243,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -2409,6 +2424,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -2589,6 +2605,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -2769,6 +2786,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -2949,6 +2967,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -3129,6 +3148,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -3309,6 +3329,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -3489,6 +3510,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -3669,6 +3691,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -3849,6 +3872,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -4029,6 +4053,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -4209,6 +4234,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -4388,6 +4414,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -4567,6 +4594,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -4746,6 +4774,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -4925,6 +4954,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -5104,6 +5134,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -5283,6 +5314,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -5462,6 +5494,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -5641,6 +5674,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -5820,6 +5854,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -5999,6 +6034,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -6178,6 +6214,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -6357,6 +6394,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -6535,6 +6573,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -6713,6 +6752,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -6891,6 +6931,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -7069,6 +7110,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -7247,6 +7289,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -7425,6 +7468,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -7603,6 +7647,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -7781,6 +7826,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -7959,6 +8005,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -8137,6 +8184,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -8315,6 +8363,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -8493,6 +8542,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -8671,6 +8721,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -8848,6 +8899,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -9025,6 +9077,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -9202,6 +9255,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -9379,6 +9433,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -9556,6 +9611,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -9733,6 +9789,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -9910,6 +9967,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -10087,6 +10145,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -10264,6 +10323,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -10441,6 +10501,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -10618,6 +10679,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -10795,6 +10857,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -10971,6 +11034,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -11147,6 +11211,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -11323,6 +11388,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -11499,6 +11565,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -11675,6 +11742,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -11851,6 +11919,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -12027,6 +12096,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -12203,6 +12273,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -12379,6 +12450,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -12555,6 +12627,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -12731,6 +12804,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -12907,6 +12981,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -13083,6 +13158,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -13258,6 +13334,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -13433,6 +13510,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -13608,6 +13686,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -13783,6 +13862,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -13958,6 +14038,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -14133,6 +14214,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -14308,6 +14390,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -14483,6 +14566,7 @@ remainder: random@test.example,
random@test.exa
**** debug string too long - truncated ****
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -14658,6 +14742,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -14832,6 +14917,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -15005,6 +15091,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -15177,6 +15264,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -15348,6 +15436,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -15518,6 +15607,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -15687,6 +15777,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -15855,6 +15946,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -16022,6 +16114,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -16188,6 +16281,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -16353,6 +16447,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -16517,6 +16612,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -16680,6 +16776,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -16842,6 +16939,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -17003,6 +17101,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -17163,6 +17262,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -17322,6 +17422,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -17480,6 +17581,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -17637,6 +17739,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -17793,6 +17896,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -17948,6 +18052,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -18102,6 +18207,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -18255,6 +18361,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -18407,6 +18514,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -18558,6 +18666,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -18708,6 +18817,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -18857,6 +18967,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -19005,6 +19116,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -19152,6 +19264,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -19298,6 +19411,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -19443,6 +19557,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -19587,6 +19702,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -19730,6 +19846,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -19872,6 +19989,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -20013,6 +20131,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -20153,6 +20272,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -20292,6 +20412,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -20430,6 +20551,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -20567,6 +20689,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -20703,6 +20826,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -20838,6 +20962,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -20972,6 +21097,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -21105,6 +21231,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -21237,6 +21364,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -21368,6 +21496,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -21498,6 +21627,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -21627,6 +21757,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -21755,6 +21886,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -21882,6 +22014,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -22008,6 +22141,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -22133,6 +22267,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -22257,6 +22392,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -22380,6 +22516,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -22502,6 +22639,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -22623,6 +22761,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -22743,6 +22882,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -22862,6 +23002,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -22980,6 +23121,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -23097,6 +23239,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -23213,6 +23356,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -23328,6 +23472,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -23442,6 +23587,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -23555,6 +23701,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -23667,6 +23814,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -23778,6 +23926,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -23888,6 +24037,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -23997,6 +24147,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -24105,6 +24256,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -24212,6 +24364,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -24318,6 +24471,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -24423,6 +24577,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -24527,6 +24682,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -24630,6 +24786,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -24732,6 +24889,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -24833,6 +24991,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -24933,6 +25092,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -25032,6 +25192,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -25130,6 +25291,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -25227,6 +25389,7 @@ remainder: random@test.example,
random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -25323,6 +25486,7 @@ To: random@rwtest.example,
remainder: random@test.example,
random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -25418,6 +25582,7 @@ To: random@rwtest.example,
**** debug string too long - truncated ****
remainder: random@test.example
address match test: subject=random@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
random@test.example in "^.{40,}@*"? no (end of list)
address match test: subject=random@test.example pattern=*@*
test.example in "*"? yes (matched "*")
@@ -25515,6 +25680,7 @@ remainder:
rewrite_one_header: type=F:
From: CALLER_NAME <CALLER@myhost.test.ex>
address match test: subject=CALLER@myhost.test.ex pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
CALLER@myhost.test.ex in "^.{40,}@*"? no (end of list)
address match test: subject=CALLER@myhost.test.ex pattern=*@*
myhost.test.ex in "*"? yes (matched "*")
@@ -25744,6 +25910,8 @@ To: localpart_with_056_chars_56789012345678901234567890123456@test.example
qualify & rewrite recipients list
address match test: subject=r2@test.ex pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' not found in local cache
+ compiled RE '^.{40,}@*' saved in local cache
r2@test.ex in "^.{40,}@*"? no (end of list)
address match test: subject=r2@test.ex pattern=*@*
test.ex in "*"? yes (matched "*")
@@ -25769,6 +25937,7 @@ qualify & rewrite recipients list
lookup failed
global rewrite rules
address match test: subject=CALLER@myhost.test.ex pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
CALLER@myhost.test.ex in "^.{40,}@*"? no (end of list)
address match test: subject=CALLER@myhost.test.ex pattern=*@*
myhost.test.ex in "*"? yes (matched "*")
@@ -25804,6 +25973,7 @@ rewrite headers
rewrite_one_header: type=T:
To: localpart_with_056_chars_56789012345678901234567890123456@test.example
address match test: subject=localpart_with_056_chars_56789012345678901234567890123456@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
localpart_with_056_chars_56789012345678901234567890123456@test.example in "^.{40,}@*"? yes (matched "^.{40,}@*")
LOG: address_rewrite MAIN
"localpart_with_056_chars_56789012345678901234567890123456@test.example" from to: rewritten as "deny_me@test.example" by rule 1
@@ -25831,6 +26001,7 @@ remainder:
rewrite_one_header: type=F:
From: CALLER_NAME <CALLER@myhost.test.ex>
address match test: subject=CALLER@myhost.test.ex pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
CALLER@myhost.test.ex in "^.{40,}@*"? no (end of list)
address match test: subject=CALLER@myhost.test.ex pattern=*@*
myhost.test.ex in "*"? yes (matched "*")
@@ -25904,6 +26075,8 @@ To: localpart_with_236_chars_567890123456789012345678901234567890123456789012345
qualify & rewrite recipients list
address match test: subject=r3@test.ex pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' not found in local cache
+ compiled RE '^.{40,}@*' saved in local cache
r3@test.ex in "^.{40,}@*"? no (end of list)
address match test: subject=r3@test.ex pattern=*@*
test.ex in "*"? yes (matched "*")
@@ -25929,6 +26102,7 @@ qualify & rewrite recipients list
lookup failed
global rewrite rules
address match test: subject=CALLER@myhost.test.ex pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
CALLER@myhost.test.ex in "^.{40,}@*"? no (end of list)
address match test: subject=CALLER@myhost.test.ex pattern=*@*
myhost.test.ex in "*"? yes (matched "*")
@@ -25964,6 +26138,7 @@ rewrite headers
rewrite_one_header: type=T:
To: localpart_with_236_chars_56789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456@test.example
address match test: subject=localpart_with_236_chars_56789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456@test.example pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
localpart_with_236_chars_56789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456@test.example in "^.{40,}@*"? yes (matched "^.{40,}@*")
LOG: address_rewrite MAIN
"localpart_with_236_chars_56789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456@test.example" from to: rewritten as "deny_me@test.example" by rule 1
@@ -25991,6 +26166,7 @@ remainder:
rewrite_one_header: type=F:
From: CALLER_NAME <CALLER@myhost.test.ex>
address match test: subject=CALLER@myhost.test.ex pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
CALLER@myhost.test.ex in "^.{40,}@*"? no (end of list)
address match test: subject=CALLER@myhost.test.ex pattern=*@*
myhost.test.ex in "*"? yes (matched "*")
@@ -26064,6 +26240,8 @@ To: localpart_with_256_chars_567890123456789012345678901234567890123456789012345
qualify & rewrite recipients list
address match test: subject=r4@test.ex pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' not found in local cache
+ compiled RE '^.{40,}@*' saved in local cache
r4@test.ex in "^.{40,}@*"? no (end of list)
address match test: subject=r4@test.ex pattern=*@*
test.ex in "*"? yes (matched "*")
@@ -26089,6 +26267,7 @@ qualify & rewrite recipients list
lookup failed
global rewrite rules
address match test: subject=CALLER@myhost.test.ex pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
CALLER@myhost.test.ex in "^.{40,}@*"? no (end of list)
address match test: subject=CALLER@myhost.test.ex pattern=*@*
myhost.test.ex in "*"? yes (matched "*")
@@ -26148,6 +26327,8 @@ To: undisclosed recpients:;
qualify & rewrite recipients list
address match test: subject=r5@test.ex pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' not found in local cache
+ compiled RE '^.{40,}@*' saved in local cache
r5@test.ex in "^.{40,}@*"? no (end of list)
address match test: subject=r5@test.ex pattern=*@*
test.ex in "*"? yes (matched "*")
@@ -26173,6 +26354,7 @@ qualify & rewrite recipients list
lookup failed
global rewrite rules
address match test: subject=CALLER@myhost.test.ex pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
CALLER@myhost.test.ex in "^.{40,}@*"? no (end of list)
address match test: subject=CALLER@myhost.test.ex pattern=*@*
myhost.test.ex in "*"? yes (matched "*")
@@ -26210,6 +26392,7 @@ rewrite headers
rewrite_one_header: type=F:
From: CALLER_NAME <CALLER@myhost.test.ex>
address match test: subject=CALLER@myhost.test.ex pattern=^.{40,}@*
+ compiled RE '^.{40,}@*' found in local cache
CALLER@myhost.test.ex in "^.{40,}@*"? no (end of list)
address match test: subject=CALLER@myhost.test.ex pattern=*@*
myhost.test.ex in "*"? yes (matched "*")
diff --git a/test/stderr/0544 b/test/stderr/0544
index 6f298e2f1..2d9f129c0 100644
--- a/test/stderr/0544
+++ b/test/stderr/0544
@@ -363,6 +363,9 @@ LOG: MAIN
├considering: } }{ match{$h_auto-submitted:}{(?i)auto-generated|auto-replied} }} {no}{yes}}
├──expanding: (?i)bulk|list|junk
╰─────result: (?i)bulk|list|junk
+ compiled RE '(?i)bulk|list|junk' not found in local cache
+ compiling RE '(?i)bulk|list|junk'
+ compiled RE '(?i)bulk|list|junk' saved in local cache
╭considering: $h_auto-submitted:}{(?i)auto-generated|auto-replied} }} {no}{yes}}
├considering: }{(?i)auto-generated|auto-replied} }} {no}{yes}}
├──expanding: $h_auto-submitted:
@@ -372,6 +375,9 @@ LOG: MAIN
├considering: } }} {no}{yes}}
├──expanding: (?i)auto-generated|auto-replied
╰─────result: (?i)auto-generated|auto-replied
+ compiled RE '(?i)auto-generated|auto-replied' not found in local cache
+ compiling RE '(?i)auto-generated|auto-replied'
+ compiled RE '(?i)auto-generated|auto-replied' saved in local cache
├──condition: or {{ !eq{$h_list-id:$h_list-post:$h_list-subscribe:}{} }{ match{$h_precedence:}{(?i)bulk|list|junk} }{ match{$h_auto-submitted:}{(?i)auto-generated|auto-replied} }}
├─────result: false
╭───scanning: no}{yes}}
diff --git a/test/stderr/0632 b/test/stderr/0632
new file mode 100644
index 000000000..eca5a279e
--- /dev/null
+++ b/test/stderr/0632
@@ -0,0 +1,908 @@
+
+******** SERVER ********
+Exim version x.yz ....
+adding SSLKEYLOGFILE=TESTSUITE/spool/sslkeys
+configuration file is TESTSUITE/test-config
+admin user
+dropping to exim gid; retaining priv uid
+daemon_smtp_port overridden by -oX:
+ <: 1225
+creating notifier socket
+ ╭considering: $spool_directory/exim_daemon_notify
+ ├considering: /exim_daemon_notify
+ ├───────text: /exim_daemon_notify
+ ├──expanding: $spool_directory/exim_daemon_notify
+ ╰─────result: TESTSUITE/spool/exim_daemon_notify
+ TESTSUITE/spool/exim_daemon_notify
+listening on all interfaces (IPv6) port PORT_D
+listening on all interfaces (IPv4) port PORT_D
+pid written to TESTSUITE/spool/exim-daemon.pid
+LOG: MAIN
+ exim x.yz daemon started: pid=p1234, no queue runs, listening for SMTP on port PORT_D
+daemon running with uid=EXIM_UID gid=EXIM_GID euid=EXIM_UID egid=EXIM_GID
+Listening...
+Connection request from 127.0.0.1 port sssss
+search_tidyup called
+p1235 Process p1235 is handling incoming connection from [127.0.0.1]
+p1235 ╭considering: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+p1235 ├considering: ESMTP Exim $version_number $tod_full
+p1235 ├───────text: ESMTP Exim
+p1235 ├considering: $version_number $tod_full
+p1235 ├considering: $tod_full
+p1235 ├───────text:
+p1235 ├considering: $tod_full
+p1235 ├──expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+p1235 ╰─────result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+p1235 Process p1235 is ready for new message
+p1235 compiled caseless RE '^nomatch_list' not found in local cache
+p1235 compiled RE '^nomatch_list' saved in local cache
+p1235 sending RE '^nomatch_list' to daemon
+p1235 ╭considering: $spool_directory/exim_daemon_notify
+p1235 ├considering: /exim_daemon_notify
+p1235 ├───────text: /exim_daemon_notify
+p1235 ├──expanding: $spool_directory/exim_daemon_notify
+p1235 ╰─────result: TESTSUITE/spool/exim_daemon_notify
+p1235 ╭considering: ${if match {a_random_string} {static_RE}}
+p1235 ╭considering: a_random_string} {static_RE}}
+p1235 ├───────text: a_random_string
+p1235 ├considering: } {static_RE}}
+p1235 ├──expanding: a_random_string
+p1235 ╰─────result: a_random_string
+p1235 ╭considering: static_RE}}
+p1235 ├───────text: static_RE
+p1235 ├considering: }}
+p1235 ├──expanding: static_RE
+p1235 ╰─────result: static_RE
+p1235 compiled RE 'static_RE' not found in local cache
+p1235 compiling RE 'static_RE'
+p1235 compiled RE 'static_RE' saved in local cache
+p1235 sending RE 'static_RE' to daemon
+p1235 ╭considering: $spool_directory/exim_daemon_notify
+p1235 ├considering: /exim_daemon_notify
+p1235 ├───────text: /exim_daemon_notify
+p1235 ├──expanding: $spool_directory/exim_daemon_notify
+p1235 ╰─────result: TESTSUITE/spool/exim_daemon_notify
+p1235 ├──condition: match {a_random_string} {static_RE}
+p1235 ├─────result: false
+p1235 ├──expanding: ${if match {a_random_string} {static_RE}}
+p1235 ╰─────result:
+p1235 ╭considering: ${if match {a_random_string} {tricky_static_RE\$}}
+p1235 ╭considering: a_random_string} {tricky_static_RE\$}}
+p1235 ├───────text: a_random_string
+p1235 ├considering: } {tricky_static_RE\$}}
+p1235 ├──expanding: a_random_string
+p1235 ╰─────result: a_random_string
+p1235 ╭considering: tricky_static_RE\$}}
+p1235 ├───────text: tricky_static_RE
+p1235 ├considering: \$}}
+p1235 ├backslashed: '\$'
+p1235 ├considering: }}
+p1235 ├──expanding: tricky_static_RE\$
+p1235 ╰─────result: tricky_static_RE$
+p1235 compiled RE 'tricky_static_RE$' not found in local cache
+p1235 compiling RE 'tricky_static_RE$'
+p1235 compiled RE 'tricky_static_RE$' saved in local cache
+p1235 sending RE 'tricky_static_RE$' to daemon
+p1235 ╭considering: $spool_directory/exim_daemon_notify
+p1235 ├considering: /exim_daemon_notify
+p1235 ├───────text: /exim_daemon_notify
+p1235 ├──expanding: $spool_directory/exim_daemon_notify
+p1235 ╰─────result: TESTSUITE/spool/exim_daemon_notify
+p1235 ├──condition: match {a_random_string} {tricky_static_RE\$}
+p1235 ├─────result: false
+p1235 ├──expanding: ${if match {a_random_string} {tricky_static_RE\$}}
+p1235 ╰─────result:
+p1235 ╭considering: ${if match {a_random_string} {pid=${pid} uncacheable_RE}}
+p1235 ╭considering: a_random_string} {pid=${pid} uncacheable_RE}}
+p1235 ├───────text: a_random_string
+p1235 ├considering: } {pid=${pid} uncacheable_RE}}
+p1235 ├──expanding: a_random_string
+p1235 ╰─────result: a_random_string
+p1235 ╭considering: pid=${pid} uncacheable_RE}}
+p1235 ├───────text: pid=
+p1235 ├considering: ${pid} uncacheable_RE}}
+p1235 ├considering: uncacheable_RE}}
+p1235 ├───────text: uncacheable_RE
+p1235 ├considering: }}
+p1235 ├──expanding: pid=${pid} uncacheable_RE
+p1235 ╰─────result: pid=p1235 uncacheable_RE
+p1235 compiling RE 'pid=p1235 uncacheable_RE'
+p1235 ├──condition: match {a_random_string} {pid=${pid} uncacheable_RE}
+p1235 ├─────result: false
+p1235 ├──expanding: ${if match {a_random_string} {pid=${pid} uncacheable_RE}}
+p1235 ╰─────result:
+p1235 search_tidyup called
+p1235 search_tidyup called
+p1235 ╭considering: ${tod_full}
+p1235 ├──expanding: ${tod_full}
+p1235 ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
+p1235 ╭considering: Received: ${if def:sender_rcvhost {from $sender_rcvhost
+p1235 }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1235 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text: Received:
+p1235 ├considering: ${if def:sender_rcvhost {from $sender_rcvhost
+p1235 }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1235 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├──condition: def:sender_rcvhost
+p1235 ├─────result: true
+p1235 ╭considering: from $sender_rcvhost
+p1235 }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1235 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text: from
+p1235 ├considering: $sender_rcvhost
+p1235 }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1235 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├considering:
+p1235 }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1235 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text:
+p1235
+p1235 ├considering: }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1235 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├──expanding: from $sender_rcvhost
+p1235
+p1235 ╰─────result: from [127.0.0.1] (helo=test.ex)
+p1235
+p1235 ╰──(tainted)
+p1235 ╭───scanning: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1235 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├──condition: def:sender_ident
+p1235 ├─────result: false
+p1235 ╭───scanning: from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1235 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text: from
+p1235 ├───scanning: ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1235 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ╎╭───scanning: $sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1235 ╎ }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 ╎ }}(Exim $version_number)
+p1235 ╎ ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 ╎ }}id $message_exim_id${if def:received_for {
+p1235 ╎ for $received_for}}
+p1235 ╎├───scanning: } }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1235 ╎ }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 ╎ }}(Exim $version_number)
+p1235 ╎ ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 ╎ }}id $message_exim_id${if def:received_for {
+p1235 ╎ for $received_for}}
+p1235 ╎├──expanding: $sender_ident
+p1235 ╎├─────result:
+p1235 ╎╰───skipping: result is not used
+p1235 ├───scanning: }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1235 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text:
+p1235 ├───scanning: }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1235 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├──expanding: from ${quote_local_part:$sender_ident}
+p1235 ├─────result: from
+p1235 ╰───skipping: result is not used
+p1235 ├───item-res:
+p1235 ├───scanning: ${if def:sender_helo_name {(helo=$sender_helo_name)
+p1235 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├──condition: def:sender_helo_name
+p1235 ├─────result: false
+p1235 ╭───scanning: (helo=$sender_helo_name)
+p1235 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text: (helo=
+p1235 ├───scanning: $sender_helo_name)
+p1235 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───scanning: )
+p1235 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text: )
+p1235
+p1235 ├───scanning: }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├──expanding: (helo=$sender_helo_name)
+p1235
+p1235 ├─────result: (helo=)
+p1235
+p1235 ╰───skipping: result is not used
+p1235 ├───item-res:
+p1235 ├───scanning: }}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├──expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1235 }}
+p1235 ├─────result:
+p1235 ╰───skipping: result is not used
+p1235 ├───item-res: from [127.0.0.1] (helo=test.ex)
+p1235
+p1235 ╰──(tainted)
+p1235 ├considering: by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text: by
+p1235 ├considering: $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├considering: ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text:
+p1235 ├considering: ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├──condition: def:received_protocol
+p1235 ├─────result: true
+p1235 ╭considering: with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text: with
+p1235 ├considering: $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├considering: }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text:
+p1235 ├considering: }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├──expanding: with $received_protocol
+p1235 ╰─────result: with smtp
+p1235 ├───item-res: with smtp
+p1235 ╰──(tainted)
+p1235 ├considering: ${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├──expanding: ($tls_in_ver)
+p1235 ├─────result: ()
+p1235 ╰───skipping: result is not used
+p1235 ├───item-res:
+p1235 ╰──(tainted)
+p1235 ├considering: ${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├──condition: def:tls_in_cipher_std
+p1235 ├─────result: false
+p1235 ╭───scanning: tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text: tls
+p1235 ├───scanning: $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───scanning:
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text:
+p1235
+p1235 ├───scanning: }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├──expanding: tls $tls_in_cipher_std
+p1235
+p1235 ├─────result: tls
+p1235
+p1235 ╰───skipping: result is not used
+p1235 ├───item-res:
+p1235 ╰──(tainted)
+p1235 ├considering: (Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text: (Exim
+p1235 ├considering: $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├considering: )
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text: )
+p1235
+p1235 ├considering: ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├──condition: def:sender_address
+p1235 ├─────result: true
+p1235 ╭considering: (envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text: (envelope-from <
+p1235 ├considering: $sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├considering: >)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text: >)
+p1235
+p1235 ├considering: }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├──expanding: (envelope-from <$sender_address>)
+p1235
+p1235 ╰─────result: (envelope-from <CALLER@test.ex>)
+p1235
+p1235 ╰──(tainted)
+p1235 ├───item-res: (envelope-from <CALLER@test.ex>)
+p1235
+p1235 ╰──(tainted)
+p1235 ├considering: id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├───────text: id
+p1235 ├considering: $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ├considering: ${if def:received_for {
+p1235 for $received_for}}
+p1235 ├──condition: def:received_for
+p1235 ├─────result: true
+p1235 ╭considering:
+p1235 for $received_for}}
+p1235 ├───────text:
+p1235 for
+p1235 ├considering: $received_for}}
+p1235 ├considering: }}
+p1235 ├──expanding:
+p1235 for $received_for
+p1235 ╰─────result:
+p1235 for dest_1@test.ex
+p1235 ╰──(tainted)
+p1235 ├───item-res:
+p1235 for dest_1@test.ex
+p1235 ╰──(tainted)
+p1235 ├──expanding: Received: ${if def:sender_rcvhost {from $sender_rcvhost
+p1235 }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1235 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1235 }}(Exim $version_number)
+p1235 ${if def:sender_address {(envelope-from <$sender_address>)
+p1235 }}id $message_exim_id${if def:received_for {
+p1235 for $received_for}}
+p1235 ╰─────result: Received: from [127.0.0.1] (helo=test.ex)
+p1235 by myhost.test.ex with smtp (Exim x.yz)
+p1235 (envelope-from <CALLER@test.ex>)
+p1235 id 10HmaX-0005vi-00
+p1235 for dest_1@test.ex
+p1235 ╰──(tainted)
+p1235 ╭considering: ${tod_full}
+p1235 ├──expanding: ${tod_full}
+p1235 ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
+LOG: MAIN
+ <= CALLER@test.ex H=(test.ex) [127.0.0.1] P=smtp S=sss
+search_tidyup called
+Process p1235 is ready for new message
+LOG: smtp_connection MAIN
+ SMTP connection from (test.ex) [127.0.0.1] closed by QUIT
+p1234 1 SMTP accept process running
+p1234 Listening...
+p1234 daemon_notification from addr ''
+p1234 compiled caseless RE '^nomatch_list' not found in local cache
+p1234 compiling caseless RE '^nomatch_list'
+p1234 compiled RE '^nomatch_list' saved in local cache
+p1234 Listening...
+p1234 daemon_notification from addr ''
+p1234 compiled RE 'static_RE' not found in local cache
+p1234 compiling RE 'static_RE'
+p1234 compiled RE 'static_RE' saved in local cache
+p1234 Listening...
+p1234 daemon_notification from addr ''
+p1234 compiled RE 'tricky_static_RE$' not found in local cache
+p1234 compiling RE 'tricky_static_RE$'
+p1234 compiled RE 'tricky_static_RE$' saved in local cache
+p1234 Listening...
+search_tidyup called
+>>>>>>>>>>>>>>>> Exim pid=p1235 (daemon-accept) terminating with rc=0 >>>>>>>>>>>>>>>>
+p1234 child p1235 ended: status=0x0
+p1234 normal exit, 0
+p1234 0 SMTP accept processes now running
+p1234 Listening...
+p1234 Connection request from 127.0.0.1 port sssss
+p1234 search_tidyup called
+p1236 Process p1236 is handling incoming connection from [127.0.0.1]
+p1236 ╭considering: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+p1236 ├considering: ESMTP Exim $version_number $tod_full
+p1236 ├───────text: ESMTP Exim
+p1236 ├considering: $version_number $tod_full
+p1236 ├considering: $tod_full
+p1236 ├───────text:
+p1236 ├considering: $tod_full
+p1236 ├──expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
+p1236 ╰─────result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+p1236 Process p1236 is ready for new message
+p1236 compiled caseless RE '^nomatch_list' found in local cache
+p1236 ╭considering: ${if match {a_random_string} {static_RE}}
+p1236 ╭considering: a_random_string} {static_RE}}
+p1236 ├───────text: a_random_string
+p1236 ├considering: } {static_RE}}
+p1236 ├──expanding: a_random_string
+p1236 ╰─────result: a_random_string
+p1236 ╭considering: static_RE}}
+p1236 ├───────text: static_RE
+p1236 ├considering: }}
+p1236 ├──expanding: static_RE
+p1236 ╰─────result: static_RE
+p1236 compiled RE 'static_RE' found in local cache
+p1236 ├──condition: match {a_random_string} {static_RE}
+p1236 ├─────result: false
+p1236 ├──expanding: ${if match {a_random_string} {static_RE}}
+p1236 ╰─────result:
+p1236 ╭considering: ${if match {a_random_string} {tricky_static_RE\$}}
+p1236 ╭considering: a_random_string} {tricky_static_RE\$}}
+p1236 ├───────text: a_random_string
+p1236 ├considering: } {tricky_static_RE\$}}
+p1236 ├──expanding: a_random_string
+p1236 ╰─────result: a_random_string
+p1236 ╭considering: tricky_static_RE\$}}
+p1236 ├───────text: tricky_static_RE
+p1236 ├considering: \$}}
+p1236 ├backslashed: '\$'
+p1236 ├considering: }}
+p1236 ├──expanding: tricky_static_RE\$
+p1236 ╰─────result: tricky_static_RE$
+p1236 compiled RE 'tricky_static_RE$' found in local cache
+p1236 ├──condition: match {a_random_string} {tricky_static_RE\$}
+p1236 ├─────result: false
+p1236 ├──expanding: ${if match {a_random_string} {tricky_static_RE\$}}
+p1236 ╰─────result:
+p1236 ╭considering: ${if match {a_random_string} {pid=${pid} uncacheable_RE}}
+p1236 ╭considering: a_random_string} {pid=${pid} uncacheable_RE}}
+p1236 ├───────text: a_random_string
+p1236 ├considering: } {pid=${pid} uncacheable_RE}}
+p1236 ├──expanding: a_random_string
+p1236 ╰─────result: a_random_string
+p1236 ╭considering: pid=${pid} uncacheable_RE}}
+p1236 ├───────text: pid=
+p1236 ├considering: ${pid} uncacheable_RE}}
+p1236 ├considering: uncacheable_RE}}
+p1236 ├───────text: uncacheable_RE
+p1236 ├considering: }}
+p1236 ├──expanding: pid=${pid} uncacheable_RE
+p1236 ╰─────result: pid=p1236 uncacheable_RE
+p1236 compiling RE 'pid=p1236 uncacheable_RE'
+p1236 ├──condition: match {a_random_string} {pid=${pid} uncacheable_RE}
+p1236 ├─────result: false
+p1236 ├──expanding: ${if match {a_random_string} {pid=${pid} uncacheable_RE}}
+p1236 ╰─────result:
+p1236 search_tidyup called
+p1236 search_tidyup called
+p1236 ╭considering: ${tod_full}
+p1236 ├──expanding: ${tod_full}
+p1236 ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
+p1236 ╭considering: Received: ${if def:sender_rcvhost {from $sender_rcvhost
+p1236 }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1236 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text: Received:
+p1236 ├considering: ${if def:sender_rcvhost {from $sender_rcvhost
+p1236 }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1236 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├──condition: def:sender_rcvhost
+p1236 ├─────result: true
+p1236 ╭considering: from $sender_rcvhost
+p1236 }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1236 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text: from
+p1236 ├considering: $sender_rcvhost
+p1236 }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1236 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├considering:
+p1236 }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1236 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text:
+p1236
+p1236 ├considering: }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1236 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├──expanding: from $sender_rcvhost
+p1236
+p1236 ╰─────result: from [127.0.0.1] (helo=test.ex)
+p1236
+p1236 ╰──(tainted)
+p1236 ╭───scanning: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1236 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├──condition: def:sender_ident
+p1236 ├─────result: false
+p1236 ╭───scanning: from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1236 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text: from
+p1236 ├───scanning: ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1236 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ╎╭───scanning: $sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1236 ╎ }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 ╎ }}(Exim $version_number)
+p1236 ╎ ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 ╎ }}id $message_exim_id${if def:received_for {
+p1236 ╎ for $received_for}}
+p1236 ╎├───scanning: } }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1236 ╎ }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 ╎ }}(Exim $version_number)
+p1236 ╎ ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 ╎ }}id $message_exim_id${if def:received_for {
+p1236 ╎ for $received_for}}
+p1236 ╎├──expanding: $sender_ident
+p1236 ╎├─────result:
+p1236 ╎╰───skipping: result is not used
+p1236 ├───scanning: }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1236 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text:
+p1236 ├───scanning: }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1236 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├──expanding: from ${quote_local_part:$sender_ident}
+p1236 ├─────result: from
+p1236 ╰───skipping: result is not used
+p1236 ├───item-res:
+p1236 ├───scanning: ${if def:sender_helo_name {(helo=$sender_helo_name)
+p1236 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├──condition: def:sender_helo_name
+p1236 ├─────result: false
+p1236 ╭───scanning: (helo=$sender_helo_name)
+p1236 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text: (helo=
+p1236 ├───scanning: $sender_helo_name)
+p1236 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───scanning: )
+p1236 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text: )
+p1236
+p1236 ├───scanning: }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├──expanding: (helo=$sender_helo_name)
+p1236
+p1236 ├─────result: (helo=)
+p1236
+p1236 ╰───skipping: result is not used
+p1236 ├───item-res:
+p1236 ├───scanning: }}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├──expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1236 }}
+p1236 ├─────result:
+p1236 ╰───skipping: result is not used
+p1236 ├───item-res: from [127.0.0.1] (helo=test.ex)
+p1236
+p1236 ╰──(tainted)
+p1236 ├considering: by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text: by
+p1236 ├considering: $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├considering: ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text:
+p1236 ├considering: ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├──condition: def:received_protocol
+p1236 ├─────result: true
+p1236 ╭considering: with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text: with
+p1236 ├considering: $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├considering: }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text:
+p1236 ├considering: }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├──expanding: with $received_protocol
+p1236 ╰─────result: with smtp
+p1236 ├───item-res: with smtp
+p1236 ╰──(tainted)
+p1236 ├considering: ${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├──expanding: ($tls_in_ver)
+p1236 ├─────result: ()
+p1236 ╰───skipping: result is not used
+p1236 ├───item-res:
+p1236 ╰──(tainted)
+p1236 ├considering: ${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├──condition: def:tls_in_cipher_std
+p1236 ├─────result: false
+p1236 ╭───scanning: tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text: tls
+p1236 ├───scanning: $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───scanning:
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text:
+p1236
+p1236 ├───scanning: }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├──expanding: tls $tls_in_cipher_std
+p1236
+p1236 ├─────result: tls
+p1236
+p1236 ╰───skipping: result is not used
+p1236 ├───item-res:
+p1236 ╰──(tainted)
+p1236 ├considering: (Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text: (Exim
+p1236 ├considering: $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├considering: )
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text: )
+p1236
+p1236 ├considering: ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├──condition: def:sender_address
+p1236 ├─────result: true
+p1236 ╭considering: (envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text: (envelope-from <
+p1236 ├considering: $sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├considering: >)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text: >)
+p1236
+p1236 ├considering: }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├──expanding: (envelope-from <$sender_address>)
+p1236
+p1236 ╰─────result: (envelope-from <CALLER@test.ex>)
+p1236
+p1236 ╰──(tainted)
+p1236 ├───item-res: (envelope-from <CALLER@test.ex>)
+p1236
+p1236 ╰──(tainted)
+p1236 ├considering: id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├───────text: id
+p1236 ├considering: $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ├considering: ${if def:received_for {
+p1236 for $received_for}}
+p1236 ├──condition: def:received_for
+p1236 ├─────result: true
+p1236 ╭considering:
+p1236 for $received_for}}
+p1236 ├───────text:
+p1236 for
+p1236 ├considering: $received_for}}
+p1236 ├considering: }}
+p1236 ├──expanding:
+p1236 for $received_for
+p1236 ╰─────result:
+p1236 for dest_2@test.ex
+p1236 ╰──(tainted)
+p1236 ├───item-res:
+p1236 for dest_2@test.ex
+p1236 ╰──(tainted)
+p1236 ├──expanding: Received: ${if def:sender_rcvhost {from $sender_rcvhost
+p1236 }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
+p1236 }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
+p1236 }}(Exim $version_number)
+p1236 ${if def:sender_address {(envelope-from <$sender_address>)
+p1236 }}id $message_exim_id${if def:received_for {
+p1236 for $received_for}}
+p1236 ╰─────result: Received: from [127.0.0.1] (helo=test.ex)
+p1236 by myhost.test.ex with smtp (Exim x.yz)
+p1236 (envelope-from <CALLER@test.ex>)
+p1236 id 10HmaY-0005vi-00
+p1236 for dest_2@test.ex
+p1236 ╰──(tainted)
+p1236 ╭considering: ${tod_full}
+p1236 ├──expanding: ${tod_full}
+p1236 ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
+LOG: MAIN
+ <= CALLER@test.ex H=(test.ex) [127.0.0.1] P=smtp S=sss
+search_tidyup called
+Process p1236 is ready for new message
+LOG: smtp_connection MAIN
+ SMTP connection from (test.ex) [127.0.0.1] closed by QUIT
+p1234 1 SMTP accept process running
+p1234 Listening...
+search_tidyup called
+>>>>>>>>>>>>>>>> Exim pid=p1236 (daemon-accept) terminating with rc=0 >>>>>>>>>>>>>>>>
+p1234 child p1236 ended: status=0x0
+p1234 normal exit, 0
+p1234 0 SMTP accept processes now running
+p1234 Listening...
+p1234 SIGTERM/SIGINT seen
+p1234 search_tidyup called
+p1234 >>>>>>>>>>>>>>>> Exim pid=p1234 (daemon) terminating with rc=0 >>>>>>>>>>>>>>>>
diff --git a/test/stderr/3400 b/test/stderr/3400
index 836dab202..49e31375a 100644
--- a/test/stderr/3400
+++ b/test/stderr/3400
@@ -462,6 +462,9 @@ mylogin authenticator server_condition:
$auth1 = userx secret
$1 = userx secret
+++MYLOGIN $1="userx secret" $2="" $3=""
+ compiled RE '^(\S+)\s+(\S+)$' not found in local cache
+ compiling RE '^(\S+)\s+(\S+)$'
+ compiled RE '^(\S+)\s+(\S+)$' saved in local cache
expanded string: yes
SMTP>> 235 Authentication succeeded
SMTP<< quit
diff --git a/test/stderr/5005 b/test/stderr/5005
index c7cc34539..d96971064 100644
--- a/test/stderr/5005
+++ b/test/stderr/5005
@@ -130,6 +130,7 @@ created directory TESTSUITE/test-mail/nofile
created directory TESTSUITE/test-mail/nofile/tmp
created directory TESTSUITE/test-mail/nofile/new
created directory TESTSUITE/test-mail/nofile/cur
+compiling RE '^(?:cur|new|\..*)$'
using regex for maildir directory selection: ^(?:cur|new|\..*)$
looking for maildirsize in TESTSUITE/test-mail/nofile
TESTSUITE/test-mail/nofile/maildirsize does not exist: recalculating
@@ -318,6 +319,7 @@ ensuring maildir directories exist in TESTSUITE/test-mail/userx
created directory TESTSUITE/test-mail/userx/tmp
created directory TESTSUITE/test-mail/userx/new
created directory TESTSUITE/test-mail/userx/cur
+compiling RE '^(?:cur|new|\..*)$'
using regex for maildir directory selection: ^(?:cur|new|\..*)$
looking for maildirsize in TESTSUITE/test-mail/userx
reading quota parameters from maildirsize data
@@ -506,6 +508,7 @@ appendfile: mode=600 notify_comsat=0 quota=500 warning=0
maildir_use_size_file=yes
de-tainting path 'TESTSUITE/test-mail/userx'
ensuring maildir directories exist in TESTSUITE/test-mail/userx
+compiling RE '^(?:cur|new|\..*)$'
using regex for maildir directory selection: ^(?:cur|new|\..*)$
looking for maildirsize in TESTSUITE/test-mail/userx
reading quota parameters from maildirsize data
@@ -711,6 +714,7 @@ appendfile: mode=600 notify_comsat=0 quota=500 warning=0
maildir_use_size_file=yes
de-tainting path 'TESTSUITE/test-mail/userx'
ensuring maildir directories exist in TESTSUITE/test-mail/userx
+compiling RE '^(?:cur|new|\..*)$'
using regex for maildir directory selection: ^(?:cur|new|\..*)$
looking for maildirsize in TESTSUITE/test-mail/userx
reading quota parameters from maildirsize data
diff --git a/test/stderr/5006 b/test/stderr/5006
index 4c7c490b0..4194360f1 100644
--- a/test/stderr/5006
+++ b/test/stderr/5006
@@ -130,6 +130,7 @@ created directory TESTSUITE/test-mail/userx
created directory TESTSUITE/test-mail/userx/tmp
created directory TESTSUITE/test-mail/userx/new
created directory TESTSUITE/test-mail/userx/cur
+compiling RE '^(?:cur|new|\..*)$'
using regex for maildir directory selection: ^(?:cur|new|\..*)$
looking for maildirsize in TESTSUITE/test-mail/userx
TESTSUITE/test-mail/userx/maildirsize does not exist: recalculating
diff --git a/test/stderr/5410 b/test/stderr/5410
index 17168982c..f4fd5654d 100644
--- a/test/stderr/5410
+++ b/test/stderr/5410
@@ -92,6 +92,9 @@ cmd buf flush ddd bytes
├considering: }} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
├──expanding: .outlook.com\$
╰─────result: .outlook.com$
+ compiled RE '.outlook.com$' not found in local cache
+ compiling RE '.outlook.com$'
+ compiled RE '.outlook.com$' saved in local cache
╭───scanning: $item}{\N^250-([\w.]+)\s\N}}} {$1}}
├───scanning: }{\N^250-([\w.]+)\s\N}}} {$1}}
├──expanding: $item
@@ -648,6 +651,9 @@ cmd buf flush ddd bytes
├considering: }} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
├──expanding: .outlook.com\$
╰─────result: .outlook.com$
+ compiled RE '.outlook.com$' not found in local cache
+ compiling RE '.outlook.com$'
+ compiled RE '.outlook.com$' saved in local cache
╭───scanning: $item}{\N^250-([\w.]+)\s\N}}} {$1}}
├───scanning: }{\N^250-([\w.]+)\s\N}}} {$1}}
├──expanding: $item
@@ -1165,6 +1171,9 @@ cmd buf flush ddd bytes
├considering: }} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
├──expanding: .outlook.com\$
╰─────result: .outlook.com$
+ compiled RE '.outlook.com$' not found in local cache
+ compiling RE '.outlook.com$'
+ compiled RE '.outlook.com$' saved in local cache
╭───scanning: $item}{\N^250-([\w.]+)\s\N}}} {$1}}
├───scanning: }{\N^250-([\w.]+)\s\N}}} {$1}}
├──expanding: $item
diff --git a/test/stderr/5420 b/test/stderr/5420
index 241cedf68..2436aa14b 100644
--- a/test/stderr/5420
+++ b/test/stderr/5420
@@ -92,6 +92,9 @@ cmd buf flush ddd bytes
├considering: }} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
├──expanding: .outlook.com\$
╰─────result: .outlook.com$
+ compiled RE '.outlook.com$' not found in local cache
+ compiling RE '.outlook.com$'
+ compiled RE '.outlook.com$' saved in local cache
╭───scanning: $item}{\N^250-([\w.]+)\s\N}}} {$1}}
├───scanning: }{\N^250-([\w.]+)\s\N}}} {$1}}
├──expanding: $item
@@ -649,6 +652,9 @@ cmd buf flush ddd bytes
├considering: }} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
├──expanding: .outlook.com\$
╰─────result: .outlook.com$
+ compiled RE '.outlook.com$' not found in local cache
+ compiling RE '.outlook.com$'
+ compiled RE '.outlook.com$' saved in local cache
╭───scanning: $item}{\N^250-([\w.]+)\s\N}}} {$1}}
├───scanning: }{\N^250-([\w.]+)\s\N}}} {$1}}
├──expanding: $item
@@ -1166,6 +1172,9 @@ cmd buf flush ddd bytes
├considering: }} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
├──expanding: .outlook.com\$
╰─────result: .outlook.com$
+ compiled RE '.outlook.com$' not found in local cache
+ compiling RE '.outlook.com$'
+ compiled RE '.outlook.com$' saved in local cache
╭───scanning: $item}{\N^250-([\w.]+)\s\N}}} {$1}}
├───scanning: }{\N^250-([\w.]+)\s\N}}} {$1}}
├──expanding: $item