Docs: more PCRE2
[exim.git] / doc / doc-docbook / filter.xfpt
index d5e3937b738bde82a655722a0d77b9b336ef6590..84e7d4a43248017400e42cc6a3fe238069676cd2 100644 (file)
@@ -1,5 +1,3 @@
-. $Cambridge: exim/doc/doc-docbook/filter.xfpt,v 1.6 2007/04/17 13:06:09 ph10 Exp $
-
 . /////////////////////////////////////////////////////////////////////////////
 . This is the primary source of the document that describes Exim's filtering
 . facilities. It is an xfpt document that is converted into DocBook XML for
@@ -10,6 +8,7 @@
 
 .include stdflags
 .include stdmacs
+.include ./local_params
 .docbook
 
 . /////////////////////////////////////////////////////////////////////////////
@@ -23,7 +22,7 @@
 <?sdop
   foot_right_recto="&chaptertitle;"
   foot_right_verso="&chaptertitle;"
-  table_warn_soft_overflow="no"
+  table_warn_overflow="overprint"
   toc_chapter_blanks="yes,yes"
   toc_title="Exim's interfaces to mail filtering"
 ?>
 .endmacro
 . ===========================================================================
 
+. Copyright year.  Update this (only) when changing content.
+
+.macro copyyear
+2018
+.endmacro
+
+. ===========================================================================
 
 . /////////////////////////////////////////////////////////////////////////////
 . /////////////////////////////////////////////////////////////////////////////
 <bookinfo>
 <title>Exim's interfaces to mail filtering</title>
 <titleabbrev>Exim filtering</titleabbrev>
-<date>17 April 2007</date>
+<date>
+.fulldate
+</date>
 <author><firstname>Philip</firstname><surname>Hazel</surname></author>
 <authorinitials>PH</authorinitials>
 <revhistory><revision>
-  <revnumber>4.67</revnumber>
-  <date>17 April 2007</date>
+.versiondatexml
   <authorinitials>PH</authorinitials>
 </revision></revhistory>
-<copyright><year>2007</year><holder>University of Cambridge</holder></copyright>
+<copyright><year>
+.copyyear
+           </year><holder>The Exim Maintainers</holder></copyright>
 </bookinfo>
 .literal off
 
@@ -79,8 +88,8 @@
 
 .chapter "Forwarding and filtering in Exim" "CHAPforandfilt"
 This document describes the user interfaces to Exim's in-built mail filtering
-facilities, and is copyright &copy; University of Cambridge 2007. It
-corresponds to Exim version 4.67.
+facilities, and is copyright &copy; The Exim Maintainers &copyyear(). It
+corresponds to Exim version &version().
 
 
 
@@ -273,14 +282,12 @@ this context as &"the specific implementation of Sieve for Exim"&.
 This chapter does not contain a description of Sieve, since that can be found
 in RFC 3028, which should be read in conjunction with these notes.
 
-.new
 The Exim Sieve implementation offers the core as defined by RFC 3028,
 comparison tests, the subaddress parameter, the &*copy*&, &*envelope*&,
 &*fileinto*&, &*notify*&, and &*vacation*& extensions, but not the &*reject*&
 extension. Exim does not support message delivery notifications (MDNs), so
 adding it just to the Sieve filter (as required for &*reject*&) makes little
 sense.
-.wen
 
 In order for Sieve to work properly in Exim, the system administrator needs to
 make some adjustments to the Exim configuration. These are described in the
@@ -1044,7 +1051,6 @@ mail-sending command is
 &`     [log `&<&'log file name'&>&`]`&
 &`     [once `&<&'note file name'&>&`]`&
 &`     [once_repeat `&<&'time interval'&>&`]`&
-
 &`e.g. mail text "Your message about $h_subject: has been received"`&
 .endd
 Each <&'address-list'&> can contain a number of addresses, separated by commas,
@@ -1183,7 +1189,9 @@ been obeyed, the &(logwrite)& command can be used to write to it:
 &`e.g. logwrite "$tod_log $message_id processed"`&
 .endd
 It is possible to have more than one &(logfile)& command, to specify writing to
-different log files in different circumstances. Writing takes place at the end
+different log files in different circumstances.
+A previously opened log is closed on a subsequent &(logfile)& command.
+Writing takes place at the end
 of the file, and a newline character is added to the end of each string if
 there isn't one already there. Newlines can be put in the middle of the string
 by using the &"\n"& escape sequence. Lines from simultaneous deliveries may get
@@ -1335,7 +1343,7 @@ A &"contains"& test does a partial string match, having expanded both strings.
 .endd
 
 For a &"matches"& test, after expansion of both strings, the second one is
-interpreted as a regular expression. Exim uses the PCRE regular expression
+interpreted as a regular expression. Exim uses the PCRE2 regular expression
 library, which provides regular expressions that are compatible with Perl.
 
 The match succeeds if the regular expression matches any part of the first
@@ -1557,7 +1565,7 @@ $message_headers does not contain "\nList-Post:" and
 $message_headers does not contain "\nList-Owner:" and
 $message_headers does not contain "\nList-Archive:" and
 (
-"${if def h_auto-submitted:{present}{absent}}" is "absent" or
+"${if def:h_auto-submitted:{present}{absent}}" is "absent" or
 $header_auto-submitted: is "no"
 ) and
 $header_precedence: does not contain "bulk" and