Gitweb:
https://git.exim.org/exim.git/commitdiff/ae8f9024d8d4fad31457d758022e3186d782929c
Commit: ae8f9024d8d4fad31457d758022e3186d782929c
Parent: a3970a881934e1fc6be1993bfe544dd17abf6082
Author: Jeremy Harris <jgh146exb@???>
AuthorDate: Tue Oct 2 19:39:55 2018 +0100
Committer: Jeremy Harris <jgh146exb@???>
CommitDate: Tue Oct 2 19:39:55 2018 +0100
Debug: noutf8 selector. Bug 2324
---
doc/doc-docbook/spec.xfpt | 14 +++++-
doc/doc-txt/NewStuff | 2 +
src/src/debug.c | 18 +++++---
src/src/expand.c | 102 +++++++++++++++++++++++++++----------------
src/src/globals.c | 5 ++-
src/src/macros.h | 4 ++
test/scripts/0000-Basic/0002 | 7 +++
test/stderr/0002 | 83 +++++++++++++++++++++++++++++++++++
test/stderr/0275 | 2 +-
test/stderr/0278 | 2 +-
test/stderr/0361 | 2 +-
test/stderr/0386 | 4 +-
test/stderr/0388 | 4 +-
test/stderr/0402 | 2 +-
test/stderr/0403 | 2 +-
test/stderr/0404 | 6 +--
test/stderr/0408 | 2 +-
test/stderr/0487 | 2 +-
test/stderr/2600 | 2 +-
test/stderr/2610 | 2 +-
test/stderr/2620 | 2 +-
test/stderr/5004 | 2 +-
test/stderr/5005 | 8 ++--
test/stderr/5006 | 2 +-
test/stdout/0002 | 6 +++
25 files changed, 219 insertions(+), 68 deletions(-)
diff --git a/doc/doc-docbook/spec.xfpt b/doc/doc-docbook/spec.xfpt
index 1dfa552..c84c9b4 100644
--- a/doc/doc-docbook/spec.xfpt
+++ b/doc/doc-docbook/spec.xfpt
@@ -3620,7 +3620,8 @@ are:
&<<CHAPlocalscan>>&)
&`lookup `& general lookup code and all lookups
&`memory `& memory handling
-&`pid `& add pid to debug output lines
+&`noutf8 `& modifier: avoid UTF-8 line-drawing
+&`pid `& modifier: add pid to debug output lines
&`process_info `& setting info for the process log
&`queue_run `& queue runs
&`receive `& general message reception logic
@@ -3628,7 +3629,7 @@ are:
&`retry `& retry handling
&`rewrite `& address rewriting
&`route `& address routing
-&`timestamp `& add timestamp to debug output lines
+&`timestamp `& modifier: add timestamp to debug output lines
&`tls `& TLS logic
&`transport `& transports
&`uid `& changes of uid/gid and looking up uid/gid
@@ -3660,6 +3661,15 @@ The &`timestamp`& selector causes the current time to be inserted at the start
of all debug output lines. This can be useful when trying to track down delays
in processing.
+.new
+.cindex debugging "UTF-8 in"
+.cindex UTF-8 "in debug output"
+The &`noutf8`& selector disables the use of
+UTF-8 line-drawing characters to group related information.
+When disabled. ascii-art is used instead.
+Using the &`+all`& option does not set this modifier,
+.wen
+
If the &%debug_print%& option is set in any driver, it produces output whenever
any debugging is selected, or if &%-v%& is used.
diff --git a/doc/doc-txt/NewStuff b/doc/doc-txt/NewStuff
index 3f25720..10461aa 100644
--- a/doc/doc-txt/NewStuff
+++ b/doc/doc-txt/NewStuff
@@ -27,6 +27,8 @@ Version 4.92
7. JSON variants of the ${extract } expansion item.
+ 8. A "noutf8" debug option, for disabling the UTF-8 characters in debug output.
+
Version 4.91
--------------
diff --git a/src/src/debug.c b/src/src/debug.c
index 35eb77c..4b07651 100644
--- a/src/src/debug.c
+++ b/src/src/debug.c
@@ -212,11 +212,19 @@ if (indent > 0)
{
int i;
for (i = indent >> 2; i > 0; i--)
- {
- Ustrcpy(debug_ptr, " " UTF8_VERT_2DASH);
- debug_ptr += 6; /* 3 spaces + 3 UTF-8 octets */
- debug_prefix_length += 6;
- }
+ DEBUG(D_noutf8)
+ {
+ Ustrcpy(debug_ptr, " !");
+ debug_ptr += 4; /* 3 spaces + shriek */
+ debug_prefix_length += 4;
+ }
+ else
+ {
+ Ustrcpy(debug_ptr, " " UTF8_VERT_2DASH);
+ debug_ptr += 6; /* 3 spaces + 3 UTF-8 octets */
+ debug_prefix_length += 6;
+ }
+
Ustrncpy(debug_ptr, " ", indent &= 3);
debug_ptr += indent;
debug_prefix_length += indent;
diff --git a/src/src/expand.c b/src/src/expand.c
index 4a88b44..ca7d368 100644
--- a/src/src/expand.c
+++ b/src/src/expand.c
@@ -4006,11 +4006,15 @@ BOOL resetok = TRUE;
expand_level++;
DEBUG(D_expand)
- debug_printf_indent(UTF8_DOWN_RIGHT "%s: %s\n",
- skipping
- ? UTF8_HORIZ UTF8_HORIZ UTF8_HORIZ "scanning"
- : "considering",
- string);
+ DEBUG(D_noutf8)
+ debug_printf_indent("/%s: %s\n",
+ skipping ? "---scanning" : "considering", string);
+ else
+ debug_printf_indent(UTF8_DOWN_RIGHT "%s: %s\n",
+ skipping
+ ? UTF8_HORIZ UTF8_HORIZ UTF8_HORIZ "scanning"
+ : "considering",
+ string);
f.expand_string_forcedfail = FALSE;
expand_string_message = US"";
@@ -4299,15 +4303,21 @@ while (*s != 0)
if (next_s == NULL) goto EXPAND_FAILED; /* message already set */
DEBUG(D_expand)
- {
- debug_printf_indent(UTF8_VERT_RIGHT UTF8_HORIZ UTF8_HORIZ
- "condition: %.*s\n",
- (int)(next_s - s), s);
- debug_printf_indent(UTF8_VERT_RIGHT UTF8_HORIZ UTF8_HORIZ
- UTF8_HORIZ UTF8_HORIZ UTF8_HORIZ
- "result: %s\n",
- cond ? "true" : "false");
- }
+ DEBUG(D_noutf8)
+ {
+ debug_printf_indent("|--condition: %.*s\n", (int)(next_s - s), s);
+ debug_printf_indent("|-----result: %s\n", cond ? "true" : "false");
+ }
+ else
+ {
+ debug_printf_indent(UTF8_VERT_RIGHT UTF8_HORIZ UTF8_HORIZ
+ "condition: %.*s\n",
+ (int)(next_s - s), s);
+ debug_printf_indent(UTF8_VERT_RIGHT UTF8_HORIZ UTF8_HORIZ
+ UTF8_HORIZ UTF8_HORIZ UTF8_HORIZ
+ "result: %s\n",
+ cond ? "true" : "false");
+ }
s = next_s;
@@ -7831,19 +7841,28 @@ if (resetok) store_reset(yield->s + (yield->size = yield->ptr + 1));
else if (resetok_p) *resetok_p = FALSE;
DEBUG(D_expand)
- {
- debug_printf_indent(UTF8_VERT_RIGHT UTF8_HORIZ UTF8_HORIZ
- "expanding: %.*s\n",
- (int)(s - string), string);
- debug_printf_indent("%s"
- UTF8_HORIZ UTF8_HORIZ UTF8_HORIZ UTF8_HORIZ UTF8_HORIZ
- "result: %s\n",
- skipping ? UTF8_VERT_RIGHT : UTF8_UP_RIGHT,
- yield->s);
- if (skipping)
- debug_printf_indent(UTF8_UP_RIGHT UTF8_HORIZ UTF8_HORIZ UTF8_HORIZ
- "skipping: result is not used\n");
- }
+ DEBUG(D_noutf8)
+ {
+ debug_printf_indent("|--expanding: %.*s\n", (int)(s - string), string);
+ debug_printf_indent("%sresult: %s\n",
+ skipping ? "|-----" : "\\_____", yield->s);
+ if (skipping)
+ debug_printf_indent("\\___skipping: result is not used\n");
+ }
+ else
+ {
+ debug_printf_indent(UTF8_VERT_RIGHT UTF8_HORIZ UTF8_HORIZ
+ "expanding: %.*s\n",
+ (int)(s - string), string);
+ debug_printf_indent("%s"
+ UTF8_HORIZ UTF8_HORIZ UTF8_HORIZ UTF8_HORIZ UTF8_HORIZ
+ "result: %s\n",
+ skipping ? UTF8_VERT_RIGHT : UTF8_UP_RIGHT,
+ yield->s);
+ if (skipping)
+ debug_printf_indent(UTF8_UP_RIGHT UTF8_HORIZ UTF8_HORIZ UTF8_HORIZ
+ "skipping: result is not used\n");
+ }
expand_level--;
return yield->s;
@@ -7865,16 +7884,25 @@ that is a bad idea, because expand_string_message is in dynamic store. */
EXPAND_FAILED:
if (left) *left = s;
DEBUG(D_expand)
- {
- debug_printf_indent(UTF8_VERT_RIGHT "failed to expand: %s\n",
- string);
- debug_printf_indent("%s" UTF8_HORIZ UTF8_HORIZ UTF8_HORIZ
- "error message: %s\n",
- f.expand_string_forcedfail ? UTF8_VERT_RIGHT : UTF8_UP_RIGHT,
- expand_string_message);
- if (f.expand_string_forcedfail)
- debug_printf_indent(UTF8_UP_RIGHT "failure was forced\n");
- }
+ DEBUG(D_noutf8)
+ {
+ debug_printf_indent("|failed to expand: %s\n", string);
+ debug_printf_indent("%serror message: %s\n",
+ f.expand_string_forcedfail ? "|---" : "\\___", expand_string_message);
+ if (f.expand_string_forcedfail)
+ debug_printf_indent("\\failure was forced\n");
+ }
+ else
+ {
+ debug_printf_indent(UTF8_VERT_RIGHT "failed to expand: %s\n",
+ string);
+ debug_printf_indent("%s" UTF8_HORIZ UTF8_HORIZ UTF8_HORIZ
+ "error message: %s\n",
+ f.expand_string_forcedfail ? UTF8_VERT_RIGHT : UTF8_UP_RIGHT,
+ expand_string_message);
+ if (f.expand_string_forcedfail)
+ debug_printf_indent(UTF8_UP_RIGHT "failure was forced\n");
+ }
if (resetok_p && !resetok) *resetok_p = FALSE;
expand_level--;
return NULL;
diff --git a/src/src/globals.c b/src/src/globals.c
index c18f6c1..cdf00e8 100644
--- a/src/src/globals.c
+++ b/src/src/globals.c
@@ -770,9 +770,11 @@ int debug_fd = -1;
FILE *debug_file = NULL;
int debug_notall[] = {
Di_memory,
+ Di_noutf8,
-1
};
-bit_table debug_options[] = { /* must be in alphabetical order */
+bit_table debug_options[] = { /* must be in alphabetical order and use
+ only the enum values from macro.h */
BIT_TABLE(D, acl),
BIT_TABLE(D, all),
BIT_TABLE(D, auth),
@@ -791,6 +793,7 @@ bit_table debug_options[] = { /* must be in alphabetical order */
BIT_TABLE(D, local_scan),
BIT_TABLE(D, lookup),
BIT_TABLE(D, memory),
+ BIT_TABLE(D, noutf8),
BIT_TABLE(D, pid),
BIT_TABLE(D, process_info),
BIT_TABLE(D, queue_run),
diff --git a/src/src/macros.h b/src/src/macros.h
index fd53de8..0d979d0 100644
--- a/src/src/macros.h
+++ b/src/src/macros.h
@@ -362,6 +362,7 @@ masks, alternating between sequential bit index and corresponding mask. */
/* Options bits for debugging. DEBUG_BIT() declares both a bit index and the
corresponding mask. Di_all is a special value recognized by decode_bits().
+These must match the debug_options table in globals.c .
Exim's code assumes in a number of places that the debug_selector is one
word, and this is exposed in the local_scan ABI. The D_v and D_local_scan bit
@@ -391,6 +392,7 @@ enum {
DEBUG_BIT(load),
DEBUG_BIT(lookup),
DEBUG_BIT(memory),
+ DEBUG_BIT(noutf8),
DEBUG_BIT(pid),
DEBUG_BIT(process_info),
DEBUG_BIT(queue_run),
@@ -412,6 +414,7 @@ enum {
#define D_any (D_all & \
~(D_v | \
+ D_noutf8 | \
D_pid | \
D_timestamp) )
@@ -422,6 +425,7 @@ enum {
D_load | \
D_local_scan | \
D_memory | \
+ D_noutf8 | \
D_pid | \
D_timestamp | \
D_resolver))
diff --git a/test/scripts/0000-Basic/0002 b/test/scripts/0000-Basic/0002
index d77fa9f..e192a55 100644
--- a/test/scripts/0000-Basic/0002
+++ b/test/scripts/0000-Basic/0002
@@ -915,6 +915,13 @@ match: ${if match{wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
${if eq {1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
match_address: ${if match_address{a.b.c}{a.b.c}{yes}{no}}
****
+exim -d-all+expand+noutf8 -be
+primary_hostname: $primary_hostname
+match: ${if match{abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+match: ${if match{wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+${if eq {1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+match_address: ${if match_address{a.b.c}{a.b.c}{yes}{no}}
+****
# Sender host name and address etc, all unset
exim -be
-be Sender host name and address etc, all unset
diff --git a/test/stderr/0002 b/test/stderr/0002
index 7f9a509..7358c9c 100644
--- a/test/stderr/0002
+++ b/test/stderr/0002
@@ -84,6 +84,89 @@ LOG: MAIN PANIC
Exim version x.yz ....
configuration file is TESTSUITE/test-config
admin user
+ /considering: primary_hostname: $primary_hostname
+ |--expanding: primary_hostname: $primary_hostname
+ \_____result: primary_hostname: myhost.test.ex
+ /considering: match: ${if match{abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+ /considering: abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+ |--expanding: abcd
+ \_____result: abcd
+ /considering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
+ |--expanding: \N^([ab]+)(\w+)$\N
+ \_____result: ^([ab]+)(\w+)$
+ |--condition: match{abcd}{\N^([ab]+)(\w+)$\N}
+ |-----result: true
+ /considering: $2$1}fail}
+ |--expanding: $2$1
+ \_____result: cdab
+ |--expanding: match: ${if match{abcd}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+ \_____result: match: cdab
+ /considering: match: ${if match{wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+ /considering: wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+ |--expanding: wxyz
+ \_____result: wxyz
+ /considering: \N^([ab]+)(\w+)$\N}{$2$1}fail}
+ |--expanding: \N^([ab]+)(\w+)$\N
+ \_____result: ^([ab]+)(\w+)$
+ |--condition: match{wxyz}{\N^([ab]+)(\w+)$\N}
+ |-----result: false
+ /---scanning: $2$1}fail}
+ |--expanding: $2$1
+ |-----result:
+ \___skipping: result is not used
+ |failed to expand: match: ${if match{wxyz}{\N^([ab]+)(\w+)$\N}{$2$1}fail}
+ |---error message: "if" failed and "fail" requested
+ \failure was forced
+ /considering: ${if eq {1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+ /considering: 1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+ |--expanding: 1
+ \_____result: 1
+ /considering: 1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+ |--expanding: 1
+ \_____result: 1
+ |--condition: eq {1}{1}
+ |-----result: true
+ /considering: yes}{${lookup{xx}lsearch{/non/exist}}}}
+ |--expanding: yes
+ \_____result: yes
+ /---scanning: ${lookup{xx}lsearch{/non/exist}}}}
+ /---scanning: xx}lsearch{/non/exist}}}}
+ |--expanding: xx
+ |-----result: xx
+ \___skipping: result is not used
+ /---scanning: /non/exist}}}}
+ |--expanding: /non/exist
+ |-----result: /non/exist
+ \___skipping: result is not used
+ |--expanding: ${lookup{xx}lsearch{/non/exist}}
+ |-----result:
+ \___skipping: result is not used
+ |--expanding: ${if eq {1}{1}{yes}{${lookup{xx}lsearch{/non/exist}}}}
+ \_____result: yes
+ /considering: match_address: ${if match_address{a.b.c}{a.b.c}{yes}{no}}
+ /considering: a.b.c}{a.b.c}{yes}{no}}
+ |--expanding: a.b.c
+ \_____result: a.b.c
+ /considering: a.b.c}{yes}{no}}
+ |--expanding: a.b.c
+ \_____result: a.b.c
+LOG: MAIN PANIC
+ no @ found in the subject of an address list match: subject="a.b.c" pattern="a.b.c"
+ |--condition: match_address{a.b.c}{a.b.c}
+ |-----result: false
+ /---scanning: yes}{no}}
+ |--expanding: yes
+ |-----result: yes
+ \___skipping: result is not used
+ /considering: no}}
+ |--expanding: no
+ \_____result: no
+ |--expanding: a.b.c
+ \_____result: match_address: no
+>>>>>>>>>>>>>>>> Exim pid=pppp (main: expansion test) terminating with rc=0 >>>>>>>>>>>>>>>>
+Exim version x.yz ....
+configuration file is TESTSUITE/test-config
+admin user
┌considering: -oMa sender_host_address = $sender_host_address
├──expanding: -oMa sender_host_address = $sender_host_address
└─────result: -oMa sender_host_address = V4NET.0.0.1
diff --git a/test/stderr/0275 b/test/stderr/0275
index e062b3e..b7ab4d0 100644
--- a/test/stderr/0275
+++ b/test/stderr/0275
@@ -143,7 +143,7 @@ LOG: MAIN
<= CALLER@??? U=CALLER P=local S=sss
created log directory TESTSUITE/spool/log
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -Mc 10HmaX-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmaX-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
diff --git a/test/stderr/0278 b/test/stderr/0278
index 5305183..1cc8de5 100644
--- a/test/stderr/0278
+++ b/test/stderr/0278
@@ -102,7 +102,7 @@ LOG: MAIN
<= CALLER@??? U=CALLER P=local S=sss
created log directory TESTSUITE/spool/log
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -Mc 10HmaX-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmaX-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
diff --git a/test/stderr/0361 b/test/stderr/0361
index 6956094..86776cc 100644
--- a/test/stderr/0361
+++ b/test/stderr/0361
@@ -50,7 +50,7 @@ Size of headers = sss
LOG: MAIN
<= CALLER@??? U=CALLER P=local S=sss
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -N -odi -Mc 10HmaY-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -N -odi -Mc 10HmaY-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
diff --git a/test/stderr/0386 b/test/stderr/0386
index cfba1b4..03fbfaa 100644
--- a/test/stderr/0386
+++ b/test/stderr/0386
@@ -217,7 +217,7 @@ LOG: MAIN
<= x@y H=[V4NET.11.12.13] U=CALLER P=smtp S=sss
SMTP>> 250 OK id=10HmaX-0005vi-00
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -Mc 10HmaX-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmaX-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
@@ -398,7 +398,7 @@ LOG: MAIN
<= x@y H=[V4NET.11.12.13] U=CALLER P=smtp S=sss
SMTP>> 250 OK id=10HmaY-0005vi-00
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -Mc 10HmaY-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmaY-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
diff --git a/test/stderr/0388 b/test/stderr/0388
index 2e707cf..f15cab2 100644
--- a/test/stderr/0388
+++ b/test/stderr/0388
@@ -168,7 +168,7 @@ LOG: MAIN
EXIM_DBCLOSE(0xAAAAAAAA)
closed hints database and lockfile
end of retry processing
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xebb95ced -odi -odi -t -oem -oi -f <> -E10HmaX-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xd7715ced -odi -odi -t -oem -oi -f <> -E10HmaX-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
@@ -221,7 +221,7 @@ Size of headers = sss
LOG: MAIN
<= <> R=10HmaX-0005vi-00 U=EXIMUSER P=local S=sss
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xebb95ced -odi -Mc 10HmaY-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xd7715ced -odi -Mc 10HmaY-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
diff --git a/test/stderr/0402 b/test/stderr/0402
index 8c0c7ed..13ae718 100644
--- a/test/stderr/0402
+++ b/test/stderr/0402
@@ -155,7 +155,7 @@ LOG: MAIN
<= CALLER@??? U=CALLER P=local S=sss
created log directory TESTSUITE/spool/log
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95dfd -odi -Mc 10HmaX-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715dfd -odi -Mc 10HmaX-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
diff --git a/test/stderr/0403 b/test/stderr/0403
index ecb56e6..b7238bf 100644
--- a/test/stderr/0403
+++ b/test/stderr/0403
@@ -44,7 +44,7 @@ LOG: MAIN
<= CALLER@??? U=CALLER P=local S=sss
created log directory TESTSUITE/spool/log
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -N -odi -Mc 10HmaX-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -N -odi -Mc 10HmaX-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
diff --git a/test/stderr/0404 b/test/stderr/0404
index 0c26235..387a6f4 100644
--- a/test/stderr/0404
+++ b/test/stderr/0404
@@ -143,7 +143,7 @@ LOG: MAIN
<= CALLER@??? U=CALLER P=local S=sss
created log directory TESTSUITE/spool/log
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -Mc 10HmaX-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmaX-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
@@ -246,7 +246,7 @@ changed uid/gid: local delivery to >sender@???,sender@???,sender@???
set_process_info: pppp **** string overflowed buffer ****
t1 transport entered
taking data from address
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -odi -t -oem -oi -f <> -E10HmaX-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -odi -t -oem -oi -f <> -E10HmaX-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=CALLER_GID pid=pppp
@@ -1517,7 +1517,7 @@ Size of headers = sss
LOG: MAIN
<= <> R=10HmaX-0005vi-00 U=CALLER P=local S=sss
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -Mc 10HmaY-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmaY-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
diff --git a/test/stderr/0408 b/test/stderr/0408
index f6fea53..2e1ac50 100644
--- a/test/stderr/0408
+++ b/test/stderr/0408
@@ -44,7 +44,7 @@ LOG: MAIN
<= CALLER@??? U=CALLER P=local S=sss
created log directory TESTSUITE/spool/log
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -Mc 10HmaX-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmaX-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
diff --git a/test/stderr/0487 b/test/stderr/0487
index 16326d1..79958af 100644
--- a/test/stderr/0487
+++ b/test/stderr/0487
@@ -71,7 +71,7 @@ LOG: MAIN
created log directory TESTSUITE/spool/log
SMTP>> 250 OK id=10HmaX-0005vi-00
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -Mc 10HmaX-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmaX-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
diff --git a/test/stderr/2600 b/test/stderr/2600
index f9e1065..457eaa5 100644
--- a/test/stderr/2600
+++ b/test/stderr/2600
@@ -330,7 +330,7 @@ LOG: MAIN
<= CALLER@??? U=CALLER P=local S=sss
created log directory TESTSUITE/spool/log
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -Mc 10HmaX-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmaX-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
diff --git a/test/stderr/2610 b/test/stderr/2610
index 8074317..cda8a24 100644
--- a/test/stderr/2610
+++ b/test/stderr/2610
@@ -323,7 +323,7 @@ LOG: MAIN
<= CALLER@??? U=CALLER P=local S=sss
created log directory TESTSUITE/spool/log
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -Mc 10HmaX-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmaX-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
diff --git a/test/stderr/2620 b/test/stderr/2620
index a8fd3ff..3bb44dc 100644
--- a/test/stderr/2620
+++ b/test/stderr/2620
@@ -341,7 +341,7 @@ LOG: MAIN
<= CALLER@??? U=CALLER P=local S=sss
created log directory TESTSUITE/spool/log
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -Mc 10HmaX-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmaX-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
diff --git a/test/stderr/5004 b/test/stderr/5004
index 2c6190c..adcbf6e 100644
--- a/test/stderr/5004
+++ b/test/stderr/5004
@@ -46,7 +46,7 @@ LOG: MAIN
<= CALLER@??? U=CALLER P=local S=sss
created log directory TESTSUITE/spool/log
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -Mc 10HmaX-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmaX-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
diff --git a/test/stderr/5005 b/test/stderr/5005
index c03ad1c..17cfdf2 100644
--- a/test/stderr/5005
+++ b/test/stderr/5005
@@ -44,7 +44,7 @@ LOG: MAIN
<= CALLER@??? U=CALLER P=local S=sss
created log directory TESTSUITE/spool/log
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -Mc 10HmaX-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmaX-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
@@ -231,7 +231,7 @@ Size of headers = sss
LOG: MAIN
<= CALLER@??? U=CALLER P=local S=sss
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -Mc 10HmaY-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmaY-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
@@ -419,7 +419,7 @@ Size of headers = sss
LOG: MAIN
<= CALLER@??? U=CALLER P=local S=sss
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -Mc 10HmaZ-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmaZ-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
@@ -616,7 +616,7 @@ Size of headers = sss
LOG: MAIN
<= CALLER@??? U=CALLER P=local S=sss
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -Mc 10HmbA-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmbA-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
diff --git a/test/stderr/5006 b/test/stderr/5006
index 55e52d4..4dce610 100644
--- a/test/stderr/5006
+++ b/test/stderr/5006
@@ -44,7 +44,7 @@ LOG: MAIN
<= CALLER@??? U=CALLER P=local S=sss
created log directory TESTSUITE/spool/log
search_tidyup called
-exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xfbb95cfd -odi -Mc 10HmaX-0005vi-00
+exec TESTSUITE/eximdir/exim -DEXIM_PATH=TESTSUITE/eximdir/exim -C TESTSUITE/test-config -d=0xf7715cfd -odi -Mc 10HmaX-0005vi-00
Exim version x.yz ....
changed uid/gid: forcing real = effective
uid=uuuu gid=EXIM_GID pid=pppp
diff --git a/test/stdout/0002 b/test/stdout/0002
index 7294354..949c35e 100644
--- a/test/stdout/0002
+++ b/test/stdout/0002
@@ -854,6 +854,12 @@ xyz
> yes
> match_address: no
>
+> primary_hostname: myhost.test.ex
+> match: cdab
+> Failed: "if" failed and "fail" requested
+> yes
+> match_address: no
+>
> -be Sender host name and address etc, all unset
> -oMa sender_host_address =
> sender_host_port = 0