From b7c15c31519dc44c1f691e0466badd556ffe9423 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 18:18:56 +0200 Subject: Adding upstream version 3.7.10. Signed-off-by: Daniel Baumann --- html/pcre_table.5.html | 249 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 249 insertions(+) create mode 100644 html/pcre_table.5.html (limited to 'html/pcre_table.5.html') diff --git a/html/pcre_table.5.html b/html/pcre_table.5.html new file mode 100644 index 0000000..f9eee35 --- /dev/null +++ b/html/pcre_table.5.html @@ -0,0 +1,249 @@ + + + + Postfix manual - pcre_table(5) +
+PCRE_TABLE(5)                                                    PCRE_TABLE(5)
+
+NAME
+       pcre_table - format of Postfix PCRE tables
+
+SYNOPSIS
+       postmap -q "string" pcre:/etc/postfix/filename
+
+       postmap -q - pcre:/etc/postfix/filename <inputfile
+
+       postmap -hmq - pcre:/etc/postfix/filename <inputfile
+
+       postmap -bmq - pcre:/etc/postfix/filename <inputfile
+
+DESCRIPTION
+       The  Postfix  mail  system  uses optional tables for address rewriting,
+       mail routing, or access control. These tables are usually in dbm or  db
+       format.
+
+       Alternatively,  lookup tables can be specified in Perl Compatible Regu-
+       lar Expression form. In this case, each input  is  compared  against  a
+       list  of  patterns.  When a match is found, the corresponding result is
+       returned and the search is terminated.
+
+       To find out what types of lookup tables your  Postfix  system  supports
+       use the "postconf -m" command.
+
+       To test lookup tables, use the "postmap -q" command as described in the
+       SYNOPSIS above. Use "postmap -hmq - <file"  for  header_checks(5)  pat-
+       terns,  and  "postmap -bmq - <file" for body_checks(5) (Postfix 2.6 and
+       later).
+
+       This driver can be built  with  the  pcre2  library  (Postfix  3.7  and
+       later), or with the legacy pcre library (all Postfix versions).
+
+COMPATIBILITY
+       With  Postfix  version 2.2 and earlier specify "postmap -fq" to query a
+       table that contains case sensitive patterns. Patterns are case insensi-
+       tive by default.
+
+TABLE FORMAT
+       The general form of a PCRE table is:
+
+       /pattern/flags result
+              When  pattern  matches  the  input string, use the corresponding
+              result value.
+
+       !/pattern/flags result
+              When pattern does not match the input  string,  use  the  corre-
+              sponding result value.
+
+       if /pattern/flags
+
+       endif  If  the  input  string  matches /pattern/, then match that input
+              string against the patterns between if and endif.  The if..endif
+              can nest.
+
+              Note: do not prepend whitespace to patterns inside if..endif.
+
+              This feature is available in Postfix 2.1 and later.
+
+       if !/pattern/flags
+
+       endif  If  the  input  string does not match /pattern/, then match that
+              input string against the patterns  between  if  and  endif.  The
+              if..endif can nest.
+
+              Note: do not prepend whitespace to patterns inside if..endif.
+
+              This feature is available in Postfix 2.1 and later.
+
+       blank lines and comments
+              Empty  lines and whitespace-only lines are ignored, as are lines
+              whose first non-whitespace character is a `#'.
+
+       multi-line text
+              A logical line starts with  non-whitespace  text.  A  line  that
+              starts with whitespace continues a logical line.
+
+       Each  pattern  is a perl-like regular expression. The expression delim-
+       iter can be any non-alphanumeric character, except whitespace or  char-
+       acters  that  have  special meaning (traditionally the forward slash is
+       used).  The regular expression can contain whitespace.
+
+       By default, matching is case-insensitive, and newlines are not  treated
+       as  special  characters. The behavior is controlled by flags, which are
+       toggled by appending one or more of the following characters after  the
+       pattern:
+
+       i (default: on)
+              Toggles  the case sensitivity flag. By default, matching is case
+              insensitive.
+
+       m (default: off)
+              Toggles the pcre MULTILINE flag. When this flag is on, the ^ and
+              $  metacharacters match immediately after and immediately before
+              a newline character, respectively, in addition  to  matching  at
+              the start and end of the subject string.
+
+       s (default: on)
+              Toggles  the  pcre  DOTALL  flag.  When  this  flag is on, the .
+              metacharacter matches the newline character. With  Postfix  ver-
+              sions  prior to 2.0, the flag is off by default, which is incon-
+              venient for multi-line message header matching.
+
+       x (default: off)
+              Toggles the pcre extended flag. When this flag is on, whitespace
+              characters  in the pattern (other than in a character class) are
+              ignored.  To include a whitespace character as part of the  pat-
+              tern, escape it with backslash.
+
+              Note: do not use #comment after patterns.
+
+       A (default: off)
+              Toggles  the pcre ANCHORED flag.  When this flag is on, the pat-
+              tern is forced to be "anchored", that is, it is  constrained  to
+              match  only  at  the start of the string which is being searched
+              (the "subject string"). This effect  can  also  be  achieved  by
+              appropriate constructs in the pattern itself.
+
+       E (default: off)
+              Toggles  the pcre DOLLAR_ENDONLY flag. When this flag is on, a $
+              metacharacter in the pattern matches only at the end of the sub-
+              ject  string.  Without  this flag, a dollar also matches immedi-
+              ately before the final character if it is  a  newline  character
+              (but  not  before  any  other  newline characters). This flag is
+              ignored if the pcre MULTILINE flag is set.
+
+       U (default: off)
+              Toggles the pcre UNGREEDY flag.  When this flag is on, the  pat-
+              tern matching engine inverts the "greediness" of the quantifiers
+              so that they are not greedy by default,  but  become  greedy  if
+              followed  by  "?".   This  flag  can also set by a (?U) modifier
+              within the pattern.
+
+       X (default: off)
+              Toggles the pcre EXTRA flag.  When this flag is  on,  any  back-
+              slash in a pattern that is followed by a letter that has no spe-
+              cial meaning causes an error, thus reserving these  combinations
+              for future expansion.
+
+              This feature is not supported with PCRE2.
+
+SEARCH ORDER
+       Patterns  are  applied  in the order as specified in the table, until a
+       pattern is found that matches the input string.
+
+       Each pattern is applied to the entire input string.  Depending  on  the
+       application, that string is an entire client hostname, an entire client
+       IP address, or an entire mail address.  Thus, no parent domain or  par-
+       ent network search is done, and user@domain mail addresses are not bro-
+       ken up into their user and domain constituent parts,  nor  is  user+foo
+       broken up into user and foo.
+
+TEXT SUBSTITUTION
+       Substitution  of  substrings  (text  that matches patterns inside "()")
+       from the matched expression into the result string  is  requested  with
+       $1,  $2,  etc.;  specify  $$  to  produce a $ character as output.  The
+       macros in the result string may need to be written as ${n} or  $(n)  if
+       they  aren't  followed  by  whitespace.   This feature does not support
+       pcre2 substring names.
+
+       Note: since negated patterns (those preceded by !) return a result when
+       the  expression  does  not  match,  substitutions are not available for
+       negated patterns.
+
+INLINE SPECIFICATION
+       The contents of a table may be specified in the table name (Postfix 3.7
+       and later).  The basic syntax is:
+
+       main.cf:
+           parameter = .. pcre:{ { rule-1 }, { rule-2 } .. } ..
+
+       master.cf:
+           .. -o { parameter = .. pcre:{ { rule-1 }, { rule-2 } .. } .. } ..
+
+       Postfix  ignores  whitespace  after '{' and before '}', and writes each
+       rule as one text line to an in-memory file:
+
+       in-memory file:
+           rule-1
+           rule-2
+           ..
+
+       Postfix parses the result as if it is a file in /etc/postfix.
+
+       Note: if a rule contains $, specify $$ to keep Postfix from  trying  to
+       do $name expansion as it evaluates a parameter value.
+
+EXAMPLE SMTPD ACCESS MAP
+       # Protect your outgoing majordomo exploders
+       /^(?!owner-)(.*)-outgoing@(.*)/ 550 Use ${1}@${2} instead
+
+       # Bounce friend@whatever, except when whatever is our domain (you would
+       # be better just bouncing all friend@ mail - this is just an example).
+       /^(friend@(?!my\.domain$).*)$/  550 Stick this in your pipe $1
+
+       # A multi-line entry. The text is sent as one line.
+       #
+       /^noddy@my\.domain$/
+        550 This user is a funny one. You really don't want to send mail to
+        them as it only makes their head spin.
+
+EXAMPLE HEADER FILTER MAP
+       /^Subject: make money fast/     REJECT
+       /^To: friend@public\.com/       REJECT
+
+EXAMPLE BODY FILTER MAP
+       # First skip over base 64 encoded text to save CPU cycles.
+       # Requires PCRE version 3.
+       ~^[[:alnum:]+/]{60,}$~          OK
+
+       # Put your own body patterns here.
+
+SEE ALSO
+       postmap(1), Postfix lookup table manager
+       postconf(5), configuration parameters
+       regexp_table(5), format of POSIX regular expression tables
+
+README FILES
+       DATABASE_README, Postfix lookup table overview
+
+AUTHOR(S)
+       The PCRE table lookup code was originally written by:
+       Andrew McNamara
+       andrewm@connect.com.au
+       connect.com.au Pty. Ltd.
+       Level 3, 213 Miller St
+       North Sydney, NSW, Australia
+
+       Adopted and adapted by:
+       Wietse Venema
+       IBM T.J. Watson Research
+       P.O. Box 704
+       Yorktown Heights, NY 10598, USA
+
+       Wietse Venema
+       Google, Inc.
+       111 8th Avenue
+       New York, NY 10011, USA
+
+                                                                 PCRE_TABLE(5)
+
-- cgit v1.2.3