[exim-cvs] appendfile: taint-enforce file & directory option…

Startseite
Nachricht löschen
Nachricht beantworten
Autor: Exim Git Commits Mailing List
Datum:  
To: exim-cvs
Betreff: [exim-cvs] appendfile: taint-enforce file & directory options
Gitweb: https://git.exim.org/exim.git/commitdiff/0d2e392e281e96d9f9f2f3dd438affe3f2563c57
Commit:     0d2e392e281e96d9f9f2f3dd438affe3f2563c57
Parent:     8280aa0c334a7ce06c55df35d9da7a99f79c3568
Author:     Jeremy Harris <jgh146exb@???>
AuthorDate: Sat Jan 11 21:46:43 2020 +0000
Committer:  Jeremy Harris <jgh146exb@???>
CommitDate: Sat Jan 11 21:46:43 2020 +0000


    appendfile: taint-enforce file & directory options
    testsuite: bless facility
---
 doc/doc-docbook/spec.xfpt         |  8 ++++++++
 doc/doc-txt/ChangeLog             |  3 +++
 src/src/expand.c                  | 16 ++++++++++++++++
 src/src/rda.c                     |  3 ++-
 src/src/transports/appendfile.c   |  7 +++++++
 test/aux-fixed/0297.Filter        |  2 +-
 test/confs/0001                   |  2 +-
 test/confs/0006                   |  2 +-
 test/confs/0008                   |  2 +-
 test/confs/0009                   |  2 +-
 test/confs/0010                   |  2 +-
 test/confs/0011                   |  2 +-
 test/confs/0012                   |  2 +-
 test/confs/0014                   |  2 +-
 test/confs/0015                   |  6 +++---
 test/confs/0016                   |  4 ++--
 test/confs/0021                   |  2 +-
 test/confs/0022                   |  2 +-
 test/confs/0023                   |  2 +-
 test/confs/0024                   |  2 +-
 test/confs/0025                   |  2 +-
 test/confs/0026                   |  2 +-
 test/confs/0027                   |  2 +-
 test/confs/0028                   |  2 +-
 test/confs/0031                   |  2 +-
 test/confs/0032                   |  2 +-
 test/confs/0036                   |  2 +-
 test/confs/0037                   |  2 +-
 test/confs/0040                   |  2 +-
 test/confs/0041                   |  2 +-
 test/confs/0042                   |  2 +-
 test/confs/0043                   |  2 +-
 test/confs/0044                   |  2 +-
 test/confs/0046                   |  2 +-
 test/confs/0048                   |  2 +-
 test/confs/0049                   |  2 +-
 test/confs/0050                   |  2 +-
 test/confs/0051                   |  2 +-
 test/confs/0052                   |  2 +-
 test/confs/0053                   |  2 +-
 test/confs/0055                   |  2 +-
 test/confs/0072                   |  2 +-
 test/confs/0073                   |  2 +-
 test/confs/0074                   |  2 +-
 test/confs/0075                   |  2 +-
 test/confs/0076                   |  2 +-
 test/confs/0079                   |  2 +-
 test/confs/0080                   |  2 +-
 test/confs/0081                   |  2 +-
 test/confs/0082                   |  2 +-
 test/confs/0083                   |  2 +-
 test/confs/0084                   |  2 +-
 test/confs/0090                   |  2 +-
 test/confs/0094                   |  2 +-
 test/confs/0095                   |  6 +++---
 test/confs/0096                   |  2 +-
 test/confs/0097                   |  2 +-
 test/confs/0098                   |  2 +-
 test/confs/0100                   | 12 ++++++------
 test/confs/0102                   |  6 +++---
 test/confs/0103                   |  2 +-
 test/confs/0104                   |  2 +-
 test/confs/0105                   |  2 +-
 test/confs/0107                   |  2 +-
 test/confs/0110                   |  2 +-
 test/confs/0111                   |  2 +-
 test/confs/0113                   |  2 +-
 test/confs/0116                   |  2 +-
 test/confs/0118                   |  2 +-
 test/confs/0121                   |  2 +-
 test/confs/0127                   |  2 +-
 test/confs/0128                   |  2 +-
 test/confs/0131                   |  4 ++--
 test/confs/0133                   |  2 +-
 test/confs/0135                   |  2 +-
 test/confs/0136                   |  2 +-
 test/confs/0137                   |  6 +++---
 test/confs/0138                   |  2 +-
 test/confs/0139                   |  2 +-
 test/confs/0140                   |  2 +-
 test/confs/0142                   |  4 ++--
 test/confs/0149                   |  2 +-
 test/confs/0150                   |  2 +-
 test/confs/0151                   |  2 +-
 test/confs/0152                   |  2 +-
 test/confs/0153                   |  2 +-
 test/confs/0156                   |  2 +-
 test/confs/0158                   |  2 +-
 test/confs/0159                   |  2 +-
 test/confs/0164                   |  2 +-
 test/confs/0165                   |  2 +-
 test/confs/0166                   |  2 +-
 test/confs/0167                   |  2 +-
 test/confs/0169                   |  2 +-
 test/confs/0171                   |  2 +-
 test/confs/0172                   |  2 +-
 test/confs/0173                   |  2 +-
 test/confs/0174                   |  2 +-
 test/confs/0175                   |  2 +-
 test/confs/0176                   |  2 +-
 test/confs/0177                   |  2 +-
 test/confs/0178                   |  2 +-
 test/confs/0182                   |  2 +-
 test/confs/0185                   |  2 +-
 test/confs/0189                   |  2 +-
 test/confs/0192                   |  2 +-
 test/confs/0193                   |  2 +-
 test/confs/0194                   |  2 +-
 test/confs/0195                   |  2 +-
 test/confs/0196                   |  2 +-
 test/confs/0202                   |  2 +-
 test/confs/0204                   |  2 +-
 test/confs/0205                   |  2 +-
 test/confs/0210                   |  2 +-
 test/confs/0211                   |  2 +-
 test/confs/0212                   |  4 ++--
 test/confs/0220                   |  2 +-
 test/confs/0221                   |  2 +-
 test/confs/0222                   |  2 +-
 test/confs/0223                   |  2 +-
 test/confs/0224                   |  2 +-
 test/confs/0225                   |  2 +-
 test/confs/0226                   |  4 ++--
 test/confs/0230                   |  2 +-
 test/confs/0231                   |  4 ++--
 test/confs/0232                   |  2 +-
 test/confs/0233                   |  2 +-
 test/confs/0237                   |  4 ++--
 test/confs/0240                   |  2 +-
 test/confs/0241                   |  2 +-
 test/confs/0243                   |  2 +-
 test/confs/0246                   |  2 +-
 test/confs/0253                   |  2 +-
 test/confs/0256                   |  2 +-
 test/confs/0258                   |  2 +-
 test/confs/0260                   |  4 ++--
 test/confs/0264                   |  4 ++--
 test/confs/0266                   |  8 ++++----
 test/confs/0267                   |  2 +-
 test/confs/0270                   |  8 ++++----
 test/confs/0271                   |  2 +-
 test/confs/0274                   |  2 +-
 test/confs/0280                   |  2 +-
 test/confs/0281                   |  2 +-
 test/confs/0282                   |  2 +-
 test/confs/0283                   |  4 ++--
 test/confs/0284                   |  4 ++--
 test/confs/0289                   |  2 +-
 test/confs/0296                   |  2 +-
 test/confs/0297                   |  2 +-
 test/confs/0298                   |  2 +-
 test/confs/0299                   |  2 +-
 test/confs/0306                   |  6 +++---
 test/confs/0307                   |  4 ++--
 test/confs/0309                   |  4 ++--
 test/confs/0310                   |  4 ++--
 test/confs/0318                   |  2 +-
 test/confs/0319                   |  2 +-
 test/confs/0321                   |  2 +-
 test/confs/0324                   |  2 +-
 test/confs/0326                   |  2 +-
 test/confs/0327                   |  4 ++--
 test/confs/0328                   |  2 +-
 test/confs/0329                   |  2 +-
 test/confs/0330                   |  2 +-
 test/confs/0335                   |  2 +-
 test/confs/0338                   |  2 +-
 test/confs/0345                   |  2 +-
 test/confs/0346                   |  2 +-
 test/confs/0351                   |  2 +-
 test/confs/0352                   |  2 +-
 test/confs/0353                   |  2 +-
 test/confs/0354                   |  2 +-
 test/confs/0355                   |  2 +-
 test/confs/0359                   |  2 +-
 test/confs/0362                   |  2 +-
 test/confs/0374                   |  4 ++--
 test/confs/0375                   |  4 ++--
 test/confs/0377                   |  2 +-
 test/confs/0379                   |  2 +-
 test/confs/0380                   |  6 +++---
 test/confs/0383                   |  2 +-
 test/confs/0385                   |  2 +-
 test/confs/0386                   |  2 +-
 test/confs/0393                   |  2 +-
 test/confs/0395                   |  2 +-
 test/confs/0398                   |  2 +-
 test/confs/0404                   |  2 +-
 test/confs/0408                   |  2 +-
 test/confs/0412                   |  2 +-
 test/confs/0421                   |  2 +-
 test/confs/0428                   |  4 ++--
 test/confs/0431                   |  2 +-
 test/confs/0436                   |  2 +-
 test/confs/0444                   |  2 +-
 test/confs/0446                   |  2 +-
 test/confs/0449                   |  2 +-
 test/confs/0452                   |  2 +-
 test/confs/0456                   |  2 +-
 test/confs/0460                   |  2 +-
 test/confs/0461                   |  2 +-
 test/confs/0472                   |  2 +-
 test/confs/0480                   |  2 +-
 test/confs/0481                   |  2 +-
 test/confs/0485                   |  2 +-
 test/confs/0487                   |  2 +-
 test/confs/0491                   |  2 +-
 test/confs/0493                   |  2 +-
 test/confs/0494                   |  2 +-
 test/confs/0495                   |  2 +-
 test/confs/0496                   |  2 +-
 test/confs/0500                   |  2 +-
 test/confs/0503                   |  2 +-
 test/confs/0504                   |  2 +-
 test/confs/0506                   |  2 +-
 test/confs/0508                   |  2 +-
 test/confs/0514                   |  2 +-
 test/confs/0517                   |  2 +-
 test/confs/0522                   |  2 +-
 test/confs/0523                   |  2 +-
 test/confs/0530                   |  2 +-
 test/confs/0531                   |  2 +-
 test/confs/0532                   |  2 +-
 test/confs/0533                   |  2 +-
 test/confs/0535                   |  2 +-
 test/confs/0536                   |  2 +-
 test/confs/0551                   |  2 +-
 test/confs/0566                   |  2 +-
 test/confs/0567                   |  2 +-
 test/confs/0571                   |  2 +-
 test/confs/0573                   |  2 +-
 test/confs/{0011 => 0584}         | 18 ++++++++++++------
 test/confs/0600                   |  2 +-
 test/confs/0609                   |  2 +-
 test/confs/0618                   |  2 +-
 test/confs/0620                   |  2 +-
 test/confs/0900                   |  2 +-
 test/confs/0901                   |  2 +-
 test/confs/0906                   |  2 +-
 test/confs/1001                   |  2 +-
 test/confs/1002                   |  2 +-
 test/confs/1003                   |  2 +-
 test/confs/2002                   |  2 +-
 test/confs/2003                   |  2 +-
 test/confs/2004                   |  2 +-
 test/confs/2005                   |  2 +-
 test/confs/2007                   |  2 +-
 test/confs/2008                   |  2 +-
 test/confs/2013                   |  2 +-
 test/confs/2014                   |  2 +-
 test/confs/2017                   |  2 +-
 test/confs/2019                   |  2 +-
 test/confs/2027                   |  2 +-
 test/confs/2032                   |  2 +-
 test/confs/2038                   |  2 +-
 test/confs/2102                   |  2 +-
 test/confs/2103                   |  2 +-
 test/confs/2104                   |  2 +-
 test/confs/2105                   |  2 +-
 test/confs/2107                   |  2 +-
 test/confs/2108                   |  2 +-
 test/confs/2113                   |  2 +-
 test/confs/2114                   |  2 +-
 test/confs/2117                   |  2 +-
 test/confs/2119                   |  2 +-
 test/confs/2127                   |  2 +-
 test/confs/2132                   |  2 +-
 test/confs/2138                   |  2 +-
 test/confs/2149                   |  2 +-
 test/confs/2201                   |  2 +-
 test/confs/3206                   |  2 +-
 test/confs/3207                   |  2 +-
 test/confs/3400                   |  2 +-
 test/confs/3403                   |  2 +-
 test/confs/3408                   |  2 +-
 test/confs/3411                   |  2 +-
 test/confs/3451                   |  2 +-
 test/confs/3452                   |  2 +-
 test/confs/3461                   |  2 +-
 test/confs/3462                   |  2 +-
 test/confs/3500                   |  2 +-
 test/confs/3700                   |  2 +-
 test/confs/3720                   |  2 +-
 test/confs/4000                   |  2 +-
 test/confs/4001                   |  2 +-
 test/confs/4201                   |  2 +-
 test/confs/4211                   |  2 +-
 test/confs/4221                   |  2 +-
 test/confs/4520                   |  2 +-
 test/confs/4525                   |  2 +-
 test/confs/4560                   |  2 +-
 test/confs/4565                   |  2 +-
 test/confs/4620                   |  2 +-
 test/confs/4700                   |  2 +-
 test/confs/5001                   |  2 +-
 test/confs/5003                   |  4 ++--
 test/confs/5005                   |  2 +-
 test/confs/5006                   |  2 +-
 test/confs/5007                   |  2 +-
 test/confs/5008                   |  2 +-
 test/confs/5050                   |  6 +++---
 test/confs/5101                   |  2 +-
 test/confs/5200                   |  2 +-
 test/confs/5201                   |  2 +-
 test/confs/5203                   |  2 +-
 test/confs/5204                   |  2 +-
 test/confs/5207                   |  2 +-
 test/confs/5500                   |  2 +-
 test/confs/5600                   |  2 +-
 test/confs/5610                   |  2 +-
 test/confs/5611                   |  2 +-
 test/confs/5650                   |  2 +-
 test/confs/5651                   |  2 +-
 test/confs/5665                   |  2 +-
 test/confs/5670                   |  2 +-
 test/confs/5730                   |  2 +-
 test/confs/5740                   |  2 +-
 test/confs/5902                   |  2 +-
 test/confs/9001                   |  2 +-
 test/confs/9400                   |  2 +-
 test/confs/9401                   |  2 +-
 test/log/0584                     |  2 ++
 test/msglog/0584.10HmaX-0005vi-00 |  2 ++
 test/paniclog/0584                |  1 +
 test/scripts/0000-Basic/0584      |  8 ++++++++
 test/stderr/0084                  |  4 ++--
 test/stderr/0085                  |  6 +++---
 test/stderr/0297                  |  4 ++--
 test/stderr/0361                  |  2 +-
 test/stderr/0364                  | 14 +++++++-------
 test/stderr/0377                  | 14 +++++++-------
 test/stderr/0378                  |  6 +++---
 test/stderr/0379                  |  2 +-
 test/stderr/0380                  |  4 ++--
 test/stderr/0464                  |  4 ++--
 test/stderr/0584                  |  1 +
 test/stdout/0584                  |  6 ++++++
 337 files changed, 457 insertions(+), 396 deletions(-)


