Testsuite: headers_remove globbing. Bug 159
authorJeremy Harris <jgh146exb@wizmail.org>
Mon, 3 Feb 2020 15:30:43 +0000 (15:30 +0000)
committerJeremy Harris <jgh146exb@wizmail.org>
Mon, 3 Feb 2020 15:52:36 +0000 (15:52 +0000)
doc/doc-docbook/spec.xfpt
doc/doc-txt/NewStuff
test/confs/0481
test/mail/0481.userx
test/scripts/0000-Basic/0481

index aed97644c4f650342d39624e76608dc99f248174..43199cf7ce5aa57cd99ace0a9affea594dfbe2b8 100644 (file)
@@ -18655,8 +18655,10 @@ This option specifies a list of text headers,
 colon-separated (by default, changeable in the usual way &<<SECTlistsepchange>>&),
 that is associated with any addresses that are accepted by the router.
 However, the option has no effect when an address is just being verified.
-Each list item is separately expanded, at routing time.
-If an item ends in *, it will match any header with the same prefix.
+Each list item is separately expanded, at transport time.
+.new
+If an item ends in *, it will match any header with the given prefix.
+.wen
 The way in which
 the text is used to remove header lines at transport time is described in
 section &<<SECTheadersaddrem>>&. Header lines are not actually removed until
@@ -18664,7 +18666,7 @@ the message is in the process of being transported. This means that references
 to header lines in string expansions in the transport's configuration still
 &"see"& the original header lines.
 
-The &%headers_remove%& option is expanded after &%errors_to%& and
+The &%headers_remove%& option is handled after &%errors_to%& and
 &%headers_add%&, but before &%transport%&. If an item expansion is forced to fail,
 the item has no effect. Other expansion failures are treated as configuration
 errors.
@@ -21843,15 +21845,21 @@ checked, since this option does not automatically suppress them.
 .option headers_remove transports list&!! unset
 .cindex "header lines" "removing"
 .cindex "transport" "header lines; removing"
-This option specifies a list of header names,
-colon-separated (by default, changeable in the usual way &<<SECTlistsepchange>>&);
-these headers are omitted from the message as it is transported, as described
-in section &<<SECTheadersaddrem>>&. Header removal can also be specified by
-routers.
+This option specifies a list of text headers,
+colon-separated (by default, changeable in the usual way &<<SECTlistsepchange>>&),
+to be removed from the message.
+However, the option has no effect when an address is just being verified.
 Each list item is separately expanded.
 If the result of the expansion is an empty string, or if the expansion
 is forced to fail, no action is taken. Other expansion failures are treated as
 errors and cause the delivery to be deferred.
+.new
+If an item ends in *, it will match any header with the given prefix.
+.wen
+
+Matching headers are omitted from the message as it is transported, as described
+in section &<<SECTheadersaddrem>>&. Header removal can also be specified by
+routers.
 
 Unlike most options, &%headers_remove%& can be specified multiple times
 for a transport; all listed headers are removed.
index 3542c82cbe2b9446f013b55c362b16ea585d8c0d..919a56ea5f921c9ea85da157b5eeee7062601030 100644 (file)
@@ -35,6 +35,10 @@ Version 4.94
 
  9. The ACL control "queue_only" can also be spelled "queue", and now takes an
     option "first_pass_route" to do the same as a "-odqs" on the command line.
+ 9. Items specified for the router and transport headers_remove option can use
+    a trailing asterisk to specify globbing.
+
+
 
 
 Version 4.93
index 09e3ed89e407ce423f3d9c7169727e139d0cacf3..cdd6453dc20db9ec2e0777e7dd0ced6c5ef2747f 100644 (file)
@@ -25,7 +25,7 @@ r2:
 
 r3:
   driver = accept
-  headers_remove = Remove-Me:
+  headers_remove = Remove-Me:X-Rem*
   headers_add = X-Was-Remove-Me: >$h_remove-me:<
   headers_add = ${if def:h_remove-me-also {X-Was-Remove-Me-Also: >$h_remove-me-also:<}}
   transport = t1
index 07700dd925e8e8376e41c4700de7f1ade527b653..4af9fec863d9c4a4208749581c51edf18eaae4ba 100644 (file)
@@ -16,6 +16,7 @@ Received: from CALLER by myhost.test.ex with local (Exim x.yz)
        id 10HmaY-0005vi-00
        for userx@myhost.test.ex; Tue, 2 Mar 1999 09:44:33 +0000
 Another: This is another header
+X-Ren-dont:    test globbing
 Message-Id: <E10HmaY-0005vi-00@myhost.test.ex>
 From: CALLER_NAME <CALLER@myhost.test.ex>
 Date: Tue, 2 Mar 1999 09:44:33 +0000
index be89249f3c55f293fa70b9676e0661d9046c662a..08a5181a258ebbad0b37bda7385813586a3edc5c 100644 (file)
@@ -9,4 +9,9 @@ Another: This is another header
 Remove-Me-Also: me too!
 Remove-Me-Too: me too!
 Remove-Me-Too2: me too!
+X-Rem-1:       test globbing
+X-Rem-2:       test globbing
+X-Rem-foobar:  test globbing
+X-Rem:         test globbing
+X-Ren-dont:    test globbing
 ****