diff --git a/doc/doc-docbook/spec.xfpt b/doc/doc-docbook/spec.xfpt
index 254ed69..bb2ce12 100644
--- a/doc/doc-docbook/spec.xfpt
+++ b/doc/doc-docbook/spec.xfpt
@@ -22371,6 +22371,14 @@ If &%file%& or &%directory%& is set for a delivery from a redirection, it is
used to determine the file or directory name for the delivery. Normally, the
contents of &$address_file$& are used in some way in the string expansion.
.endlist
+.new
+.cindex "tainted data" "in filenames"
+.cindex appendfile "tainted data"
+Tainted data may not be used for a file or directory name.
+This means that, for instance, &$local_part$& cannot be used directly
+as a component of a path. It can however be used as the key for a lookup
+which returns a path (or component).
+.wen


 .cindex "Sieve filter" "configuring &(appendfile)&"
diff --git a/doc/doc-txt/ChangeLog b/doc/doc-txt/ChangeLog
index 2b5b592..2729295 100644
--- a/doc/doc-txt/ChangeLog
+++ b/doc/doc-txt/ChangeLog
@@ -87,6 +87,9 @@ JH/19 Bug 2507: Modules: on handling a dynamic-module (lookups) open failure,
       were used, and the second one (for mainlog/paniclog) retrieved null
       information.


+JH/20 Taint checking: disallow use of tainted data for the appendfile transport
+      file and directory options.  Previously this was permitted.
+


 Exim version 4.93
 -----------------
diff --git a/src/src/expand.c b/src/src/expand.c
index cec6efd..fe5384a 100644
--- a/src/src/expand.c
+++ b/src/src/expand.c
@@ -213,6 +213,7 @@ static uschar *op_table_main[] = {
   US"base62d",
   US"base64",
   US"base64d",
+  US"bless",
   US"domain",
   US"escape",
   US"escape8bit",
@@ -260,6 +261,7 @@ enum {
   EOP_BASE62D,
   EOP_BASE64,
   EOP_BASE64D,
+  EOP_BLESS,
   EOP_DOMAIN,
   EOP_ESCAPE,
   EOP_ESCAPE8BIT,
@@ -7059,6 +7061,20 @@ while (*s != 0)
         continue;
         }


+      case EOP_BLESS:
+    /* This is purely for the convenience of the test harness.  Do not enable
+    it otherwise as it defeats the taint-checking security. */
+
+    if (f.running_in_test_harness)
+      yield = string_cat(yield, is_tainted(sub)
+                    ? string_copy_taint(sub, FALSE) : sub);
+    else
+      {
+      DEBUG(D_expand) debug_printf_indent("bless operator not supported\n");
+      yield = string_cat(yield, sub);
+      }
+    continue;
+
       case EOP_EXPAND:
         {
         uschar *expanded = expand_string_internal(sub, FALSE, NULL, skipping, TRUE, &resetok);
diff --git a/src/src/rda.c b/src/src/rda.c
index 5fa3d09..201e82d 100644
--- a/src/src/rda.c
+++ b/src/src/rda.c
@@ -557,7 +557,8 @@ if (!(data = expand_string(rdata->string)))
   }
 rdata->string = data;


-DEBUG(D_route) debug_printf("expanded: '%s'\n", data);
+DEBUG(D_route)
+ debug_printf("expanded: '%s'%s\n", data, is_tainted(data) ? " (tainted)":"");

if (rdata->isfile && data[0] != '/')
{
diff --git a/src/src/transports/appendfile.c b/src/src/transports/appendfile.c
index d99a179..de193db 100644
--- a/src/src/transports/appendfile.c
+++ b/src/src/transports/appendfile.c
@@ -3,6 +3,7 @@
*************************************************/

/* Copyright (c) University of Cambridge 1995 - 2018 */
+/* Copyright (c) The Exim maintainers 2020 */
/* See the file NOTICE for conditions of use and distribution. */


@@ -1342,6 +1343,12 @@ if (!(path = expand_string(fdname)))
     expand_string_message);
   goto ret_panic;
   }
+if (is_tainted(path))
+  {
+  addr->message = string_sprintf("Tainted '%s' (file or directory "
+    "name for %s transport) not permitted", path, tblock->name);
+  goto ret_panic;
+  }


if (path[0] != '/')
{
diff --git a/test/aux-fixed/0297.Filter b/test/aux-fixed/0297.Filter
index e911ce7..28f090e 100644
--- a/test/aux-fixed/0297.Filter
+++ b/test/aux-fixed/0297.Filter
@@ -2,4 +2,4 @@

if $sender_address is not fil@ter then finish endif

-save ${local_part:$recipients}
+save ${bless:${local_part:$recipients}}
diff --git a/test/confs/0001 b/test/confs/0001
index 4dfd09a..c8ad6f4 100644
--- a/test/confs/0001
+++ b/test/confs/0001
@@ -517,7 +517,7 @@ appendfile:
   directory_mode = 0700
   envelope_to_add
   escape_string = xyz
-  file = /home/$local_part/inbox
+  file = /home/${bless:$local_part}/inbox
   file_format = "From : appendfile"
   no_file_must_exist
   group = MAILGROUP
diff --git a/test/confs/0006 b/test/confs/0006
index c01a2fe..b83e897 100644
--- a/test/confs/0006
+++ b/test/confs/0006
@@ -35,7 +35,7 @@ local_delivery:
   driver = appendfile
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   return_path_add
   headers_add = \nMessage Headers:\n$message_headers\n\
                 \nRaw Message Headers:\n$message_headers_raw\n
diff --git a/test/confs/0008 b/test/confs/0008
index 91db091..396718f 100644
--- a/test/confs/0008
+++ b/test/confs/0008
@@ -27,7 +27,7 @@ local_delivery:
   driver = appendfile
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   return_path_add


# End
diff --git a/test/confs/0009 b/test/confs/0009
index 422fe3d..3ca2feb 100644
--- a/test/confs/0009
+++ b/test/confs/0009
@@ -27,7 +27,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add

# End
diff --git a/test/confs/0010 b/test/confs/0010
index 39e3fcf..0216aae 100644
--- a/test/confs/0010
+++ b/test/confs/0010
@@ -27,7 +27,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add


diff --git a/test/confs/0011 b/test/confs/0011
index f8c0476..e39d595 100644
--- a/test/confs/0011
+++ b/test/confs/0011
@@ -27,7 +27,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add


diff --git a/test/confs/0012 b/test/confs/0012
index b367e89..76f5bc4 100644
--- a/test/confs/0012
+++ b/test/confs/0012
@@ -30,7 +30,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add


diff --git a/test/confs/0014 b/test/confs/0014
index 1fdd92d..23abbb2 100644
--- a/test/confs/0014
+++ b/test/confs/0014
@@ -94,7 +94,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
message_suffix =
user = CALLER

diff --git a/test/confs/0015 b/test/confs/0015
index dbbdfd0..8c62e2e 100644
--- a/test/confs/0015
+++ b/test/confs/0015
@@ -33,7 +33,7 @@ userforward:
   allow_filter
   local_parts = userx
   user = CALLER
-  file = DIR/aux-fixed/0015.filter.$local_part
+  file = DIR/aux-fixed/0015.filter.${bless:$local_part}
   local_part_prefix = *+
   local_part_prefix_optional
   pipe_transport = address_pipe
@@ -80,7 +80,7 @@ local_delivery:
   user = CALLER
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   return_path_add
   headers_add = X-local_part: $local_part\n\
                 X-local_part_prefix: $local_part_prefix
@@ -90,7 +90,7 @@ local_delivery_b:
   user = CALLER
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   return_path_add
   use_bsmtp
   headers_add = X-local_part: $local_part\n\
diff --git a/test/confs/0016 b/test/confs/0016
index 4260c88..dcc005f 100644
--- a/test/confs/0016
+++ b/test/confs/0016
@@ -17,7 +17,7 @@ userforward:
   allow_filter
   user = CALLER
   local_parts = userx : CALLER
-  file = DIR/aux-fixed/0016.filter.$local_part
+  file = DIR/aux-fixed/0016.filter.${bless:$local_part}
   local_part_suffix = +*
   local_part_suffix_optional
   reply_transport = address_reply
@@ -39,7 +39,7 @@ local_delivery:
   user = CALLER
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   return_path_add


address_reply:
diff --git a/test/confs/0021 b/test/confs/0021
index cb05738..0150839 100644
--- a/test/confs/0021
+++ b/test/confs/0021
@@ -84,7 +84,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0022 b/test/confs/0022
index bd04442..2228b28 100644
--- a/test/confs/0022
+++ b/test/confs/0022
@@ -90,7 +90,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0023 b/test/confs/0023
index 2481976..c72c453 100644
--- a/test/confs/0023
+++ b/test/confs/0023
@@ -232,7 +232,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

t2:
diff --git a/test/confs/0024 b/test/confs/0024
index 3dbbc2c..30e5636 100644
--- a/test/confs/0024
+++ b/test/confs/0024
@@ -77,7 +77,7 @@ dev_null:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0025 b/test/confs/0025
index 3ecc5dd..f2d987e 100644
--- a/test/confs/0025
+++ b/test/confs/0025
@@ -52,7 +52,7 @@ dev_null:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0026 b/test/confs/0026
index 07fa409..cc0c51c 100644
--- a/test/confs/0026
+++ b/test/confs/0026
@@ -54,7 +54,7 @@ dev_null:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0027 b/test/confs/0027
index 9c775bd..19bdaa0 100644
--- a/test/confs/0027
+++ b/test/confs/0027
@@ -70,7 +70,7 @@ dev_null:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0028 b/test/confs/0028
index 149d8ed..caebac0 100644
--- a/test/confs/0028
+++ b/test/confs/0028
@@ -54,7 +54,7 @@ dev_null:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0031 b/test/confs/0031
index e3f0360..8760be5 100644
--- a/test/confs/0031
+++ b/test/confs/0031
@@ -29,7 +29,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add

# End
diff --git a/test/confs/0032 b/test/confs/0032
index caf5edb..644404d 100644
--- a/test/confs/0032
+++ b/test/confs/0032
@@ -33,7 +33,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add

smtp:
diff --git a/test/confs/0036 b/test/confs/0036
index ded6487..6d02a44 100644
--- a/test/confs/0036
+++ b/test/confs/0036
@@ -37,7 +37,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

send_to_server:
diff --git a/test/confs/0037 b/test/confs/0037
index 8ba94de..06a3856 100644
--- a/test/confs/0037
+++ b/test/confs/0037
@@ -85,7 +85,7 @@ appendfile:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0040 b/test/confs/0040
index 35453a0..30a3de2 100644
--- a/test/confs/0040
+++ b/test/confs/0040
@@ -27,7 +27,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = "X-interface: $interface_address"
return_path_add
user = CALLER
diff --git a/test/confs/0041 b/test/confs/0041
index f7fa61e..0d601a8 100644
--- a/test/confs/0041
+++ b/test/confs/0041
@@ -52,7 +52,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0042 b/test/confs/0042
index 14c8a96..46229f5 100644
--- a/test/confs/0042
+++ b/test/confs/0042
@@ -38,7 +38,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0043 b/test/confs/0043
index 0bf3547..91d58f3 100644
--- a/test/confs/0043
+++ b/test/confs/0043
@@ -56,7 +56,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0044 b/test/confs/0044
index e4db43d..c13a158 100644
--- a/test/confs/0044
+++ b/test/confs/0044
@@ -47,7 +47,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0046 b/test/confs/0046
index 9fff3b9..15e8df8 100644
--- a/test/confs/0046
+++ b/test/confs/0046
@@ -32,7 +32,7 @@ begin transports
 local_delivery:
   driver = appendfile
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   headers_add = "X-size: $message_size\n\
                  X-body-size: $message_body_size\n\
                  X-body: $message_body\n\
diff --git a/test/confs/0048 b/test/confs/0048
index 9c2d442..d11a120 100644
--- a/test/confs/0048
+++ b/test/confs/0048
@@ -42,7 +42,7 @@ local_delivery:
   driver = appendfile
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   return_path_add


address_pipe:
diff --git a/test/confs/0049 b/test/confs/0049
index a00dde1..fd2574e 100644
--- a/test/confs/0049
+++ b/test/confs/0049
@@ -34,7 +34,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0050 b/test/confs/0050
index 32a822a..32c414a 100644
--- a/test/confs/0050
+++ b/test/confs/0050
@@ -37,7 +37,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0051 b/test/confs/0051
index 2fde9e5..a14fc3d 100644
--- a/test/confs/0051
+++ b/test/confs/0051
@@ -40,7 +40,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0052 b/test/confs/0052
index 2af555c..426e7ed 100644
--- a/test/confs/0052
+++ b/test/confs/0052
@@ -33,7 +33,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add


diff --git a/test/confs/0053 b/test/confs/0053
index 04263a5..4d279d0 100644
--- a/test/confs/0053
+++ b/test/confs/0053
@@ -32,7 +32,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0055 b/test/confs/0055
index 6cc9b7c..ed6e608 100644
--- a/test/confs/0055
+++ b/test/confs/0055
@@ -46,7 +46,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0072 b/test/confs/0072
index 9bb7398..e1e997b 100644
--- a/test/confs/0072
+++ b/test/confs/0072
@@ -53,7 +53,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add


diff --git a/test/confs/0073 b/test/confs/0073
index da716ef..6788256 100644
--- a/test/confs/0073
+++ b/test/confs/0073
@@ -40,7 +40,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add


diff --git a/test/confs/0074 b/test/confs/0074
index 3102206..20227d4 100644
--- a/test/confs/0074
+++ b/test/confs/0074
@@ -41,7 +41,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0075 b/test/confs/0075
index 8b8c77c..b07ffbd 100644
--- a/test/confs/0075
+++ b/test/confs/0075
@@ -26,7 +26,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/subdir/$local_part
+ file = DIR/test-mail/subdir/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0076 b/test/confs/0076
index 1415280..8e9c08f 100644
--- a/test/confs/0076
+++ b/test/confs/0076
@@ -27,7 +27,7 @@ local_delivery:
no_create_directory
delivery_date_add
envelope_to_add
- file = DIR/test-mail/subdir/$local_part
+ file = DIR/test-mail/subdir/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0079 b/test/confs/0079
index 25ef658..a7a412f 100644
--- a/test/confs/0079
+++ b/test/confs/0079
@@ -69,7 +69,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0080 b/test/confs/0080
index fbe026c..a0f578f 100644
--- a/test/confs/0080
+++ b/test/confs/0080
@@ -50,7 +50,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0081 b/test/confs/0081
index f403728..2e020e0 100644
--- a/test/confs/0081
+++ b/test/confs/0081
@@ -28,7 +28,7 @@ local_delivery:
debug_print = ">$h_X-one:<\n"
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0082 b/test/confs/0082
index 29ff8d1..fca3e7b 100644
--- a/test/confs/0082
+++ b/test/confs/0082
@@ -26,7 +26,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = "Proto: $received_protocol"
return_path_add
user = CALLER
diff --git a/test/confs/0083 b/test/confs/0083
index fcae1f5..4ab79fc 100644
--- a/test/confs/0083
+++ b/test/confs/0083
@@ -26,7 +26,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = "Proto: $received_protocol"
return_path_add
user = CALLER
diff --git a/test/confs/0084 b/test/confs/0084
index 94e386e..bbee05f 100644
--- a/test/confs/0084
+++ b/test/confs/0084
@@ -20,7 +20,7 @@ smart:

forward:
driver = redirect
- file = DIR/aux-fixed/TESTNUM.$local_part
+ file = DIR/aux-fixed/TESTNUM.${bless:$local_part}
redirect_router = localuser
require_files = DIR/aux-fixed/TESTNUM.$local_part
retry_use_local_part
diff --git a/test/confs/0090 b/test/confs/0090
index 907d275..f5dc6f2 100644
--- a/test/confs/0090
+++ b/test/confs/0090
@@ -30,7 +30,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

respond:
diff --git a/test/confs/0094 b/test/confs/0094
index 04c9d80..07698b5 100644
--- a/test/confs/0094
+++ b/test/confs/0094
@@ -42,7 +42,7 @@ begin transports

 appendfile:
   driver = appendfile
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   headers_add = host_lookup_failed: $host_lookup_failed\n\
                 host_lookup_deferred: $host_lookup_deferred
   user = CALLER
diff --git a/test/confs/0095 b/test/confs/0095
index c20b06d..b1201f8 100644
--- a/test/confs/0095
+++ b/test/confs/0095
@@ -39,7 +39,7 @@ begin transports


appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
quota = $h_quota
quota_warn_threshold = $h_threshold
QWM
@@ -47,14 +47,14 @@ appendfile:

appendfile2:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
quota = $h_quota
quota_warn_threshold = $h_threshold
user = CALLER

appendfile3:
driver = appendfile
- file = DIR/test-mail/$local_part${if eq{$sender_address}{}{.bounce}}
+ file = DIR/test-mail/${bless:$local_part}${if eq{$sender_address}{}{.bounce}}
quota_warn_threshold = $h_threshold
user = CALLER
headers_add = X:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
diff --git a/test/confs/0096 b/test/confs/0096
index ff5f5ce..1eb5194 100644
--- a/test/confs/0096
+++ b/test/confs/0096
@@ -29,7 +29,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0097 b/test/confs/0097
index 0841952..495349d 100644
--- a/test/confs/0097
+++ b/test/confs/0097
@@ -29,7 +29,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = "${if def:h_tadd: {Added: by transport}}"
headers_remove = "${if def::h_tadd:: {tadd}}"
return_path_add
diff --git a/test/confs/0098 b/test/confs/0098
index cce115f..e16b25e 100644
--- a/test/confs/0098
+++ b/test/confs/0098
@@ -84,7 +84,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0100 b/test/confs/0100
index 143ff4c..afe04a4 100644
--- a/test/confs/0100
+++ b/test/confs/0100
@@ -84,7 +84,7 @@ local_delivery:
   driver = appendfile
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   return_path_add
   current_directory = /
   user = CALLER
@@ -93,7 +93,7 @@ hackfree_local_delivery:
   driver = appendfile
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   check_string =
   return_path_add
   user = CALLER
@@ -105,7 +105,7 @@ bsmtp_local_delivery:
   use_bsmtp
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   return_path_add
   user = CALLER
   current_directory = /
@@ -116,7 +116,7 @@ bsmtp_local_delivery_filtered:
   use_bsmtp
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   return_path_add
   transport_filter = /bin/sh -c "echo 'X-Filtered: just checking'; cat"
   user = CALLER
@@ -136,7 +136,7 @@ filtered_local_delivery:
   driver = appendfile
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   return_path_add
   transport_filter = /bin/sh -c "echo 'X-Filtered: just checking'; cat"
   current_directory = /
@@ -146,7 +146,7 @@ mmdf_local_delivery:
   driver = appendfile
   check_string = "\1\1\1\1\n"
   escape_string = "\1\1\1\1 \n"
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   message_prefix = "\1\1\1\1\n"
   message_suffix = "\1\1\1\1\n"
   user = CALLER
diff --git a/test/confs/0102 b/test/confs/0102
index 2497fd0..30b1496 100644
--- a/test/confs/0102
+++ b/test/confs/0102
@@ -38,7 +38,7 @@ local_delivery:
   driver = appendfile
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   file_format = "From       : local_delivery :\
                  MAIL       : bsmtp_local_delivery :\
                  \1\1\1\1\n : mmdf_local_delivery :\
@@ -52,7 +52,7 @@ bsmtp_local_delivery:
   use_bsmtp
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   return_path_add
   user = CALLER


@@ -60,7 +60,7 @@ mmdf_local_delivery:
driver = appendfile
check_string = "\1\1\1\1\n"
escape_string = "\1\1\1\1 \n"
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
message_prefix = "\1\1\1\1\n"
message_suffix = "\1\1\1\1\n"
user = CALLER
diff --git a/test/confs/0103 b/test/confs/0103
index 9a136c7..547109a 100644
--- a/test/confs/0103
+++ b/test/confs/0103
@@ -53,7 +53,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0104 b/test/confs/0104
index de0889a..3cbebc8 100644
--- a/test/confs/0104
+++ b/test/confs/0104
@@ -44,7 +44,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0105 b/test/confs/0105
index 1b954f4..851f12c 100644
--- a/test/confs/0105
+++ b/test/confs/0105
@@ -42,7 +42,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0107 b/test/confs/0107
index 9bbb7e7..5f6a80e 100644
--- a/test/confs/0107
+++ b/test/confs/0107
@@ -28,7 +28,7 @@ appendfile:
   create_file = belowhome
   file = ${lookup{$local_part}lsearch{DIR/aux-fixed/TESTNUM.filelist}\
          {${if match{$value}{^/}{}{DIR/}}$value}\
-         {DIR/test-mail/$local_part}}
+         {DIR/test-mail/${bless:$local_part}}}
   user = CALLER


# ----- Retry -----
diff --git a/test/confs/0110 b/test/confs/0110
index 361c12f..e4716f6 100644
--- a/test/confs/0110
+++ b/test/confs/0110
@@ -44,7 +44,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0111 b/test/confs/0111
index 61fc9a8..3b4386b 100644
--- a/test/confs/0111
+++ b/test/confs/0111
@@ -43,7 +43,7 @@ begin transports
appendfile:
driver = appendfile
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0113 b/test/confs/0113
index 1fd6100..2c0c573 100644
--- a/test/confs/0113
+++ b/test/confs/0113
@@ -45,7 +45,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0116 b/test/confs/0116
index 313d32c..6916642 100644
--- a/test/confs/0116
+++ b/test/confs/0116
@@ -51,7 +51,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
headers_add = Added: $address_data

diff --git a/test/confs/0118 b/test/confs/0118
index cf8838f..1f741cc 100644
--- a/test/confs/0118
+++ b/test/confs/0118
@@ -41,7 +41,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0121 b/test/confs/0121
index ca2d338..550971e 100644
--- a/test/confs/0121
+++ b/test/confs/0121
@@ -59,7 +59,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0127 b/test/confs/0127
index 1906bb4..83dd031 100644
--- a/test/confs/0127
+++ b/test/confs/0127
@@ -37,7 +37,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0128 b/test/confs/0128
index 9acfb5e..e4f78dc 100644
--- a/test/confs/0128
+++ b/test/confs/0128
@@ -41,7 +41,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0131 b/test/confs/0131
index c55813e..c3df9a8 100644
--- a/test/confs/0131
+++ b/test/confs/0131
@@ -25,7 +25,7 @@ forward:
driver = redirect
allow_filter
no_check_local_user
- file = DIR/aux-fixed/TESTNUM.$local_part
+ file = DIR/aux-fixed/TESTNUM.${bless:$local_part}
retry_use_local_part
user = CALLER
address_data = $address_data-forward
@@ -43,7 +43,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
headers_add = Address-Data: >$address_data<

diff --git a/test/confs/0133 b/test/confs/0133
index bc4e628..2c9cdb8 100644
--- a/test/confs/0133
+++ b/test/confs/0133
@@ -42,7 +42,7 @@ begin transports
appendfile:
driver = appendfile
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0135 b/test/confs/0135
index 7fd5bda..1318e02 100644
--- a/test/confs/0135
+++ b/test/confs/0135
@@ -49,7 +49,7 @@ smtp:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
quota = 20
user = CALLER

diff --git a/test/confs/0136 b/test/confs/0136
index efc73c5..acc1003 100644
--- a/test/confs/0136
+++ b/test/confs/0136
@@ -63,7 +63,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0137 b/test/confs/0137
index 7c48d62..faab263 100644
--- a/test/confs/0137
+++ b/test/confs/0137
@@ -30,14 +30,14 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
lock_interval = 1s
lock_retries = 2
user = CALLER

local_delivery_fcntl:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
lock_interval = 1s
lock_retries = 2
no_use_lockfile
@@ -45,7 +45,7 @@ local_delivery_fcntl:

local_delivery_fcntl_blocking:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
lock_fcntl_timeout = 2s
lock_interval = 1s
lock_retries = 2
diff --git a/test/confs/0138 b/test/confs/0138
index 66539d6..01bdfaa 100644
--- a/test/confs/0138
+++ b/test/confs/0138
@@ -54,7 +54,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0139 b/test/confs/0139
index eb3990c..13a90df 100644
--- a/test/confs/0139
+++ b/test/confs/0139
@@ -80,7 +80,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0140 b/test/confs/0140
index 0256715..5661c5d 100644
--- a/test/confs/0140
+++ b/test/confs/0140
@@ -45,7 +45,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0142 b/test/confs/0142
index 748e76b..716ad5f 100644
--- a/test/confs/0142
+++ b/test/confs/0142
@@ -43,12 +43,12 @@ pipe:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

filtered_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
transport_filter = DIR/bin/fd -f
user = CALLER

diff --git a/test/confs/0149 b/test/confs/0149
index 60c742a..8527d30 100644
--- a/test/confs/0149
+++ b/test/confs/0149
@@ -40,7 +40,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0150 b/test/confs/0150
index dd421a1..256080a 100644
--- a/test/confs/0150
+++ b/test/confs/0150
@@ -25,7 +25,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0151 b/test/confs/0151
index d5d1786..0baf345 100644
--- a/test/confs/0151
+++ b/test/confs/0151
@@ -26,7 +26,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0152 b/test/confs/0152
index 7671d52..5d50c9f 100644
--- a/test/confs/0152
+++ b/test/confs/0152
@@ -28,7 +28,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0153 b/test/confs/0153
index c16f88f..69e02eb 100644
--- a/test/confs/0153
+++ b/test/confs/0153
@@ -22,7 +22,7 @@ virtual:
 list:
   driver = redirect
   domains = list.test.ex
-  file = ${if exists{DIR/aux-fixed/TESTNUM.list.$local_part} \
+  file = ${if exists{DIR/aux-fixed/TESTNUM.list.${bless:$local_part}} \
             {DIR/aux-fixed/TESTNUM.list.$local_part}fail}
   no_more


diff --git a/test/confs/0156 b/test/confs/0156
index d1faa75..79dcde2 100644
--- a/test/confs/0156
+++ b/test/confs/0156
@@ -30,7 +30,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0158 b/test/confs/0158
index ccd261e..8a5c00e 100644
--- a/test/confs/0158
+++ b/test/confs/0158
@@ -28,7 +28,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = $local_part

diff --git a/test/confs/0159 b/test/confs/0159
index e648d93..7fcaf60 100644
--- a/test/confs/0159
+++ b/test/confs/0159
@@ -28,7 +28,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0164 b/test/confs/0164
index 6d94efd..d80f383 100644
--- a/test/confs/0164
+++ b/test/confs/0164
@@ -29,7 +29,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

address_pipe:
diff --git a/test/confs/0165 b/test/confs/0165
index 03e9a82..48fe63b 100644
--- a/test/confs/0165
+++ b/test/confs/0165
@@ -29,7 +29,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

address_pipe:
diff --git a/test/confs/0166 b/test/confs/0166
index 93489dc..3158ac5 100644
--- a/test/confs/0166
+++ b/test/confs/0166
@@ -37,7 +37,7 @@ begin transports
local_delivery:
driver = appendfile
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
headers_add = X-tpt-hdr: 1
headers_add = ${if bool{false} {X-tpt-hdr: 2}}
diff --git a/test/confs/0167 b/test/confs/0167
index a65b9ed..a3e045f 100644
--- a/test/confs/0167
+++ b/test/confs/0167
@@ -35,7 +35,7 @@ begin transports
local_delivery:
driver = appendfile
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path = ${if eq{$return_path}{trakill@???}{}fail}
return_path_add
user = CALLER
diff --git a/test/confs/0169 b/test/confs/0169
index beafec5..ec8bf79 100644
--- a/test/confs/0169
+++ b/test/confs/0169
@@ -23,7 +23,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
quota = $h_quota
quota_warn_threshold = $h_threshold
user = CALLER
diff --git a/test/confs/0171 b/test/confs/0171
index fe4fc2c..345a181 100644
--- a/test/confs/0171
+++ b/test/confs/0171
@@ -24,7 +24,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = home: HOME=$home
user = CALLER

diff --git a/test/confs/0172 b/test/confs/0172
index 9dcc42f..7b33518 100644
--- a/test/confs/0172
+++ b/test/confs/0172
@@ -28,7 +28,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0173 b/test/confs/0173
index bfddc71..dfe894e 100644
--- a/test/confs/0173
+++ b/test/confs/0173
@@ -29,7 +29,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

pipe:
diff --git a/test/confs/0174 b/test/confs/0174
index 32a3bde..5498e2b 100644
--- a/test/confs/0174
+++ b/test/confs/0174
@@ -52,7 +52,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

pipe:
diff --git a/test/confs/0175 b/test/confs/0175
index 461c265..3f2cc8c 100644
--- a/test/confs/0175
+++ b/test/confs/0175
@@ -62,7 +62,7 @@ smtp:

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0176 b/test/confs/0176
index 81d0b5d..d5c86ca 100644
--- a/test/confs/0176
+++ b/test/confs/0176
@@ -26,7 +26,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0177 b/test/confs/0177
index 0b78d4e..ff780c1 100644
--- a/test/confs/0177
+++ b/test/confs/0177
@@ -65,7 +65,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

autoreply:
diff --git a/test/confs/0178 b/test/confs/0178
index bdabf6a..2554e0a 100644
--- a/test/confs/0178
+++ b/test/confs/0178
@@ -26,7 +26,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0182 b/test/confs/0182
index 17d6078..c23722a 100644
--- a/test/confs/0182
+++ b/test/confs/0182
@@ -34,7 +34,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0185 b/test/confs/0185
index d9d20fc..b8bf04d 100644
--- a/test/confs/0185
+++ b/test/confs/0185
@@ -62,7 +62,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

autoreply:
diff --git a/test/confs/0189 b/test/confs/0189
index 5d12465..4d63ddf 100644
--- a/test/confs/0189
+++ b/test/confs/0189
@@ -25,7 +25,7 @@ begin transports
local_delivery:
driver = appendfile
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0192 b/test/confs/0192
index d7bd3c1..e19bd00 100644
--- a/test/confs/0192
+++ b/test/confs/0192
@@ -23,7 +23,7 @@ begin transports

appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
quota = 500
no_quota_is_inclusive
user = CALLER
diff --git a/test/confs/0193 b/test/confs/0193
index 4dbb066..483d050 100644
--- a/test/confs/0193
+++ b/test/confs/0193
@@ -34,7 +34,7 @@ local_delivery:
driver = appendfile
batch_max = 100
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
message_size_limit = 50
user = CALLER

diff --git a/test/confs/0194 b/test/confs/0194
index d813d92..abeaafc 100644
--- a/test/confs/0194
+++ b/test/confs/0194
@@ -31,7 +31,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

pipe:
diff --git a/test/confs/0195 b/test/confs/0195
index 2d51beb..1603244 100644
--- a/test/confs/0195
+++ b/test/confs/0195
@@ -38,7 +38,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0196 b/test/confs/0196
index 38a8391..6909969 100644
--- a/test/confs/0196
+++ b/test/confs/0196
@@ -41,7 +41,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0202 b/test/confs/0202
index dc68127..92a2dce 100644
--- a/test/confs/0202
+++ b/test/confs/0202
@@ -31,7 +31,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0204 b/test/confs/0204
index 138dbe0..688e0e9 100644
--- a/test/confs/0204
+++ b/test/confs/0204
@@ -25,7 +25,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0205 b/test/confs/0205
index 069e850..abc93e7 100644
--- a/test/confs/0205
+++ b/test/confs/0205
@@ -42,7 +42,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
headers_add = Address-Data: >$address_data<

diff --git a/test/confs/0210 b/test/confs/0210
index 298ad72..3e5661c 100644
--- a/test/confs/0210
+++ b/test/confs/0210
@@ -44,7 +44,7 @@ bsmtp_local_delivery:
message_prefix = "HELO x.y.z\n"
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0211 b/test/confs/0211
index b1dae70..f68b036 100644
--- a/test/confs/0211
+++ b/test/confs/0211
@@ -57,7 +57,7 @@ smtp:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0212 b/test/confs/0212
index 39db8c8..8b8d744 100644
--- a/test/confs/0212
+++ b/test/confs/0212
@@ -58,7 +58,7 @@ alias:
forward:
driver = redirect
no_check_local_user
- file = DIR/aux-fixed/TESTNUM.$local_part.forward
+ file = DIR/aux-fixed/TESTNUM.${bless:$local_part}.forward
retry_use_local_part

all:
@@ -73,7 +73,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0220 b/test/confs/0220
index 36cf872..8e5af4e 100644
--- a/test/confs/0220
+++ b/test/confs/0220
@@ -26,7 +26,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0221 b/test/confs/0221
index f7855a6..4ac979c 100644
--- a/test/confs/0221
+++ b/test/confs/0221
@@ -26,7 +26,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0222 b/test/confs/0222
index 8f4a5b6..91f7453 100644
--- a/test/confs/0222
+++ b/test/confs/0222
@@ -32,7 +32,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

autoreply:
diff --git a/test/confs/0223 b/test/confs/0223
index e42df51..56476a3 100644
--- a/test/confs/0223
+++ b/test/confs/0223
@@ -42,7 +42,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0224 b/test/confs/0224
index d1c425b..ff77339 100644
--- a/test/confs/0224
+++ b/test/confs/0224
@@ -45,7 +45,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0225 b/test/confs/0225
index 0ed97b4..a778c2f 100644
--- a/test/confs/0225
+++ b/test/confs/0225
@@ -44,7 +44,7 @@ smtp:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0226 b/test/confs/0226
index 0b6eeff..f5be03e 100644
--- a/test/confs/0226
+++ b/test/confs/0226
@@ -34,7 +34,7 @@ allowed:
driver = redirect
allow_defer
caseful_local_part
- data = $local_part
+ data = ${bless:$local_part}
file_transport = address_file
pipe_transport = address_pipe
retry_use_local_part
@@ -47,7 +47,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

address_file:
diff --git a/test/confs/0230 b/test/confs/0230
index f77f52f..08a6722 100644
--- a/test/confs/0230
+++ b/test/confs/0230
@@ -57,7 +57,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = Port: $sender_host_port
user = CALLER

diff --git a/test/confs/0231 b/test/confs/0231
index 1eabae9..67f21c0 100644
--- a/test/confs/0231
+++ b/test/confs/0231
@@ -51,13 +51,13 @@ begin transports

local_delivery_rewrite:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_rewrite = a@??? a-rewrite@???
user = CALLER

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

smtp_rewrite:
diff --git a/test/confs/0232 b/test/confs/0232
index 59e1ae9..11e4523 100644
--- a/test/confs/0232
+++ b/test/confs/0232
@@ -39,7 +39,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0233 b/test/confs/0233
index 77dcca3..054ab7d 100644
--- a/test/confs/0233
+++ b/test/confs/0233
@@ -39,7 +39,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

address_reply:
diff --git a/test/confs/0237 b/test/confs/0237
index be2f5ab..8939dc7 100644
--- a/test/confs/0237
+++ b/test/confs/0237
@@ -35,7 +35,7 @@ allowed:
driver = redirect
allow_defer
caseful_local_part
- data = $local_part
+ data = ${bless:$local_part}
file_transport = address_file
hide_child_in_errmsg
pipe_transport = address_pipe
@@ -49,7 +49,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

address_file:
diff --git a/test/confs/0240 b/test/confs/0240
index bb4519e..62a1923 100644
--- a/test/confs/0240
+++ b/test/confs/0240
@@ -90,7 +90,7 @@ begin transports
local:
driver = appendfile
directory_mode = 3777
- file = DIR/test-mail/subdir/$local_part
+ file = DIR/test-mail/subdir/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0241 b/test/confs/0241
index 644ed6b..944c517 100644
--- a/test/confs/0241
+++ b/test/confs/0241
@@ -37,7 +37,7 @@ begin transports

local:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

address_reply:
diff --git a/test/confs/0243 b/test/confs/0243
index 7396045..5a2f501 100644
--- a/test/confs/0243
+++ b/test/confs/0243
@@ -59,7 +59,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

address_file:
diff --git a/test/confs/0246 b/test/confs/0246
index fb95952..fe62bfd 100644
--- a/test/confs/0246
+++ b/test/confs/0246
@@ -35,7 +35,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

t2:
diff --git a/test/confs/0253 b/test/confs/0253
index 40ede04..5713106 100644
--- a/test/confs/0253
+++ b/test/confs/0253
@@ -42,7 +42,7 @@ begin transports

t0:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

t1:
diff --git a/test/confs/0256 b/test/confs/0256
index c5d5d4b..e48c696 100644
--- a/test/confs/0256
+++ b/test/confs/0256
@@ -30,7 +30,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0258 b/test/confs/0258
index 720cc40..25de1af 100644
--- a/test/confs/0258
+++ b/test/confs/0258
@@ -24,7 +24,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0260 b/test/confs/0260
index 6366cd0..257ea82 100644
--- a/test/confs/0260
+++ b/test/confs/0260
@@ -14,7 +14,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

bad_return:
@@ -30,7 +30,7 @@ bad_uid:

exp_fail:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
home_directory = ${if rhubarb

diff --git a/test/confs/0264 b/test/confs/0264
index 7c0a066..9e16d1d 100644
--- a/test/confs/0264
+++ b/test/confs/0264
@@ -15,7 +15,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

quota = ${if eq{$local_part}{userx}{3}{10000}}
@@ -24,7 +24,7 @@ local_delivery:
local_delivery2:
driver = appendfile
retry_use_local_part = false
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
quota = 3
current_directory = /
diff --git a/test/confs/0266 b/test/confs/0266
index d1e944d..42ea1b1 100644
--- a/test/confs/0266
+++ b/test/confs/0266
@@ -15,7 +15,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
envelope_to_add
return_path_add
@@ -29,14 +29,14 @@ r1:
skip_syntax_errors
local_parts = ^list
syntax_errors_to = postmaster@???
- file = DIR/aux-fixed/TESTNUM.$local_part
+ file = DIR/aux-fixed/TESTNUM.${bless:$local_part}

r1a:
driver = redirect
skip_syntax_errors
local_parts = ^nmlist
syntax_errors_to = postmaster@???
- file = DIR/aux-fixed/TESTNUM.$local_part
+ file = DIR/aux-fixed/TESTNUM.${bless:$local_part}
no_more

 r2:
@@ -46,7 +46,7 @@ r2:
   syntax_errors_to = postmaster@???
   syntax_errors_text = "There's an error in your filter file.\n\
                         The file has been ignored."
-  file = DIR/aux-fixed/TESTNUM.$local_part
+  file = DIR/aux-fixed/TESTNUM.${bless:$local_part}
   allow_filter
   router_home_directory = DIR
   user = CALLER
diff --git a/test/confs/0267 b/test/confs/0267
index bb13444..e99d29f 100644
--- a/test/confs/0267
+++ b/test/confs/0267
@@ -14,7 +14,7 @@ begin transports


t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# ----- Routers -----
diff --git a/test/confs/0270 b/test/confs/0270
index 86f81d8..e09ff0e 100644
--- a/test/confs/0270
+++ b/test/confs/0270
@@ -15,7 +15,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
envelope_to_add
return_path_add
@@ -29,14 +29,14 @@ r1:
skip_syntax_errors
local_parts = ^list
syntax_errors_to = postmaster@???
- file = DIR/aux-fixed/TESTNUM.$local_part
+ file = DIR/aux-fixed/TESTNUM.${bless:$local_part}

r1a:
driver = redirect
skip_syntax_errors
local_parts = ^nmlist
syntax_errors_to = postmaster@???
- file = DIR/aux-fixed/TESTNUM.$local_part
+ file = DIR/aux-fixed/TESTNUM.${bless:$local_part}
no_more

 r2:
@@ -46,7 +46,7 @@ r2:
   syntax_errors_to = postmaster@???
   syntax_errors_text = "There's an error in your filter file.\n\
                         The file has been ignored."
-  file = DIR/aux-fixed/TESTNUM.$local_part
+  file = DIR/aux-fixed/TESTNUM.${bless:$local_part}
   allow_filter
   router_home_directory = DIR/
   user = CALLER
diff --git a/test/confs/0271 b/test/confs/0271
index 93c2724..b9512dc 100644
--- a/test/confs/0271
+++ b/test/confs/0271
@@ -14,7 +14,7 @@ begin transports


t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# ----- Routers -----
diff --git a/test/confs/0274 b/test/confs/0274
index 2eb7bb6..461acfc 100644
--- a/test/confs/0274
+++ b/test/confs/0274
@@ -14,7 +14,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/${if eq{$address_data}{}{$local_part}{$address_data}}
+ file = DIR/test-mail/${if eq{$address_data}{}{${bless:$local_part}}{$address_data}}
user = CALLER

# ----- Routers -----
diff --git a/test/confs/0280 b/test/confs/0280
index 40187df..10717bd 100644
--- a/test/confs/0280
+++ b/test/confs/0280
@@ -18,7 +18,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# ----- Routers -----
diff --git a/test/confs/0281 b/test/confs/0281
index 277328e..3f737f3 100644
--- a/test/confs/0281
+++ b/test/confs/0281
@@ -68,7 +68,7 @@ dev_null:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0282 b/test/confs/0282
index 7eeddd2..00958b9 100644
--- a/test/confs/0282
+++ b/test/confs/0282
@@ -26,7 +26,7 @@ begin transports

 local_delivery:
   driver = appendfile
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   user = CALLER
   headers_add = interface-port: $interface_port\n\
                 received-port:  $received_port
diff --git a/test/confs/0283 b/test/confs/0283
index 31d9339..7f40efb 100644
--- a/test/confs/0283
+++ b/test/confs/0283
@@ -37,12 +37,12 @@ t1:


t2:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

t3:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = root

# ----- Retry -----
diff --git a/test/confs/0284 b/test/confs/0284
index 0103742..98f5660 100644
--- a/test/confs/0284
+++ b/test/confs/0284
@@ -35,14 +35,14 @@ t1:
t2:
driver = appendfile
batch_max = 100
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
envelope_to_add
user = CALLER

t3:
driver = appendfile
batch_max = 100
- file = DIR/test-mail/$domain
+ file = DIR/test-mail/${bless:$domain}
envelope_to_add
user = CALLER

diff --git a/test/confs/0289 b/test/confs/0289
index 8cd2018..56f5011 100644
--- a/test/confs/0289
+++ b/test/confs/0289
@@ -26,7 +26,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0296 b/test/confs/0296
index e1f545a..6241af0 100644
--- a/test/confs/0296
+++ b/test/confs/0296
@@ -25,7 +25,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0297 b/test/confs/0297
index b07fc54..2c98b99 100644
--- a/test/confs/0297
+++ b/test/confs/0297
@@ -17,7 +17,7 @@ begin routers

r1:
driver = redirect
- data = $local_part
+ data = ${bless:$local_part}
file_transport = ${if eq {$address_file}{/a/b/c}{tf1}{tf2}}
directory_transport = ${if match{$address_file}{//\$}{td2}{td1}}
user = CALLER
diff --git a/test/confs/0298 b/test/confs/0298
index 3ca06f8..f4f3990 100644
--- a/test/confs/0298
+++ b/test/confs/0298
@@ -32,7 +32,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0299 b/test/confs/0299
index d7dc873..629f9c4 100644
--- a/test/confs/0299
+++ b/test/confs/0299
@@ -30,7 +30,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
shadow_transport = t3

diff --git a/test/confs/0306 b/test/confs/0306
index 6d6d965..c8bd1f3 100644
--- a/test/confs/0306
+++ b/test/confs/0306
@@ -27,14 +27,14 @@ r1:
driver = redirect
domains = lists.test.ex
local_part_suffix = -request
- file = DIR/aux-fixed/TESTNUM/$local_part$local_part_suffix
+ file = DIR/aux-fixed/TESTNUM/${bless:$local_part}$local_part_suffix

 r2:
   driver = redirect
   domains = lists.test.ex
   senders = ${if exists {DIR/aux-fixed/TESTNUM/$local_part}\
              {lsearch;DIR/aux-fixed/TESTNUM/$local_part}{*}}
-  file = DIR/aux-fixed/TESTNUM/$local_part
+  file = DIR/aux-fixed/TESTNUM/${bless:$local_part}
   forbid_pipe
   forbid_file
   one_time
@@ -64,7 +64,7 @@ begin transports


t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

 t2:
diff --git a/test/confs/0307 b/test/confs/0307
index 3252b46..c201989 100644
--- a/test/confs/0307
+++ b/test/confs/0307
@@ -24,7 +24,7 @@ r1:
             ${if exists {DIR/aux-fixed/TESTNUM/$local_part}\
              {lsearch;DIR/aux-fixed/TESTNUM/$local_part}{*}}\
             }}
-  file = DIR/aux-fixed/TESTNUM/$local_part$local_part_suffix
+  file = DIR/aux-fixed/TESTNUM/${bless:$local_part}$local_part_suffix
   forbid_pipe
   forbid_file
   one_time
@@ -54,7 +54,7 @@ begin transports


t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

t2:
diff --git a/test/confs/0309 b/test/confs/0309
index 4d64490..0a49f22 100644
--- a/test/confs/0309
+++ b/test/confs/0309
@@ -29,13 +29,13 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
message_size_limit = $local_part
user = CALLER

bounce:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0310 b/test/confs/0310
index 0f324da..a999c26 100644
--- a/test/confs/0310
+++ b/test/confs/0310
@@ -28,13 +28,13 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
quota = 5
user = CALLER

bounce:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0318 b/test/confs/0318
index 51633d9..ec778a7 100644
--- a/test/confs/0318
+++ b/test/confs/0318
@@ -25,7 +25,7 @@ begin transports
local_delivery:
driver = appendfile
directory = DIR/test-mail
- directory_file = $local_part
+ directory_file = ${bless:$local_part}
user = CALLER


diff --git a/test/confs/0319 b/test/confs/0319
index aaa21d7..65416e8 100644
--- a/test/confs/0319
+++ b/test/confs/0319
@@ -31,7 +31,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

address_file:
diff --git a/test/confs/0321 b/test/confs/0321
index 624202e..e73eda6 100644
--- a/test/confs/0321
+++ b/test/confs/0321
@@ -42,7 +42,7 @@ pipe:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0324 b/test/confs/0324
index 129e5df..3047764 100644
--- a/test/confs/0324
+++ b/test/confs/0324
@@ -25,7 +25,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0326 b/test/confs/0326
index 8f44d3c..a983e07 100644
--- a/test/confs/0326
+++ b/test/confs/0326
@@ -38,7 +38,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0327 b/test/confs/0327
index 481aaa7..85b4f89 100644
--- a/test/confs/0327
+++ b/test/confs/0327
@@ -40,12 +40,12 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

t2:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0328 b/test/confs/0328
index 76f8985..b52a2e1 100644
--- a/test/confs/0328
+++ b/test/confs/0328
@@ -28,7 +28,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0329 b/test/confs/0329
index f9d5bcb..e126d8c 100644
--- a/test/confs/0329
+++ b/test/confs/0329
@@ -29,7 +29,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0330 b/test/confs/0330
index 78701a9..066292d 100644
--- a/test/confs/0330
+++ b/test/confs/0330
@@ -37,7 +37,7 @@ begin transports
appendfile:
driver = appendfile
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0335 b/test/confs/0335
index 6529028..5a99e9b 100644
--- a/test/confs/0335
+++ b/test/confs/0335
@@ -28,7 +28,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
envelope_to_add

diff --git a/test/confs/0338 b/test/confs/0338
index d373f47..d3aa237 100644
--- a/test/confs/0338
+++ b/test/confs/0338
@@ -39,7 +39,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/0345 b/test/confs/0345
index 651d070..939bbea 100644
--- a/test/confs/0345
+++ b/test/confs/0345
@@ -28,7 +28,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
quota = 20
user = CALLER

diff --git a/test/confs/0346 b/test/confs/0346
index 1c4b51c..61a4877 100644
--- a/test/confs/0346
+++ b/test/confs/0346
@@ -38,7 +38,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
envelope_to_add

diff --git a/test/confs/0351 b/test/confs/0351
index b00ee74..c4353bc 100644
--- a/test/confs/0351
+++ b/test/confs/0351
@@ -27,7 +27,7 @@ begin transports
 t1:
   driver = appendfile
   user = CALLER
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   headers_add = "\n\
                 TO: $h_to:\n\
                 --------------------------------\n\
diff --git a/test/confs/0352 b/test/confs/0352
index aaa9809..1a37f41 100644
--- a/test/confs/0352
+++ b/test/confs/0352
@@ -26,6 +26,6 @@ begin transports
 t1:
   driver = appendfile
   user = CALLER
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}


# End
diff --git a/test/confs/0353 b/test/confs/0353
index fb53d6d..0f9ef9f 100644
--- a/test/confs/0353
+++ b/test/confs/0353
@@ -26,6 +26,6 @@ begin transports
t1:
driver = appendfile
user = CALLER
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}

# End
diff --git a/test/confs/0354 b/test/confs/0354
index 03ea43f..4cb6702 100644
--- a/test/confs/0354
+++ b/test/confs/0354
@@ -27,6 +27,6 @@ begin transports
t1:
driver = appendfile
user = CALLER
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}

# End
diff --git a/test/confs/0355 b/test/confs/0355
index 78b1484..f24f02b 100644
--- a/test/confs/0355
+++ b/test/confs/0355
@@ -29,6 +29,6 @@ begin transports
t1:
driver = appendfile
user = CALLER
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}

# End
diff --git a/test/confs/0359 b/test/confs/0359
index 6b6b8c0..5081b49 100644
--- a/test/confs/0359
+++ b/test/confs/0359
@@ -30,7 +30,7 @@ t1:

t2:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = X-shadowed:
user = CALLER

diff --git a/test/confs/0362 b/test/confs/0362
index cdfe7d5..34855e2 100644
--- a/test/confs/0362
+++ b/test/confs/0362
@@ -52,7 +52,7 @@ t1:

t2:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0374 b/test/confs/0374
index 2843442..1cae025 100644
--- a/test/confs/0374
+++ b/test/confs/0374
@@ -50,7 +50,7 @@ begin transports
# Successful local transport
ut1:
driver = appendfile
- file = DIR/test-mail/$local_part-u
+ file = DIR/test-mail/${bless:$local_part}-u
user = CALLER
return_path_add
envelope_to_add
@@ -83,7 +83,7 @@ ut4:
# Real delivery
real:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
return_path_add
envelope_to_add
diff --git a/test/confs/0375 b/test/confs/0375
index 164f327..dce134e 100644
--- a/test/confs/0375
+++ b/test/confs/0375
@@ -85,7 +85,7 @@ begin transports
# Successful local transport
ut1:
driver = appendfile
- file = DIR/test-mail/$local_part-u
+ file = DIR/test-mail/${bless:$local_part}-u
user = CALLER
return_path_add
envelope_to_add
@@ -146,7 +146,7 @@ ut6:
# Real delivery
real:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
return_path_add
envelope_to_add
diff --git a/test/confs/0377 b/test/confs/0377
index bd3391b..ba8c0aa 100644
--- a/test/confs/0377
+++ b/test/confs/0377
@@ -65,7 +65,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0379 b/test/confs/0379
index 2f1216b..a3d1423 100644
--- a/test/confs/0379
+++ b/test/confs/0379
@@ -36,7 +36,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0380 b/test/confs/0380
index 90d1f93..0bad1f7 100644
--- a/test/confs/0380
+++ b/test/confs/0380
@@ -25,13 +25,13 @@ r0:
r1:
driver = redirect
local_parts = aaaa
- file = DIR/non-exist/$local_part
+ file = DIR/non-exist/${bless:$local_part}

r2:
driver = redirect
local_parts = bbbb
ignore_enotdir
- file = DIR/non-exist/$local_part
+ file = DIR/non-exist/${bless:$local_part}

r3:
driver = accept
@@ -43,7 +43,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0383 b/test/confs/0383
index ea2f1dc..1a26375 100644
--- a/test/confs/0383
+++ b/test/confs/0383
@@ -39,7 +39,7 @@ t1:

t2:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0385 b/test/confs/0385
index f66e6b8..4d67fed 100644
--- a/test/confs/0385
+++ b/test/confs/0385
@@ -31,7 +31,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0386 b/test/confs/0386
index 0af3202..983af9b 100644
--- a/test/confs/0386
+++ b/test/confs/0386
@@ -36,7 +36,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0393 b/test/confs/0393
index c029d0d..7ec2e80 100644
--- a/test/confs/0393
+++ b/test/confs/0393
@@ -27,7 +27,7 @@ begin transports
t1:
driver = appendfile
user = CALLER
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
transport_filter = FILTER


diff --git a/test/confs/0395 b/test/confs/0395
index b7fc3fd..c1c91d5 100644
--- a/test/confs/0395
+++ b/test/confs/0395
@@ -28,7 +28,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0398 b/test/confs/0398
index e71a01c..02b5370 100644
--- a/test/confs/0398
+++ b/test/confs/0398
@@ -54,7 +54,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

t2:
diff --git a/test/confs/0404 b/test/confs/0404
index 9d0dc5c..542978c 100644
--- a/test/confs/0404
+++ b/test/confs/0404
@@ -35,7 +35,7 @@ t1:

t2:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0408 b/test/confs/0408
index 903b4ca..af74310 100644
--- a/test/confs/0408
+++ b/test/confs/0408
@@ -26,7 +26,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0412 b/test/confs/0412
index f8b9c69..75147a3 100644
--- a/test/confs/0412
+++ b/test/confs/0412
@@ -26,7 +26,7 @@ begin transports
 t1:
   driver = appendfile
   user = CALLER
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   headers_add = "\n\
                 FROM: $h_from:\n\
                 --------------------------------\n\
diff --git a/test/confs/0421 b/test/confs/0421
index 6d12ce2..99c2608 100644
--- a/test/confs/0421
+++ b/test/confs/0421
@@ -26,7 +26,7 @@ begin transports


t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_rewrite = *@* abc@???
user = CALLER

diff --git a/test/confs/0428 b/test/confs/0428
index 5ee5cdb..b0bcb65 100644
--- a/test/confs/0428
+++ b/test/confs/0428
@@ -151,7 +151,7 @@ begin transports
 t1:
   driver = appendfile
   file = ${if eq{$address_file}{inbox} \
-              {DIR/test-mail/$local_part} \
+              {DIR/test-mail/${bless:$local_part}} \
               {${if eq{${substr_0_1:$address_file}}{/} \
                     {$address_file} \
                     {DIR/test-mail/$address_file} \
@@ -164,7 +164,7 @@ t1:


t2:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
delivery_date_add
envelope_to_add
return_path_add
diff --git a/test/confs/0431 b/test/confs/0431
index 4af033c..c76363e 100644
--- a/test/confs/0431
+++ b/test/confs/0431
@@ -48,7 +48,7 @@ t1:

t2:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
use_bsmtp
AFFIX
diff --git a/test/confs/0436 b/test/confs/0436
index 2fcaef9..01f1ccb 100644
--- a/test/confs/0436
+++ b/test/confs/0436
@@ -23,7 +23,7 @@ t1:
driver = appendfile
envelope_to_add
use_bsmtp
- file = DIR/test-mail/$sender_address_local_part
+ file = DIR/test-mail/${bless:$sender_address_local_part}
user = CALLER
batch_max = 20000

diff --git a/test/confs/0444 b/test/confs/0444
index 2c103ff..7337a40 100644
--- a/test/confs/0444
+++ b/test/confs/0444
@@ -28,7 +28,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

t2:
diff --git a/test/confs/0446 b/test/confs/0446
index 90e8a02..ca8ef39 100644
--- a/test/confs/0446
+++ b/test/confs/0446
@@ -43,7 +43,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0449 b/test/confs/0449
index d08da83..1c0f675 100644
--- a/test/confs/0449
+++ b/test/confs/0449
@@ -27,7 +27,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0452 b/test/confs/0452
index a94295a..3608eee 100644
--- a/test/confs/0452
+++ b/test/confs/0452
@@ -32,7 +32,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

t2:
diff --git a/test/confs/0456 b/test/confs/0456
index 362d6b5..313aa14 100644
--- a/test/confs/0456
+++ b/test/confs/0456
@@ -30,7 +30,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# ----- Retry -----
diff --git a/test/confs/0460 b/test/confs/0460
index 6c6ec74..4918700 100644
--- a/test/confs/0460
+++ b/test/confs/0460
@@ -29,7 +29,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0461 b/test/confs/0461
index 4aca116..6f476e5 100644
--- a/test/confs/0461
+++ b/test/confs/0461
@@ -43,7 +43,7 @@ t1:

t2:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0472 b/test/confs/0472
index 09d5633..0ac7758 100644
--- a/test/confs/0472
+++ b/test/confs/0472
@@ -33,7 +33,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0480 b/test/confs/0480
index 6c2b688..d10d12b 100644
--- a/test/confs/0480
+++ b/test/confs/0480
@@ -42,7 +42,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0481 b/test/confs/0481
index ae1b788..09e3ed8 100644
--- a/test/confs/0481
+++ b/test/confs/0481
@@ -37,7 +37,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0485 b/test/confs/0485
index ad31830..e4711e0 100644
--- a/test/confs/0485
+++ b/test/confs/0485
@@ -54,7 +54,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0487 b/test/confs/0487
index a9c1bab..98ff7bf 100644
--- a/test/confs/0487
+++ b/test/confs/0487
@@ -25,7 +25,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_rewrite = \N$^\N bogus@bogus fw
user = CALLER

diff --git a/test/confs/0491 b/test/confs/0491
index c7d3eae..646f47a 100644
--- a/test/confs/0491
+++ b/test/confs/0491
@@ -30,7 +30,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/0493 b/test/confs/0493
index dd38fbc..8de0b83 100644
--- a/test/confs/0493
+++ b/test/confs/0493
@@ -25,7 +25,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0494 b/test/confs/0494
index 8027cf4..fb159a7 100644
--- a/test/confs/0494
+++ b/test/confs/0494
@@ -29,7 +29,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

t2:
diff --git a/test/confs/0495 b/test/confs/0495
index dc1a394..589686a 100644
--- a/test/confs/0495
+++ b/test/confs/0495
@@ -76,7 +76,7 @@ t2:

t3:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

t4:
diff --git a/test/confs/0496 b/test/confs/0496
index 351cd80..8819f62 100644
--- a/test/confs/0496
+++ b/test/confs/0496
@@ -39,7 +39,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0500 b/test/confs/0500
index f3b225c..74c41e7 100644
--- a/test/confs/0500
+++ b/test/confs/0500
@@ -39,7 +39,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0503 b/test/confs/0503
index aab6cdb..da39a89 100644
--- a/test/confs/0503
+++ b/test/confs/0503
@@ -26,7 +26,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
quota = 1000
MSIZE
diff --git a/test/confs/0504 b/test/confs/0504
index 981ed16..d24fca9 100644
--- a/test/confs/0504
+++ b/test/confs/0504
@@ -22,7 +22,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
transport_filter = /non/existent/file

diff --git a/test/confs/0506 b/test/confs/0506
index d20db5f..35cdef1 100644
--- a/test/confs/0506
+++ b/test/confs/0506
@@ -20,7 +20,7 @@ r1:
user = EXIMUSER
ALLOW
FORBID
- file = DIR/aux-fixed/TESTNUM.$local_part
+ file = DIR/aux-fixed/TESTNUM.${bless:$local_part}


# ----- Retry -----
diff --git a/test/confs/0508 b/test/confs/0508
index 17a1dec..580f693 100644
--- a/test/confs/0508
+++ b/test/confs/0508
@@ -33,7 +33,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

t2:
diff --git a/test/confs/0514 b/test/confs/0514
index 36a2ac3..2457c40 100644
--- a/test/confs/0514
+++ b/test/confs/0514
@@ -25,7 +25,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0517 b/test/confs/0517
index cbb2d4d..cc991b2 100644
--- a/test/confs/0517
+++ b/test/confs/0517
@@ -36,7 +36,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0522 b/test/confs/0522
index 4909db8..2e499ad 100644
--- a/test/confs/0522
+++ b/test/confs/0522
@@ -37,7 +37,7 @@ begin transports

t0:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

t1:
diff --git a/test/confs/0523 b/test/confs/0523
index 9415855..9e86b54 100644
--- a/test/confs/0523
+++ b/test/confs/0523
@@ -30,7 +30,7 @@ begin transports

t0:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
envelope_to_add

diff --git a/test/confs/0530 b/test/confs/0530
index 9eeb4cc..a3143a0 100644
--- a/test/confs/0530
+++ b/test/confs/0530
@@ -29,7 +29,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

t2:
diff --git a/test/confs/0531 b/test/confs/0531
index 0af86b9..f5e29e4 100644
--- a/test/confs/0531
+++ b/test/confs/0531
@@ -31,7 +31,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

lmtp:
diff --git a/test/confs/0532 b/test/confs/0532
index e50c5de..3842776 100644
--- a/test/confs/0532
+++ b/test/confs/0532
@@ -69,7 +69,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0533 b/test/confs/0533
index 1dbc83b..7c2ca9d 100644
--- a/test/confs/0533
+++ b/test/confs/0533
@@ -16,7 +16,7 @@ r1:
driver = redirect
local_part_prefix = file-
local_part_suffix = =*
- data = DIR/test-mail/${substr_1:$local_part_suffix}
+ data = DIR/test-mail/${bless:${substr_1:$local_part_suffix}}
file_transport = t1

r2:
diff --git a/test/confs/0535 b/test/confs/0535
index 004f795..7960c06 100644
--- a/test/confs/0535
+++ b/test/confs/0535
@@ -36,7 +36,7 @@ begin transports
t1:
driver = appendfile
user = CALLER
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}


# End
diff --git a/test/confs/0536 b/test/confs/0536
index e451f81..d526f77 100644
--- a/test/confs/0536
+++ b/test/confs/0536
@@ -94,6 +94,6 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

diff --git a/test/confs/0551 b/test/confs/0551
index 1b4465b..d5d2ffd 100644
--- a/test/confs/0551
+++ b/test/confs/0551
@@ -26,6 +26,6 @@ begin transports
t1:
driver = appendfile
user = CALLER
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}

# End
diff --git a/test/confs/0566 b/test/confs/0566
index cc661f7..4692b22 100644
--- a/test/confs/0566
+++ b/test/confs/0566
@@ -55,7 +55,7 @@ dev_null:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0567 b/test/confs/0567
index 2675665..984aceb 100644
--- a/test/confs/0567
+++ b/test/confs/0567
@@ -80,7 +80,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0571 b/test/confs/0571
index a818257..d7c19f1 100644
--- a/test/confs/0571
+++ b/test/confs/0571
@@ -40,7 +40,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

t2:
diff --git a/test/confs/0573 b/test/confs/0573
index 3c2b1aa..388c53f 100644
--- a/test/confs/0573
+++ b/test/confs/0573
@@ -26,7 +26,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0011 b/test/confs/0584
similarity index 64%
copy from test/confs/0011
copy to test/confs/0584
index f8c0476..654ecbf 100644
--- a/test/confs/0011
+++ b/test/confs/0584
@@ -1,4 +1,4 @@
-# Exim test configuration 0011
+# Exim test configuration 0005

.include DIR/aux-var/std_conf_prefix

@@ -6,9 +6,20 @@
# ----- Main settings -----

domainlist local_domains = @
+
+acl_smtp_rcpt = check_recipient
trusted_users = CALLER


+# ----- ACL -----
+
+begin acl
+
+check_recipient:
+ accept hosts = :
+ accept domains = +local_domains
+ deny message = relay not permitted
+
# ----- Routers -----

begin routers
@@ -18,17 +29,12 @@ localuser:
check_local_user
transport = local_delivery

-
# ----- Transports -----

begin transports

local_delivery:
driver = appendfile
- delivery_date_add
- envelope_to_add
file = DIR/test-mail/$local_part
- return_path_add
-

 # End
diff --git a/test/confs/0600 b/test/confs/0600
index 65c6c2a..58257e5 100644
--- a/test/confs/0600
+++ b/test/confs/0600
@@ -58,7 +58,7 @@ local_delivery:
   driver = appendfile
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   headers_add = "X-body-linecount: $body_linecount\n\
                  X-message-linecount: $message_linecount\n\
                  X-received-count: $received_count"
diff --git a/test/confs/0609 b/test/confs/0609
index e1ec085..2f658c4 100644
--- a/test/confs/0609
+++ b/test/confs/0609
@@ -37,7 +37,7 @@ begin transports


appendfile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/0618 b/test/confs/0618
index b923533..d212e98 100644
--- a/test/confs/0618
+++ b/test/confs/0618
@@ -84,7 +84,7 @@ bad_tpt:

tofile:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
event_action = ${acl {ev_log}}

diff --git a/test/confs/0620 b/test/confs/0620
index 7f1b694..6ee5ac6 100644
--- a/test/confs/0620
+++ b/test/confs/0620
@@ -60,7 +60,7 @@ begin transports
 local_delivery:
   driver = appendfile
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   user = CALLER
   headers_add =    X-r1: <$r_r1>\nX-r2: <$r_r2>\nX-r3: <$r_r3>


diff --git a/test/confs/0900 b/test/confs/0900
index 4c824c4..df1540c 100644
--- a/test/confs/0900
+++ b/test/confs/0900
@@ -96,7 +96,7 @@ local_delivery:
   driver = appendfile
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   headers_add = "X-body-linecount: $body_linecount\n\
                  X-message-linecount: $message_linecount\n\
                  X-received-count: $received_count"
diff --git a/test/confs/0901 b/test/confs/0901
index 2e299c7..ed465ac 100644
--- a/test/confs/0901
+++ b/test/confs/0901
@@ -87,7 +87,7 @@ local_delivery:
   driver = appendfile
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   headers_add = "X-body-linecount: $body_linecount\n\
                  X-message-linecount: $message_linecount\n\
                  X-received-count: $received_count"
diff --git a/test/confs/0906 b/test/confs/0906
index c320b25..0310653 100644
--- a/test/confs/0906
+++ b/test/confs/0906
@@ -74,7 +74,7 @@ begin transports


 local_delivery:
   driver = appendfile
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   headers_add = "X-body-linecount: $body_linecount\n\
                  X-message-linecount: $message_linecount\n\
                  X-received-count: $received_count"
diff --git a/test/confs/1001 b/test/confs/1001
index e4ed677..878f414 100644
--- a/test/confs/1001
+++ b/test/confs/1001
@@ -28,7 +28,7 @@ begin transports


t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/1002 b/test/confs/1002
index f0a4518..2ddf2a8 100644
--- a/test/confs/1002
+++ b/test/confs/1002
@@ -73,7 +73,7 @@ dev_null:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/1003 b/test/confs/1003
index df1e488..6405a87 100644
--- a/test/confs/1003
+++ b/test/confs/1003
@@ -38,7 +38,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

send_to_server1:
diff --git a/test/confs/2002 b/test/confs/2002
index 6475fb7..6a322ff 100644
--- a/test/confs/2002
+++ b/test/confs/2002
@@ -84,7 +84,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2003 b/test/confs/2003
index c3eece6..0ce5fdb 100644
--- a/test/confs/2003
+++ b/test/confs/2003
@@ -43,7 +43,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2004 b/test/confs/2004
index 4cd622c..f40e8ba 100644
--- a/test/confs/2004
+++ b/test/confs/2004
@@ -44,7 +44,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2005 b/test/confs/2005
index 110bbef..442f050 100644
--- a/test/confs/2005
+++ b/test/confs/2005
@@ -53,7 +53,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2007 b/test/confs/2007
index d666f6a..db46a6c 100644
--- a/test/confs/2007
+++ b/test/confs/2007
@@ -46,7 +46,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2008 b/test/confs/2008
index 1f12493..0fd5186 100644
--- a/test/confs/2008
+++ b/test/confs/2008
@@ -55,7 +55,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2013 b/test/confs/2013
index 1a23887..d81f160 100644
--- a/test/confs/2013
+++ b/test/confs/2013
@@ -57,7 +57,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2014 b/test/confs/2014
index a50a875..ec7c001 100644
--- a/test/confs/2014
+++ b/test/confs/2014
@@ -52,7 +52,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_in_peerdn
user = CALLER

diff --git a/test/confs/2017 b/test/confs/2017
index 98fdc07..01612ef 100644
--- a/test/confs/2017
+++ b/test/confs/2017
@@ -45,7 +45,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2019 b/test/confs/2019
index bd2cf5a..5d26fd0 100644
--- a/test/confs/2019
+++ b/test/confs/2019
@@ -49,7 +49,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2027 b/test/confs/2027
index c1b93a2..926b09a 100644
--- a/test/confs/2027
+++ b/test/confs/2027
@@ -42,7 +42,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2032 b/test/confs/2032
index 9f69adc..907ab99 100644
--- a/test/confs/2032
+++ b/test/confs/2032
@@ -61,7 +61,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2038 b/test/confs/2038
index d5465e3..677bc9e 100644
--- a/test/confs/2038
+++ b/test/confs/2038
@@ -50,7 +50,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2102 b/test/confs/2102
index 5e156d4..6ae1514 100644
--- a/test/confs/2102
+++ b/test/confs/2102
@@ -94,7 +94,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2103 b/test/confs/2103
index a9daf05..5a8571f 100644
--- a/test/confs/2103
+++ b/test/confs/2103
@@ -43,7 +43,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2104 b/test/confs/2104
index 7cd35f0..d37523c 100644
--- a/test/confs/2104
+++ b/test/confs/2104
@@ -44,7 +44,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2105 b/test/confs/2105
index c77c154..7cbbdf0 100644
--- a/test/confs/2105
+++ b/test/confs/2105
@@ -53,7 +53,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2107 b/test/confs/2107
index 5cf1dc3..1f96800 100644
--- a/test/confs/2107
+++ b/test/confs/2107
@@ -45,7 +45,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2108 b/test/confs/2108
index 5db771d..c9720e4 100644
--- a/test/confs/2108
+++ b/test/confs/2108
@@ -53,7 +53,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2113 b/test/confs/2113
index eb9d2b4..e5fc539 100644
--- a/test/confs/2113
+++ b/test/confs/2113
@@ -57,7 +57,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2114 b/test/confs/2114
index 557479d..17d5ff2 100644
--- a/test/confs/2114
+++ b/test/confs/2114
@@ -52,7 +52,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_in_peerdn
user = CALLER

diff --git a/test/confs/2117 b/test/confs/2117
index cdec830..f05eedb 100644
--- a/test/confs/2117
+++ b/test/confs/2117
@@ -45,7 +45,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2119 b/test/confs/2119
index fbd8376..64987c8 100644
--- a/test/confs/2119
+++ b/test/confs/2119
@@ -49,7 +49,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2127 b/test/confs/2127
index 65e1901..148eb7e 100644
--- a/test/confs/2127
+++ b/test/confs/2127
@@ -46,7 +46,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2132 b/test/confs/2132
index 4d90a9c..7329e28 100644
--- a/test/confs/2132
+++ b/test/confs/2132
@@ -55,7 +55,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2138 b/test/confs/2138
index d5dba1b..aedeacf 100644
--- a/test/confs/2138
+++ b/test/confs/2138
@@ -50,7 +50,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2149 b/test/confs/2149
index ee48a51..41e7148 100644
--- a/test/confs/2149
+++ b/test/confs/2149
@@ -41,7 +41,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/2201 b/test/confs/2201
index 4ce7925..3f8f4fb 100644
--- a/test/confs/2201
+++ b/test/confs/2201
@@ -67,7 +67,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

remote_delivery:
diff --git a/test/confs/3206 b/test/confs/3206
index e4085ad..d672ad4 100644
--- a/test/confs/3206
+++ b/test/confs/3206
@@ -35,7 +35,7 @@ begin transports
local_delivery:
driver = appendfile
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/3207 b/test/confs/3207
index bf8d1d4..46b7d69 100644
--- a/test/confs/3207
+++ b/test/confs/3207
@@ -77,7 +77,7 @@ begin transports
local_delivery:
driver = appendfile
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

smtp:
diff --git a/test/confs/3400 b/test/confs/3400
index 6b817c2..d94e70d 100644
--- a/test/confs/3400
+++ b/test/confs/3400
@@ -151,7 +151,7 @@ appendfile:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/3403 b/test/confs/3403
index b8c8086..161cdea 100644
--- a/test/confs/3403
+++ b/test/confs/3403
@@ -50,7 +50,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/3408 b/test/confs/3408
index 14f5c62..7de4a6d 100644
--- a/test/confs/3408
+++ b/test/confs/3408
@@ -68,7 +68,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add

# End
diff --git a/test/confs/3411 b/test/confs/3411
index 44feae7..b502208 100644
--- a/test/confs/3411
+++ b/test/confs/3411
@@ -87,7 +87,7 @@ dev_null:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/3451 b/test/confs/3451
index 160f9e0..f453873 100644
--- a/test/confs/3451
+++ b/test/confs/3451
@@ -61,7 +61,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/3452 b/test/confs/3452
index 108d93e..e4d02b7 100644
--- a/test/confs/3452
+++ b/test/confs/3452
@@ -59,7 +59,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/3461 b/test/confs/3461
index 35c2a17..f865057 100644
--- a/test/confs/3461
+++ b/test/confs/3461
@@ -61,7 +61,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/3462 b/test/confs/3462
index 3f8c401..6c3aaee 100644
--- a/test/confs/3462
+++ b/test/confs/3462
@@ -59,7 +59,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/3500 b/test/confs/3500
index 68cf703..2419dec 100644
--- a/test/confs/3500
+++ b/test/confs/3500
@@ -102,7 +102,7 @@ appendfile:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/3700 b/test/confs/3700
index 39e3bce..4a8d38a 100644
--- a/test/confs/3700
+++ b/test/confs/3700
@@ -95,7 +95,7 @@ t2:

file:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/3720 b/test/confs/3720
index 53a68d3..397e4e9 100644
--- a/test/confs/3720
+++ b/test/confs/3720
@@ -88,7 +88,7 @@ t1:

file:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/4000 b/test/confs/4000
index a62f7c6..d80aaa8 100644
--- a/test/confs/4000
+++ b/test/confs/4000
@@ -52,7 +52,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/4001 b/test/confs/4001
index 334ca0c..cf124ec 100644
--- a/test/confs/4001
+++ b/test/confs/4001
@@ -46,7 +46,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/4201 b/test/confs/4201
index 8ded6c2..a2c45a3 100644
--- a/test/confs/4201
+++ b/test/confs/4201
@@ -116,7 +116,7 @@ local_delivery:
   user = CALLER
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   headers_add = "X-body-linecount: $body_linecount\n\
                  X-message-linecount: $message_linecount\n\
                  X-received-count: $received_count"
diff --git a/test/confs/4211 b/test/confs/4211
index e68111e..d4aaa44 100644
--- a/test/confs/4211
+++ b/test/confs/4211
@@ -107,7 +107,7 @@ local_delivery:
   user = CALLER
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   headers_add = "X-body-linecount: $body_linecount\n\
                  X-message-linecount: $message_linecount\n\
                  X-received-count: $received_count"
diff --git a/test/confs/4221 b/test/confs/4221
index e68111e..d4aaa44 100644
--- a/test/confs/4221
+++ b/test/confs/4221
@@ -107,7 +107,7 @@ local_delivery:
   user = CALLER
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   headers_add = "X-body-linecount: $body_linecount\n\
                  X-message-linecount: $message_linecount\n\
                  X-received-count: $received_count"
diff --git a/test/confs/4520 b/test/confs/4520
index 3f49ca9..770d8cc 100644
--- a/test/confs/4520
+++ b/test/confs/4520
@@ -77,7 +77,7 @@ send_to_server:


 file:
   driver =    appendfile
-  file =    DIR/test-mail/$local_part
+  file =    DIR/test-mail/${bless:$local_part}
   user =    CALLER


# End
diff --git a/test/confs/4525 b/test/confs/4525
index e11456c..a5b7f2c 100644
--- a/test/confs/4525
+++ b/test/confs/4525
@@ -107,7 +107,7 @@ send_to_server:

 file:
   driver =    appendfile
-  file =    DIR/test-mail/$local_part
+  file =    DIR/test-mail/${bless:$local_part}
   user =    CALLER


# End
diff --git a/test/confs/4560 b/test/confs/4560
index d945999..8c5864b 100644
--- a/test/confs/4560
+++ b/test/confs/4560
@@ -78,7 +78,7 @@ begin transports

 tfile:
   driver =    appendfile
-  file =    DIR/test-mail/$local_part
+  file =    DIR/test-mail/${bless:$local_part}
   user =    CALLER


tsmtp:
diff --git a/test/confs/4565 b/test/confs/4565
index 4e90606..9f1058f 100644
--- a/test/confs/4565
+++ b/test/confs/4565
@@ -59,7 +59,7 @@ begin transports

 tfile:
   driver =    appendfile
-  file =    DIR/test-mail/$local_part
+  file =    DIR/test-mail/${bless:$local_part}
   user =    CALLER


tsmtp:
diff --git a/test/confs/4620 b/test/confs/4620
index 5b1175a..26906e7 100644
--- a/test/confs/4620
+++ b/test/confs/4620
@@ -75,7 +75,7 @@ forwarded_external:

 appendfile:
   driver =    appendfile
-  file =    DIR/test-mail/$local_part
+  file =    DIR/test-mail/${bless:$local_part}
   user =    CALLER


# ----- Retry -----
diff --git a/test/confs/4700 b/test/confs/4700
index 86d8b6d..04cc370 100644
--- a/test/confs/4700
+++ b/test/confs/4700
@@ -52,7 +52,7 @@ smtp:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/5001 b/test/confs/5001
index db8c7dc..7bf79ae 100644
--- a/test/confs/5001
+++ b/test/confs/5001
@@ -29,7 +29,7 @@ maildir:
   create_file = belowhome
   directory = ${lookup{$local_part}lsearch{DIR/aux-fixed/TESTNUM.filelist}\
               {${if match{$value}{^/}{}{DIR/}}$value}\
-              {DIR/test-mail/$local_part}}
+              {DIR/test-mail/${bless:$local_part}}}
   user = CALLER



diff --git a/test/confs/5003 b/test/confs/5003
index 7635673..5aa9681 100644
--- a/test/confs/5003
+++ b/test/confs/5003
@@ -24,14 +24,14 @@ begin transports

local_delivery:
driver = appendfile
- directory = DIR/test-mail/$local_part
+ directory = DIR/test-mail/${bless:$local_part}
maildir_format
quota = 1.5K
user = CALLER

local_delivery2:
driver = appendfile
- directory = DIR/test-mail/$local_part/
+ directory = DIR/test-mail/${bless:$local_part}/
maildir_format
quota = 1.5K
user = CALLER
diff --git a/test/confs/5005 b/test/confs/5005
index d5d497a..e5a7ef3 100644
--- a/test/confs/5005
+++ b/test/confs/5005
@@ -27,7 +27,7 @@ begin transports

t1:
driver = appendfile
- directory = DIR/test-mail/$local_part
+ directory = DIR/test-mail/${bless:$local_part}
user = CALLER
maildir_format
maildir_use_size_file
diff --git a/test/confs/5006 b/test/confs/5006
index 385d4fe..17cba3c 100644
--- a/test/confs/5006
+++ b/test/confs/5006
@@ -24,7 +24,7 @@ begin transports

t1:
driver = appendfile
- directory = DIR/test-mail/$local_part
+ directory = DIR/test-mail/${bless:$local_part}
user = CALLER
maildir_format
maildir_use_size_file
diff --git a/test/confs/5007 b/test/confs/5007
index 98f70ee..7929b40 100644
--- a/test/confs/5007
+++ b/test/confs/5007
@@ -27,7 +27,7 @@ begin transports

t1:
driver = appendfile
- directory = DIR/test-mail/$local_part
+ directory = DIR/test-mail/${bless:$local_part}
user = CALLER
maildir_format
maildir_use_size_file
diff --git a/test/confs/5008 b/test/confs/5008
index 027ba7a..1e904d4 100644
--- a/test/confs/5008
+++ b/test/confs/5008
@@ -27,7 +27,7 @@ begin transports

 t1:
   driver = appendfile
-  directory = DIR/test-mail/$local_part
+  directory = DIR/test-mail/${bless:$local_part}
   user = CALLER
   maildir_format
   mailbox_size = 100K
diff --git a/test/confs/5050 b/test/confs/5050
index 4258a72..af62201 100644
--- a/test/confs/5050
+++ b/test/confs/5050
@@ -32,7 +32,7 @@ local_delivery:
   driver = appendfile
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   file_format = "From       : local_delivery :\
                  *mbx*\r\n  : mbx_local_delivery :\
                  tpmissing  : tpmissing"
@@ -45,7 +45,7 @@ bsmtp_local_delivery:
   use_bsmtp
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   return_path_add
   user = CALLER


@@ -54,7 +54,7 @@ mbx_local_delivery:
   check_string =
   delivery_date_add
   envelope_to_add
-  file = DIR/test-mail/$local_part
+  file = DIR/test-mail/${bless:$local_part}
   mbx_format
   message_prefix =
   return_path_add
diff --git a/test/confs/5101 b/test/confs/5101
index 1dbe3e4..1002009 100644
--- a/test/confs/5101
+++ b/test/confs/5101
@@ -35,7 +35,7 @@ local_delivery:
   envelope_to_add
   headers_add = X-Recipient: local_part=$local_part domain=$domain\n\
                 X-Home: $home
-  file = DIR/test-mail/${if eq{$sender_address}{}{copied}{$h_mailbox:}}
+  file = DIR/test-mail/${if eq{$sender_address}{}{copied}{${bless:$h_mailbox:}}}
   user = CALLER


lmtp:
diff --git a/test/confs/5200 b/test/confs/5200
index cafd2fb..d30bc35 100644
--- a/test/confs/5200
+++ b/test/confs/5200
@@ -36,7 +36,7 @@ local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
return_path_add
user = CALLER

diff --git a/test/confs/5201 b/test/confs/5201
index f273d92..2af73f2 100644
--- a/test/confs/5201
+++ b/test/confs/5201
@@ -34,7 +34,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/5203 b/test/confs/5203
index 40f4c83..7a1f943 100644
--- a/test/confs/5203
+++ b/test/confs/5203
@@ -27,7 +27,7 @@ begin transports

userx_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
message_suffix = "$address_data\n"
user = CALLER

diff --git a/test/confs/5204 b/test/confs/5204
index e81c58e..a681221 100644
--- a/test/confs/5204
+++ b/test/confs/5204
@@ -64,7 +64,7 @@ null:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/5207 b/test/confs/5207
index bfd32bb..9465cfc 100644
--- a/test/confs/5207
+++ b/test/confs/5207
@@ -14,7 +14,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/${if eq{$address_data}{}{$local_part}{$address_data}}
+ file = DIR/test-mail/${if eq{$address_data}{}{${bless:$local_part}}{$address_data}}
user = CALLER

# ----- Routers -----
diff --git a/test/confs/5500 b/test/confs/5500
index 1b25be1..91dc427 100644
--- a/test/confs/5500
+++ b/test/confs/5500
@@ -45,7 +45,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# ----- Routers -----
diff --git a/test/confs/5600 b/test/confs/5600
index b65a279..7526b9c 100644
--- a/test/confs/5600
+++ b/test/confs/5600
@@ -66,7 +66,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/5610 b/test/confs/5610
index b65a279..7526b9c 100644
--- a/test/confs/5610
+++ b/test/confs/5610
@@ -66,7 +66,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/5611 b/test/confs/5611
index 9ba6350..09c81ff 100644
--- a/test/confs/5611
+++ b/test/confs/5611
@@ -85,7 +85,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/5650 b/test/confs/5650
index 840b74c..c484282 100644
--- a/test/confs/5650
+++ b/test/confs/5650
@@ -65,7 +65,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/5651 b/test/confs/5651
index 1e3ed5a..0e5e27b 100644
--- a/test/confs/5651
+++ b/test/confs/5651
@@ -83,7 +83,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/5665 b/test/confs/5665
index 673ec66..9ced25d 100644
--- a/test/confs/5665
+++ b/test/confs/5665
@@ -95,7 +95,7 @@ remote_delivery:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/5670 b/test/confs/5670
index 6fbd7c1..325ac88 100644
--- a/test/confs/5670
+++ b/test/confs/5670
@@ -96,7 +96,7 @@ remote_delivery:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/5730 b/test/confs/5730
index 0279cf1..88c2298 100644
--- a/test/confs/5730
+++ b/test/confs/5730
@@ -92,7 +92,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/5740 b/test/confs/5740
index 32423f1..5dcbcb5 100644
--- a/test/confs/5740
+++ b/test/confs/5740
@@ -93,7 +93,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
headers_add = TLS: cipher=$tls_cipher peerdn=$tls_peerdn
user = CALLER

diff --git a/test/confs/5902 b/test/confs/5902
index ba4acc2..ec4306b 100644
--- a/test/confs/5902
+++ b/test/confs/5902
@@ -32,7 +32,7 @@ scan:

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER

# End
diff --git a/test/confs/9001 b/test/confs/9001
index 0518519..a1f4ba3 100644
--- a/test/confs/9001
+++ b/test/confs/9001
@@ -28,7 +28,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER


diff --git a/test/confs/9400 b/test/confs/9400
index 66ee61e..0b54c96 100644
--- a/test/confs/9400
+++ b/test/confs/9400
@@ -42,7 +42,7 @@ begin transports

local_delivery:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
headers_add = ${if eq {$local_scan_data}{}{}{LSD: $local_scan_data}}

diff --git a/test/confs/9401 b/test/confs/9401
index a01167e..ed83ed3 100644
--- a/test/confs/9401
+++ b/test/confs/9401
@@ -30,7 +30,7 @@ begin transports

t1:
driver = appendfile
- file = DIR/test-mail/$local_part
+ file = DIR/test-mail/${bless:$local_part}
user = CALLER
headers_add = X-lsd: >$local_scan_data<

diff --git a/test/log/0584 b/test/log/0584
new file mode 100644
index 0000000..f3ab6ea
--- /dev/null
+++ b/test/log/0584
@@ -0,0 +1,2 @@
+1999-03-02 09:44:33 10HmaX-0005vi-00 <= someone@??? U=CALLER P=local-smtp S=sss
+1999-03-02 09:44:33 10HmaX-0005vi-00 == CALLER@??? R=localuser T=local_delivery defer (-1): Tainted 'TESTSUITE/test-mail/CALLER' (file or directory name for local_delivery transport) not permitted
diff --git a/test/msglog/0584.10HmaX-0005vi-00 b/test/msglog/0584.10HmaX-0005vi-00
new file mode 100644
index 0000000..540b683
--- /dev/null
+++ b/test/msglog/0584.10HmaX-0005vi-00
@@ -0,0 +1,2 @@
+1999-03-02 09:44:33 Received from someone@??? U=CALLER P=local-smtp S=sss
+1999-03-02 09:44:33 CALLER@??? R=localuser T=local_delivery defer (-1): Tainted 'TESTSUITE/test-mail/CALLER' (file or directory name for local_delivery transport) not permitted
diff --git a/test/paniclog/0584 b/test/paniclog/0584
new file mode 100644
index 0000000..af4f471
--- /dev/null
+++ b/test/paniclog/0584
@@ -0,0 +1 @@
+1999-03-02 09:44:33 10HmaX-0005vi-00 == CALLER@??? R=localuser T=local_delivery defer (-1): Tainted 'TESTSUITE/test-mail/CALLER' (file or directory name for local_delivery transport) not permitted
diff --git a/test/scripts/0000-Basic/0584 b/test/scripts/0000-Basic/0584
new file mode 100644
index 0000000..54ca506
--- /dev/null
+++ b/test/scripts/0000-Basic/0584
@@ -0,0 +1,8 @@
+# tainted data for appendfile file option
+exim -bs -odi
+mail from:someone@???
+rcpt to:CALLER@HOSTNAME
+data
+.
+quit
+****
diff --git a/test/stderr/0084 b/test/stderr/0084
index 02d86ce..8e4d16e 100644
--- a/test/stderr/0084
+++ b/test/stderr/0084
@@ -17,9 +17,9 @@ file check: TESTSUITE/aux-fixed/0084.$local_part
expanded file: TESTSUITE/aux-fixed/0084.yes
stat() yielded 0
calling forward router
-rda_interpret (file): 'TESTSUITE/aux-fixed/0084.$local_part'
+rda_interpret (file): 'TESTSUITE/aux-fixed/0084.${bless:$local_part}'
expanded: 'TESTSUITE/aux-fixed/0084.yes'
-ssss (tainted) bytes read from TESTSUITE/aux-fixed/0084.yes
+ssss bytes read from TESTSUITE/aux-fixed/0084.yes
file is not a filter file
parse_forward_list: userx@???

diff --git a/test/stderr/0085 b/test/stderr/0085
index 56c65f6..001ee06 100644
--- a/test/stderr/0085
+++ b/test/stderr/0085
@@ -28,7 +28,7 @@ y.z in "test.ex : myhost.test.ex"? no (end of list)
y.z in "! +local_domains"? yes (end of list)
calling fail_remote_domains router
rda_interpret (string): ':fail: unrouteable mail domain "$domain"'
-expanded: ':fail: unrouteable mail domain "y.z"'
+expanded: ':fail: unrouteable mail domain "y.z"' (tainted)
file is not a filter file
parse_forward_list: :fail: unrouteable mail domain "y.z"
extract item: :fail: unrouteable mail domain "y.z"
@@ -227,7 +227,7 @@ y.z in "test.ex : myhost.test.ex"? no (end of list)
y.z in "! +local_domains"? yes (end of list)
calling fail_remote_domains router
rda_interpret (string): ':fail: unrouteable mail domain "$domain"'
-expanded: ':fail: unrouteable mail domain "y.z"'
+expanded: ':fail: unrouteable mail domain "y.z"' (tainted)
file is not a filter file
parse_forward_list: :fail: unrouteable mail domain "y.z"
extract item: :fail: unrouteable mail domain "y.z"
@@ -282,7 +282,7 @@ smart.domain in "test.ex : myhost.test.ex"? no (end of list)
smart.domain in "! +local_domains"? yes (end of list)
calling fail_remote_domains router
rda_interpret (string): ':fail: unrouteable mail domain "$domain"'
-expanded: ':fail: unrouteable mail domain "smart.domain"'
+expanded: ':fail: unrouteable mail domain "smart.domain"' (tainted)
file is not a filter file
parse_forward_list: :fail: unrouteable mail domain "smart.domain"
extract item: :fail: unrouteable mail domain "smart.domain"
diff --git a/test/stderr/0297 b/test/stderr/0297
index 36bcfb4..f1a0a2e 100644
--- a/test/stderr/0297
+++ b/test/stderr/0297
@@ -8,7 +8,7 @@ routing /a/b/c@???
--------> r1 router <--------
local_part=/a/b/c domain=myhost.test.ex
calling r1 router
-rda_interpret (string): '$local_part'
+rda_interpret (string): '${bless:$local_part}'
expanded: '/a/b/c'
file is not a filter file
parse_forward_list: /a/b/c
@@ -32,7 +32,7 @@ routing /x/y/z@???
--------> r1 router <--------
local_part=/x/y/z domain=myhost.test.ex
calling r1 router
-rda_interpret (string): '$local_part'
+rda_interpret (string): '${bless:$local_part}'
expanded: '/x/y/z'
file is not a filter file
parse_forward_list: /x/y/z
diff --git a/test/stderr/0361 b/test/stderr/0361
index cd96418..8f5ef0b 100644
--- a/test/stderr/0361
+++ b/test/stderr/0361
@@ -149,7 +149,7 @@ checking local_parts
kilos in "kilos"? yes (matched "kilos")
calling r3 router
rda_interpret (string): '$local_part@$domain'
-expanded: 'kilos@???'
+expanded: 'kilos@???' (tainted)
file is not a filter file
parse_forward_list: kilos@???
extract item: kilos@???
diff --git a/test/stderr/0364 b/test/stderr/0364
index 1b08f72..43462a5 100644
--- a/test/stderr/0364
+++ b/test/stderr/0364
@@ -10,7 +10,7 @@ checking domains
processing address_data
calling r1 router
rda_interpret (string): '$local_part@$domain.test.ex'
-expanded: 'kilos@???'
+expanded: 'kilos@???' (tainted)
file is not a filter file
parse_forward_list: kilos@???
extract item: kilos@???
@@ -55,7 +55,7 @@ checking domains
processing address_data
calling r1 router
rda_interpret (string): '$local_part@$domain.test.ex'
-expanded: 'solik@???'
+expanded: 'solik@???' (tainted)
file is not a filter file
parse_forward_list: solik@???
extract item: solik@???
@@ -81,7 +81,7 @@ checking "condition" "${if eq{$address_data}{}{no}{yes}}"...
processing address_data
calling r3 router
rda_interpret (string): '$local_part@$original_domain.sub.test.ex'
-expanded: 'solik@???'
+expanded: 'solik@???' (tainted)
file is not a filter file
parse_forward_list: solik@???
extract item: solik@???
@@ -110,7 +110,7 @@ local_part=solik domain=otherhost.sub.test.ex
checking domains
calling r4 router
rda_interpret (string): ':fail:Can't route to $domain'
-expanded: ':fail:Can't route to otherhost.sub.test.ex'
+expanded: ':fail:Can't route to otherhost.sub.test.ex' (tainted)
file is not a filter file
parse_forward_list: :fail:Can't route to otherhost.sub.test.ex
extract item: :fail:Can't route to otherhost.sub.test.ex
@@ -123,7 +123,7 @@ checking domains
processing address_data
calling r1 router
rda_interpret (string): '$local_part@$domain.test.ex'
-expanded: 'xxx@???'
+expanded: 'xxx@???' (tainted)
file is not a filter file
parse_forward_list: xxx@???
extract item: xxx@???
@@ -158,7 +158,7 @@ checking domains
processing address_data
calling r1 router
rda_interpret (string): '$local_part@$domain.test.ex'
-expanded: 'xxx@???'
+expanded: 'xxx@???' (tainted)
file is not a filter file
parse_forward_list: xxx@???
extract item: xxx@???
@@ -184,7 +184,7 @@ checking "condition" "${if eq{$address_data}{}{no}{yes}}"...
processing address_data
calling r3 router
rda_interpret (string): '$local_part@$original_domain.sub.test.ex'
-expanded: 'xxx@???'
+expanded: 'xxx@???' (tainted)
file is not a filter file
parse_forward_list: xxx@???
extract item: xxx@???
diff --git a/test/stderr/0377 b/test/stderr/0377
index 98f92e0..f395ee3 100644
--- a/test/stderr/0377
+++ b/test/stderr/0377
@@ -55,7 +55,7 @@ local_part=cccc domain=myhost.test.ex
checking local_parts
calling cccc_redirect router
rda_interpret (string): 'cccc@$domain, defer_cccc@$domain'
-expanded: 'cccc@???, defer_cccc@???'
+expanded: 'cccc@???, defer_cccc@???' (tainted)
file is not a filter file
parse_forward_list: cccc@???, defer_cccc@???
extract item: cccc@???
@@ -89,7 +89,7 @@ checking local_parts
checking "condition" "${if first_delivery{yes}{no}}"...
calling bbbb router
rda_interpret (string): 'bbbb@$domain, defer_bbbb@$domain'
-expanded: 'bbbb@???, defer_bbbb@???'
+expanded: 'bbbb@???, defer_bbbb@???' (tainted)
file is not a filter file
parse_forward_list: bbbb@???, defer_bbbb@???
extract item: bbbb@???
@@ -115,7 +115,7 @@ checking local_parts
checking "condition" "${if first_delivery{yes}{no}}"...
calling unseen_aaaa router
rda_interpret (string): 'defer_aaaa@$domain'
-expanded: 'defer_aaaa@???'
+expanded: 'defer_aaaa@???' (tainted)
file is not a filter file
parse_forward_list: defer_aaaa@???
extract item: defer_aaaa@???
@@ -357,7 +357,7 @@ checking local_parts
checking "condition" "${if first_delivery{no}{yes}}"...
calling cccc_2nd_time router
rda_interpret (string): '$local_part@$domain'
-expanded: 'cccc@???'
+expanded: 'cccc@???' (tainted)
file is not a filter file
parse_forward_list: cccc@???
extract item: cccc@???
@@ -459,7 +459,7 @@ local_part=cccc domain=myhost.test.ex
checking local_parts
calling cccc_redirect router
rda_interpret (string): 'cccc@$domain, defer_cccc@$domain'
-expanded: 'cccc@???, defer_cccc@???'
+expanded: 'cccc@???, defer_cccc@???' (tainted)
file is not a filter file
parse_forward_list: cccc@???, defer_cccc@???
extract item: cccc@???
@@ -601,7 +601,7 @@ checking local_parts
checking "condition" "${if first_delivery{no}{yes}}"...
calling cccc_2nd_time router
rda_interpret (string): '$local_part@$domain'
-expanded: 'cccc@???'
+expanded: 'cccc@???' (tainted)
file is not a filter file
parse_forward_list: cccc@???
extract item: cccc@???
@@ -703,7 +703,7 @@ local_part=cccc domain=myhost.test.ex
checking local_parts
calling cccc_redirect router
rda_interpret (string): 'cccc@$domain, defer_cccc@$domain'
-expanded: 'cccc@???, defer_cccc@???'
+expanded: 'cccc@???, defer_cccc@???' (tainted)
file is not a filter file
parse_forward_list: cccc@???, defer_cccc@???
extract item: cccc@???
diff --git a/test/stderr/0378 b/test/stderr/0378
index e48fb7e..dec0651 100644
--- a/test/stderr/0378
+++ b/test/stderr/0378
@@ -40,7 +40,7 @@ deliver defer_aaaa@???
save TESTSUITE/test-mail/file
pipe "/bin/sh -c exit"
mail subject autoreply
-text "This is an autoreply"'
+text "This is an autoreply"' (tainted)
data is an Exim filter program
Filter: start of processing
Filter: end of processing
@@ -193,7 +193,7 @@ checking local_parts
checking "condition" "${if first_delivery{no}{yes}}"...
calling aaaa_2nd_time router
rda_interpret (string): 'aaaa@$domain'
-expanded: 'aaaa@???'
+expanded: 'aaaa@???' (tainted)
file is not a filter file
parse_forward_list: aaaa@???
extract item: aaaa@???
@@ -230,7 +230,7 @@ deliver defer_aaaa@???
save TESTSUITE/test-mail/file
pipe "/bin/sh -c exit"
mail subject autoreply
-text "This is an autoreply"'
+text "This is an autoreply"' (tainted)
data is an Exim filter program
Filter: start of processing
Filter: end of processing
diff --git a/test/stderr/0379 b/test/stderr/0379
index 26a225f..7c0f0b9 100644
--- a/test/stderr/0379
+++ b/test/stderr/0379
@@ -30,7 +30,7 @@ local_part=aaaa domain=myhost.test.ex
checking local_parts
calling aaaa_redirect router
rda_interpret (string): 'bbbb@$domain, cccc@$domain'
-expanded: 'bbbb@???, cccc@???'
+expanded: 'bbbb@???, cccc@???' (tainted)
file is not a filter file
parse_forward_list: bbbb@???, cccc@???
extract item: bbbb@???
diff --git a/test/stderr/0380 b/test/stderr/0380
index c653fc3..b163d3f 100644
--- a/test/stderr/0380
+++ b/test/stderr/0380
@@ -33,7 +33,7 @@ r1 router skipped: local_parts mismatch
local_part=bbbb domain=myhost.test.ex
checking local_parts
calling r2 router
-rda_interpret (file): 'TESTSUITE/non-exist/$local_part'
+rda_interpret (file): 'TESTSUITE/non-exist/${bless:$local_part}'
expanded: 'TESTSUITE/non-exist/bbbb'
TESTSUITE/non-exist/bbbb does not exist
ignore_enotdir set => skip checking parent directory
@@ -61,7 +61,7 @@ forced failure in expansion of "${if eq {a}{b}{x}fail}" (address_data): decline
local_part=aaaa domain=myhost.test.ex
checking local_parts
calling r1 router
-rda_interpret (file): 'TESTSUITE/non-exist/$local_part'
+rda_interpret (file): 'TESTSUITE/non-exist/${bless:$local_part}'
expanded: 'TESTSUITE/non-exist/aaaa'
TESTSUITE/non-exist/aaaa does not exist
checking parent directory
diff --git a/test/stderr/0464 b/test/stderr/0464
index 512ed1b..86e8fe3 100644
--- a/test/stderr/0464
+++ b/test/stderr/0464
@@ -50,7 +50,7 @@ cached lookup data = data for domain1
domain1 in "+special_domains"? yes (matched "+special_domains" - cached)
calling r1 router
rda_interpret (string): '$local_part@xxx.$domain'
-expanded: 'abc@???'
+expanded: 'abc@???' (tainted)
file is not a filter file
parse_forward_list: abc@???
extract item: abc@???
@@ -117,7 +117,7 @@ cached lookup data = data for domain1
domain1 in "+special_domains"? yes (matched "+special_domains" - cached)
calling r1 router
rda_interpret (string): '$local_part@xxx.$domain'
-expanded: 'abc@???'
+expanded: 'abc@???' (tainted)
file is not a filter file
parse_forward_list: abc@???
extract item: abc@???
diff --git a/test/stderr/0584 b/test/stderr/0584
new file mode 100644
index 0000000..af4f471
--- /dev/null
+++ b/test/stderr/0584
@@ -0,0 +1 @@
+1999-03-02 09:44:33 10HmaX-0005vi-00 == CALLER@??? R=localuser T=local_delivery defer (-1): Tainted 'TESTSUITE/test-mail/CALLER' (file or directory name for local_delivery transport) not permitted
diff --git a/test/stdout/0584 b/test/stdout/0584
new file mode 100644
index 0000000..4e4673d
--- /dev/null
+++ b/test/stdout/0584
@@ -0,0 +1,6 @@
+220 the.local.host.name ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+250 OK
+250 Accepted
+354 Enter message, ending with "." on a line by itself
+250 OK id=10HmaX-0005vi-00
+221 the.local.host.name closing connection