]> git.ipfire.org Git - thirdparty/postfix.git/commitdiff
postfix-2.2-20040615
authorWietse Venema <wietse@porcupine.org>
Tue, 15 Jun 2004 05:00:00 +0000 (00:00 -0500)
committerViktor Dukhovni <viktor@dukhovni.org>
Tue, 5 Feb 2013 06:29:39 +0000 (06:29 +0000)
62 files changed:
postfix/HISTORY
postfix/README_FILES/DEBUG_README
postfix/auxiliary/qshape/qshape.pl
postfix/conf/header_checks
postfix/conf/main.cf
postfix/html/DEBUG_README.html
postfix/html/cleanup.8.html
postfix/html/header_checks.5.html
postfix/html/local.8.html
postfix/html/pickup.8.html
postfix/html/postconf.5.html
postfix/html/proxymap.8.html
postfix/html/qmgr.8.html
postfix/html/qshape.1.html
postfix/html/smtpd.8.html
postfix/html/spawn.8.html
postfix/html/trivial-rewrite.8.html
postfix/html/virtual.8.html
postfix/man/man1/qshape.1
postfix/man/man5/header_checks.5
postfix/man/man5/postconf.5
postfix/man/man8/cleanup.8
postfix/man/man8/local.8
postfix/man/man8/pickup.8
postfix/man/man8/proxymap.8
postfix/man/man8/qmgr.8
postfix/man/man8/smtpd.8
postfix/man/man8/spawn.8
postfix/man/man8/trivial-rewrite.8
postfix/man/man8/virtual.8
postfix/mantools/postconf2man
postfix/mantools/postlink
postfix/mantools/postlink.sed [new file with mode: 0755]
postfix/proto/DEBUG_README.html
postfix/proto/header_checks
postfix/proto/postconf.proto
postfix/src/cleanup/cleanup.c
postfix/src/dns/dns_lookup.c
postfix/src/global/bounce.c
postfix/src/global/defer.c
postfix/src/global/mail_version.h
postfix/src/global/sent.c
postfix/src/global/trace.c
postfix/src/global/verify.c
postfix/src/lmtp/lmtp.c
postfix/src/local/local.c
postfix/src/pickup/pickup.c
postfix/src/proxymap/proxymap.c
postfix/src/qmgr/qmgr.c
postfix/src/smtp/smtp_connect.c
postfix/src/smtpd/smtpd.c
postfix/src/smtpd/smtpd_proxy.h
postfix/src/smtpstone/Makefile.in
postfix/src/spawn/spawn.c
postfix/src/trivial-rewrite/trivial-rewrite.c
postfix/src/util/attr_scan64.c
postfix/src/util/base64_code.c
postfix/src/util/binhash.c
postfix/src/util/readlline.c
postfix/src/util/sys_defs.h
postfix/src/util/vbuf_print.c
postfix/src/virtual/virtual.c

index 34d87b875db78307929427e805023bdd041ad441..0e38da29b4ffcb30991f5b8678cbc1b42756dc2f 100644 (file)
@@ -9364,8 +9364,44 @@ Apologies for any names omitted.
        Bugfix: missing "sasl enabled" guard in the SMTPD policy
        client.  File: smtpd/smtpd_check.c.
 
+20040606
+
+       Portability. UnixWare has strcasecmp() in strings.h.  Patch
+       by Andreas Winkelmann. File: util/sys_defs.h.
+
+       Portability. The postlink script is transformed from sed(1)
+       to perl(1).
+
+20040608
+
+       Portability. Introduced SET_H_ERRNO() macro for compilation
+       environments where h_errno can't be used as an lvalue.
+       Files:  util/sys_defs.h, dns/dns_lookup.c.
+
+       Portability. Eliminate assumption on bits per byte from
+       vbuf_print.c.
+
+20040614
+
+       Bugfix: the SMTP client did not reset per-session EHLO,
+       SASL, and history information when opening a connection to
+       an alternate SMTP server.  This is the result of abstraction
+       no longer matching function. Reported and diagnosed by
+       Victor Duchovni, Morgan Stanley.
+
+       Bugfix: non-portable reuse of variadic argument lists.
+       Fix by Victor Duchovni, Morgan Stanley. Files:  global/bounce.c,
+       global/defer.c, global/sent.c, global/trace.c, global/verify.c.
+
+       Portability: NetBSD 2.0 has changed from statfs to statvfs.
+       John Heasley. File: util/sys_defs.h.
+
+       Documentation: typo fixes by IKEDA Nozomu.
+
 Open problems:
 
+       Low: make sure CCARGS -I options come at the end.
+
        Low: add INSTALL section for pre-existing Postfix systems.
 
        Low: add INSTALL section for pre-existing RPM Postfixes.
index e29c367e16a0d71e8aded526e53dc00e7f4f4544..81c2fa94b3c7e6fcdb4509edaaa0ba200d21cfe9 100644 (file)
@@ -250,8 +250,9 @@ the g\bgd\bdb\bb debugger:
 
     /etc/postfix/main.cf:
         debugger_command =
-            PATH=/bin:/usr/bin:/usr/local/bin; export PATH; (echo cont;
-            echo where) | gdb $daemon_directory/$process_name $process_id 2>&1
+            PATH=/bin:/usr/bin:/usr/local/bin; export PATH; (echo cont; echo
+            where; sleep 8640000) | gdb $daemon_directory/$process_name
+            $process_id 2>&1
             >$config_directory/$process_name.$process_id.log & sleep 5
 
 Append a -\b-D\bD option to the suspect daemon in /etc/postfix/master.cf, for
index 1f3e7552b571935a8022f218ac182e0b341ff4c6..13430dd4b7a2ad0b28429ad28a8205d4753339d7 100644 (file)
@@ -12,7 +12,7 @@
 # .fi
 #      \fBqshape\fR [\fB-s\fR] [\fB-p\fR] [\fB-m \fImin_subdomains\fR]
 #              [\fB-b \fIbucket_count\fR] [\fB-t \fIbucket_time\fR]
-#              [\fB-w \fIterminal_width\fR]
+#              [\fB-l\fR] [\fB-w \fIterminal_width\fR]
 #              [\fB-c \fIconfig_directory\fR] [\fIqueue_name\fR ...]
 # DESCRIPTION
 #      The \fBqshape\fR program helps the administrator understand the
 #      or "buckets". Each bucket has a maximum queue age that is twice
 #      as large as that of the previous bucket. The last bucket has no
 #      age limit.
-# .IP "\fB-b \fIbucket_time\fR"
+# .IP "\fB-t \fIbucket_time\fR"
 #      The age limit in minutes for the first time bucket. The default
 #      value is 5, meaning that the first bucket counts messages between
 #      0 and 5 minutes old.
+# .IP "\fB-l\fR"
+#      Instead of using a geometric age sequence, use a linear age sequence,
+#      in other words simple multiples of \fBbucket_time\fR.
+#
+#      This feature is available in Postfix 2.2 and later.
 # .IP "\fB-w \fIterminal_width\fR"
 #      The output is right justified, with the counts for the last
 #      bucket shown on the 80th column, the \fIterminal_width\fR can be
@@ -113,7 +118,7 @@ my @qlist = qw(incoming active);
 do {
     local $SIG{__WARN__} = sub {
        warn "$0: $_[0]" unless exists($opts{"h"});
-       die "Usage: $0 [ -s ] [ -p ] [ -m <min_subdomains> ]\n".
+       die "Usage: $0 [ -s ] [ -p ] [ -m <min_subdomains> ] [ -l ]\n".
            "\t[ -b <bucket_count> ] [ -t <bucket_time> ] [ -w <terminal_width> ]\n".
            "\t[ -c <config_directory> ] [ <queue_name> ... ]\n".
        "The 's' option shows sender domain counts.\n".
@@ -127,7 +132,7 @@ do {
        "\tthe first bucket is [0, bucket_time) minutes\n".
        "\tthe second bucket is [bucket_time, 2*bucket_time) minutes\n".
        "\tthe third bucket is [2*bucket_time, 4*bucket_time) minutes...\n".
-       "The number of buckets shown is <bucket_count>.\n\n".
+       "'-l' makes the ages linear, the number of buckets shown is <bucket_count>\n\n".
 
        "The default summary is for the incoming and active queues. An explicit\n".
        "list of queue names can be given on the command line. Non-absolute queue\n".
@@ -137,7 +142,7 @@ do {
        "not supported. If necessary, use explicit absolute paths for all queues.\n";
     };
 
-    getopts("hc:psw:b:t:m:", \%opts);
+    getopts("lhc:psw:b:t:m:", \%opts);
     warn "Help message" if (exists $opts{"h"});
 
     @qlist = @ARGV if (@ARGV > 0);
@@ -245,7 +250,7 @@ sub bucket {
     my ($qt, $now) = @_;
     my $m = ($now - $qt) / (60 * $tick);
     return 1 if ($m < 1);
-    my $b = 2 + int(log($m) / log(2));
+    my $b = $opts{"l"} ? int($m+1) : 2 + int(log($m) / log(2));
     $b < $bnum ? $b : $bnum;
 }
 
@@ -285,7 +290,7 @@ for (my $i = 0, my $t = 0; $i <= $bnum; ) {
     push(@heads, $h);
     $fmt .= sprintf "%%%ds", $l;
     $dw -= $l;
-    if (++$i < $bnum) { $t += $t ? $t : $tick; } else { $t = "$t+"; }
+    if (++$i < $bnum) { $t += ($t && !$opts{"l"}) ? $t : $tick; } else { $t = "$t+"; }
 }
 $dw = $dwidth if ($dw < $dwidth);
 
index dcb25d5ae5c4af1466dd105694c6b91d53a192b1..cc01dfd44a1b6ecda6e97345f8761a3ca44b6cc7 100644 (file)
 #        exploit.
 # 
 #        /etc/postfix/main.cf:
-#            header_checks = regexp:/etc/postfix/header_checks
+#            body_checks = regexp:/etc/postfix/body_checks
 # 
-#        /etc/postfix/header_checks:
+#        /etc/postfix/body_checks:
 #            /^<iframe src=(3D)?cid:.* height=(3D)?0 width=(3D)?0>$/
 #                REJECT IFRAME vulnerability exploit
 # 
index 098bec50070ee53ec1287e986b01c9c60cb617ba..272d9866122082413e14626dc1759ae6194422b7 100644 (file)
@@ -498,7 +498,7 @@ unknown_local_recipient_reject_code = 550
 # JUNK MAIL CONTROLS
 # 
 # The controls listed here are only a very small subset. The file
-# SPTMD_ACCESS_README provides an overview.
+# SMTPD_ACCESS_README provides an overview.
 
 # The header_checks parameter specifies an optional table with patterns
 # that each logical message header is matched against, including
index 2b07585176b493a85f3275878ca0330dcccd9bdd..da8b4f5fd17362c55aeed510319ded71b49f5616 100644 (file)
@@ -377,8 +377,9 @@ so that it invokes the <b>gdb</b> debugger: </p>
 <pre>
 /etc/postfix/main.cf:
     <a href="postconf.5.html#debugger_command">debugger_command</a> =
-        PATH=/bin:/usr/bin:/usr/local/bin; export PATH; (echo cont;
-        echo where) | gdb $<a href="postconf.5.html#daemon_directory">daemon_directory</a>/$<a href="postconf.5.html#process_name">process_name</a> $<a href="postconf.5.html#process_id">process_id</a> 2&gt&amp;1
+        PATH=/bin:/usr/bin:/usr/local/bin; export PATH; (echo cont; echo
+        where; sleep 8640000) | gdb $<a href="postconf.5.html#daemon_directory">daemon_directory</a>/$<a href="postconf.5.html#process_name">process_name</a> 
+        $<a href="postconf.5.html#process_id">process_id</a> 2&gt&amp;1
         &gt;$<a href="postconf.5.html#config_directory">config_directory</a>/$<a href="postconf.5.html#process_name">process_name</a>.$<a href="postconf.5.html#process_id">process_id</a>.log &amp; sleep 5
 </pre>
 </blockquote>
index 859bdf32eae8c6bf11b1ece6490aa3a1a91d5613..cfc6ce6e781c2fd6ea138ae8f90c9891f99b8d4b 100644 (file)
@@ -306,9 +306,9 @@ CLEANUP(8)                                             CLEANUP(8)
               The internet hostname of this mail system.
 
        <b><a href="postconf.5.html#myorigin">myorigin</a> ($<a href="postconf.5.html#myhostname">myhostname</a>)</b>
-              The  default  domain  name that locally-posted mail
-              appears to come from, and that locally posted  mail
-              is delivered to.
+              The domain name that locally-posted mail appears to
+              come from, and that locally posted mail  is  deliv-
+              ered to.
 
        <b><a href="postconf.5.html#process_id">process_id</a> (read-only)</b>
               The  process ID of a Postfix command or daemon pro-
index f4580ce1d582296b70df4f59366657d10034f3bb..5a0c26d92af983caec49eebcbac9b7b017f18478 100644 (file)
@@ -309,9 +309,9 @@ HEADER_CHECKS(5)                                 HEADER_CHECKS(5)
        exploit.
 
        /etc/postfix/main.cf:
-           <a href="postconf.5.html#header_checks">header_checks</a> = <a href="regexp_table.5.html">regexp</a>:/etc/postfix/header_checks
+           <a href="postconf.5.html#body_checks">body_checks</a> = <a href="regexp_table.5.html">regexp</a>:/etc/postfix/body_checks
 
-       /etc/postfix/header_checks:
+       /etc/postfix/body_checks:
            /^&lt;iframe src=(3D)?cid:.* height=(3D)?0 width=(3D)?0&gt;$/
                REJECT IFRAME vulnerability exploit
 
index 372100c39fb972e4dc1de6c42be0109483a49560..6fdb5733481c36e8ec80469fe5172e9f6842e444 100644 (file)
@@ -38,119 +38,126 @@ LOCAL(8)                                                 LOCAL(8)
        rated list of  ~/.<b>forward</b>  like  files  through  the  <b><a href="postconf.5.html#forward_path">for</a>-</b>
        <b><a href="postconf.5.html#forward_path">ward_path</a></b>  configuration  parameter.  Upon  delivery,  the
        local delivery agent tries each pathname in the list until
-       a file is found.  The <b><a href="postconf.5.html#forward_path">forward_path</a></b> parameter is subject to
-       interpolation of <b>$user</b> (recipient username), <b>$home</b> (recip-
-       ient home directory), <b>$shell</b> (recipient shell), <b>$recipient</b>
-       (complete  recipient   address),   <b>$extension</b>   (recipient
-       address  extension),  <b>$domain</b>  (recipient  domain),  <b>local</b>
-       (entire recipient address localpart) and <b>$<a href="postconf.5.html#recipient_delimiter">recipient_delim</a>-</b>
-       <b><a href="postconf.5.html#recipient_delimiter">iter</a>.</b>  The  forms  <i>${name?value}</i>  and <i>${name:value}</i> expand
-       conditionally to <i>value</i> when <i>$name</i>  is  (is  not)  defined.
-       Characters  that  may have special meaning to the shell or
-       file system are replaced  by  underscores.   The  list  of
-       acceptable characters is specified with the <b><a href="postconf.5.html#forward_expansion_filter">forward_expan</a>-</b>
-       <b><a href="postconf.5.html#forward_expansion_filter">sion_filter</a></b> configuration parameter.
-
-       An alias or ~/.<b>forward</b> file may list  any  combination  of
-       external   commands,  destination  file  names,  <b>:include:</b>
-       directives, or mail addresses.  See <a href="aliases.5.html"><b>aliases</b>(5)</a> for a  pre-
-       cise  description. Each line in a user's .<b>forward</b> file has
+       a file is found.
+
+       Delivery via ~/.<b>.forward</b> files is done with the privileges
+       of the recipient.  Thus, ~/.<b>forward</b>  like  files  must  be
+       readable  by  the  recipient,  and  their parent directory
+       needs to have "execute" permission for the recipient.
+
+       The <b><a href="postconf.5.html#forward_path">forward_path</a></b> parameter is subject to interpolation  of
+       <b>$user</b>  (recipient  username), <b>$home</b> (recipient home direc-
+       tory),  <b>$shell</b>  (recipient  shell),  <b>$recipient</b>  (complete
+       recipient  address),  <b>$extension</b> (recipient address exten-
+       sion), <b>$domain</b> (recipient domain), <b>local</b> (entire recipient
+       address  localpart)  and  <b>$<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a>.</b>  The forms
+       <i>${name?value}</i> and <i>${name:value}</i>  expand  conditionally  to
+       <i>value</i> when <i>$name</i> is (is not) defined.  Characters that may
+       have special meaning to  the  shell  or  file  system  are
+       replaced  by  underscores.  The list of acceptable charac-
+       ters is specified with the  <b><a href="postconf.5.html#forward_expansion_filter">forward_expansion_filter</a></b>  con-
+       figuration parameter.
+
+       An  alias  or  ~/.<b>forward</b> file may list any combination of
+       external  commands,  destination  file  names,   <b>:include:</b>
+       directives,  or mail addresses.  See <a href="aliases.5.html"><b>aliases</b>(5)</a> for a pre-
+       cise description. Each line in a user's .<b>forward</b> file  has
        the same syntax as the right-hand part of an alias.
 
-       When an address is  found  in  its  own  alias  expansion,
-       delivery  is  made  to  the  user  instead. When a user is
+       When  an  address  is  found  in  its own alias expansion,
+       delivery is made to the  user  instead.  When  a  user  is
        listed in the user's own ~/.<b>forward</b> file, delivery is made
-       to  the  user's mailbox instead.  An empty ~/.<b>forward</b> file
+       to the user's mailbox instead.  An empty  ~/.<b>forward</b>  file
        means do not forward mail.
 
-       In order to prevent the mail system from using  up  unrea-
-       sonable   amounts  of  memory,  input  records  read  from
-       <b>:include:</b> or from ~/.<b>forward</b>  files  are  broken  up  into
+       In  order  to prevent the mail system from using up unrea-
+       sonable  amounts  of  memory,  input  records  read   from
+       <b>:include:</b>  or  from  ~/.<b>forward</b>  files  are broken up into
        chunks of length <b><a href="postconf.5.html#line_length_limit">line_length_limit</a></b>.
 
-       While  expanding aliases, ~/.<b>forward</b> files, and so on, the
+       While expanding aliases, ~/.<b>forward</b> files, and so on,  the
        program attempts to avoid duplicate deliveries. The <b><a href="postconf.5.html#duplicate_filter_limit">dupli</a>-</b>
-       <b><a href="postconf.5.html#duplicate_filter_limit">cate_filter_limit</a></b>  configuration parameter limits the num-
+       <b><a href="postconf.5.html#duplicate_filter_limit">cate_filter_limit</a></b> configuration parameter limits the  num-
        ber of remembered recipients.
 
 <b>MAIL FORWARDING</b>
-       For the sake of reliability, forwarded mail is  re-submit-
-       ted  as  a new message, so that each recipient has a sepa-
+       For  the sake of reliability, forwarded mail is re-submit-
+       ted as a new message, so that each recipient has  a  sepa-
        rate on-file delivery status record.
 
        In order to stop mail forwarding loops early, the software
        adds an optional <b>Delivered-To:</b> header with the final enve-
-       lope recipient address. If mail arrives  for  a  recipient
+       lope  recipient  address.  If mail arrives for a recipient
        that is already listed in a <b>Delivered-To:</b> header, the mes-
        sage is bounced.
 
 <b>MAILBOX DELIVERY</b>
-       The default per-user mailbox is a file in  the  UNIX  mail
-       spool  directory (<b>/var/mail/</b><i>user</i> or <b>/var/spool/mail/</b><i>user</i>);
-       the location can be specified with  the  <b><a href="postconf.5.html#mail_spool_directory">mail_spool_direc</a>-</b>
-       <b><a href="postconf.5.html#mail_spool_directory">tory</a></b>  configuration  parameter. Specify a name ending in <b>/</b>
+       The  default  per-user  mailbox is a file in the UNIX mail
+       spool directory (<b>/var/mail/</b><i>user</i> or  <b>/var/spool/mail/</b><i>user</i>);
+       the  location  can be specified with the <b><a href="postconf.5.html#mail_spool_directory">mail_spool_direc</a>-</b>
+       <b><a href="postconf.5.html#mail_spool_directory">tory</a></b> configuration parameter. Specify a name ending  in  <b>/</b>
        for <b>qmail</b>-compatible <b>maildir</b> delivery.
 
-       Alternatively, the per-user mailbox can be a file  in  the
-       user's  home  directory  with  a  name  specified  via the
-       <b><a href="postconf.5.html#home_mailbox">home_mailbox</a></b> configuration parameter. Specify  a  relative
+       Alternatively,  the  per-user mailbox can be a file in the
+       user's home  directory  with  a  name  specified  via  the
+       <b><a href="postconf.5.html#home_mailbox">home_mailbox</a></b>  configuration  parameter. Specify a relative
        path name. Specify a name ending in <b>/</b> for <b>qmail</b>-compatible
        <b>maildir</b> delivery.
 
-       Mailbox delivery can be delegated to an  external  command
-       specified  with  the <b><a href="postconf.5.html#mailbox_command">mailbox_command</a></b> configuration parame-
-       ter. The command  executes  with  the  privileges  of  the
-       recipient  user  (exception:  in case of delivery as root,
-       the   command   executes   with    the    privileges    of
+       Mailbox  delivery  can be delegated to an external command
+       specified with the <b><a href="postconf.5.html#mailbox_command">mailbox_command</a></b>  configuration  parame-
+       ter.  The  command  executes  with  the  privileges of the
+       recipient user (exception: in case of  delivery  as  root,
+       the    command    executes    with   the   privileges   of
        <b><a href="postconf.5.html#default_privs">default_privs</a></b>).
 
-       Mailbox  delivery  can be delegated to alternative message
-       transports specified in the  <b>master.cf</b>  file.   The  <b><a href="postconf.5.html#mailbox_transport">mail</a>-</b>
-       <b><a href="postconf.5.html#mailbox_transport">box_transport</a></b>  configuration parameter specifies a message
-       transport that is to be used  for  all  local  recipients,
-       regardless  of  whether  they are found in the UNIX passwd
-       database.  The <b><a href="postconf.5.html#fallback_transport">fallback_transport</a></b>  parameter  specifies  a
+       Mailbox delivery can be delegated to  alternative  message
+       transports  specified  in  the  <b>master.cf</b> file.  The <b><a href="postconf.5.html#mailbox_transport">mail</a>-</b>
+       <b><a href="postconf.5.html#mailbox_transport">box_transport</a></b> configuration parameter specifies a  message
+       transport  that  is  to  be used for all local recipients,
+       regardless of whether they are found in  the  UNIX  passwd
+       database.   The  <b><a href="postconf.5.html#fallback_transport">fallback_transport</a></b>  parameter specifies a
        message transport for recipients that are not found in the
        UNIX passwd database.
 
        In the case of UNIX-style mailbox delivery, the <b>local</b> dae-
        mon prepends a "<b>From</b> <i>sender time</i><b>_</b><i>stamp</i>" envelope header to
-       each message, prepends an <b>X-Original-To:</b> header  with  the
-       recipient   address  as  given  to  Postfix,  prepends  an
-       optional <b>Delivered-To:</b>  header  with  the  final  envelope
+       each  message,  prepends an <b>X-Original-To:</b> header with the
+       recipient  address  as  given  to  Postfix,  prepends   an
+       optional  <b>Delivered-To:</b>  header  with  the  final envelope
        recipient address, prepends a <b>Return-Path:</b> header with the
-       envelope sender address, prepends a &gt; character  to  lines
-       beginning  with  "<b>From</b>  ", and appends an empty line.  The
-       mailbox is locked for exclusive access while  delivery  is
-       in  progress.  In  case of problems, an attempt is made to
+       envelope  sender  address, prepends a &gt; character to lines
+       beginning with "<b>From</b> ", and appends an  empty  line.   The
+       mailbox  is  locked for exclusive access while delivery is
+       in progress. In case of problems, an attempt  is  made  to
        truncate the mailbox to its original length.
 
        In the case of <b>maildir</b> delivery, the local daemon prepends
-       an  optional  <b>Delivered-To:</b> header with the final envelope
-       recipient address, prepends an <b>X-Original-To:</b> header  with
-       the  recipient address as given to Postfix, and prepends a
+       an optional <b>Delivered-To:</b> header with the  final  envelope
+       recipient  address, prepends an <b>X-Original-To:</b> header with
+       the recipient address as given to Postfix, and prepends  a
        <b>Return-Path:</b> header with the envelope sender address.
 
 <b>EXTERNAL COMMAND DELIVERY</b>
-       The   <b><a href="postconf.5.html#allow_mail_to_commands">allow_mail_to_commands</a></b>    configuration    parameter
-       restricts  delivery to external commands. The default set-
-       ting (<b>alias,  forward</b>)  forbids  command  destinations  in
+       The    <b><a href="postconf.5.html#allow_mail_to_commands">allow_mail_to_commands</a></b>    configuration   parameter
+       restricts delivery to external commands. The default  set-
+       ting  (<b>alias,  forward</b>)  forbids  command  destinations in
        <b>:include:</b> files.
 
-       The  command  is  executed directly where possible. Assis-
-       tance by the shell (<b>/bin/sh</b> on UNIX systems) is used  only
-       when  the command contains shell magic characters, or when
+       The command is executed directly  where  possible.  Assis-
+       tance  by the shell (<b>/bin/sh</b> on UNIX systems) is used only
+       when the command contains shell magic characters, or  when
        the command invokes a shell built-in command.
 
-       A limited amount of command output  (standard  output  and
-       standard  error) is captured for inclusion with non-deliv-
-       ery status reports.  A command is forcibly  terminated  if
-       it  does  not  complete within <b><a href="postconf.5.html#command_time_limit">command_time_limit</a></b> seconds.
-       Command exit status codes are expected to follow the  con-
+       A  limited  amount  of command output (standard output and
+       standard error) is captured for inclusion with  non-deliv-
+       ery  status  reports.  A command is forcibly terminated if
+       it does not complete  within  <b><a href="postconf.5.html#command_time_limit">command_time_limit</a></b>  seconds.
+       Command  exit status codes are expected to follow the con-
        ventions defined in &lt;<b>sysexits.h</b>&gt;.
 
-       A  limited amount of message context is exported via envi-
-       ronment variables. Characters that may have special  mean-
+       A limited amount of message context is exported via  envi-
+       ronment  variables. Characters that may have special mean-
        ing to the shell are replaced by underscores.  The list of
        acceptable characters is specified with the <b><a href="postconf.5.html#command_expansion_filter">command_expan</a>-</b>
        <b><a href="postconf.5.html#command_expansion_filter">sion_filter</a></b> configuration parameter.
@@ -178,58 +185,58 @@ LOCAL(8)                                                 LOCAL(8)
        <b>SENDER</b> The entire sender address.
 
        The <b>PATH</b> environment variable is always reset to a system-
-       dependent  default  path,  and environment variables whose
-       names are blessed by the <b><a href="postconf.5.html#export_environment">export_environment</a></b>  configuration
+       dependent default path, and  environment  variables  whose
+       names  are blessed by the <b><a href="postconf.5.html#export_environment">export_environment</a></b> configuration
        parameter are exported unchanged.
 
        The current working directory is the mail queue directory.
 
        The <b>local</b> daemon prepends a "<b>From</b> <i>sender time</i><b>_</b><i>stamp</i>" enve-
-       lope  header  to  each message, prepends an <b>X-Original-To:</b>
-       header with the recipient address  as  given  to  Postfix,
-       prepends  an  optional <b>Delivered-To:</b> header with the final
+       lope header to each message,  prepends  an  <b>X-Original-To:</b>
+       header  with  the  recipient  address as given to Postfix,
+       prepends an optional <b>Delivered-To:</b> header with  the  final
        recipient envelope address, prepends a <b>Return-Path:</b> header
-       with  the  sender  envelope  address, and appends no empty
+       with the sender envelope address,  and  appends  no  empty
        line.
 
 <b>EXTERNAL FILE DELIVERY</b>
-       The delivery format depends on  the  destination  filename
-       syntax.   The default is to use UNIX-style mailbox format.
-       Specify a name ending in <b>/</b>  for  <b>qmail</b>-compatible  <b>maildir</b>
+       The  delivery  format  depends on the destination filename
+       syntax.  The default is to use UNIX-style mailbox  format.
+       Specify  a  name  ending in <b>/</b> for <b>qmail</b>-compatible <b>maildir</b>
        delivery.
 
-       The  <b><a href="postconf.5.html#allow_mail_to_files">allow_mail_to_files</a></b> configuration parameter restricts
-       delivery to external files. The  default  setting  (<b>alias,</b>
+       The <b><a href="postconf.5.html#allow_mail_to_files">allow_mail_to_files</a></b> configuration parameter  restricts
+       delivery  to  external  files. The default setting (<b>alias,</b>
        <b>forward</b>) forbids file destinations in <b>:include:</b> files.
 
        In the case of UNIX-style mailbox delivery, the <b>local</b> dae-
        mon prepends a "<b>From</b> <i>sender time</i><b>_</b><i>stamp</i>" envelope header to
-       each  message,  prepends an <b>X-Original-To:</b> header with the
-       recipient  address  as  given  to  Postfix,  prepends   an
-       optional  <b>Delivered-To:</b>  header  with  the final recipient
-       envelope address, prepends a &gt; character to  lines  begin-
-       ning  with  "<b>From</b> ", and appends an empty line.  The enve-
-       lope sender  address  is  available  in  the  <b>Return-Path:</b>
-       header.   When  the  destination  is a regular file, it is
+       each message, prepends an <b>X-Original-To:</b> header  with  the
+       recipient   address  as  given  to  Postfix,  prepends  an
+       optional <b>Delivered-To:</b> header  with  the  final  recipient
+       envelope  address,  prepends a &gt; character to lines begin-
+       ning with "<b>From</b> ", and appends an empty line.   The  enve-
+       lope  sender  address  is  available  in  the <b>Return-Path:</b>
+       header.  When the destination is a  regular  file,  it  is
        locked for exclusive access while delivery is in progress.
        In case of problems, an attempt is made to truncate a reg-
        ular file to its original length.
 
        In the case of <b>maildir</b> delivery, the local daemon prepends
-       an  optional  <b>Delivered-To:</b> header with the final envelope
-       recipient address, and prepends an  <b>X-Original-To:</b>  header
+       an optional <b>Delivered-To:</b> header with the  final  envelope
+       recipient  address,  and prepends an <b>X-Original-To:</b> header
        with the recipient address as given to Postfix.  The enve-
-       lope sender  address  is  available  in  the  <b>Return-Path:</b>
+       lope  sender  address  is  available  in  the <b>Return-Path:</b>
        header.
 
 <b>ADDRESS EXTENSION</b>
-       The  optional  <b><a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a></b> configuration parameter
-       specifies how to separate address  extensions  from  local
+       The optional <b><a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a></b>  configuration  parameter
+       specifies  how  to  separate address extensions from local
        recipient names.
 
-       For  example,  with  "<b><a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a>  =  +</b>", mail for
-       <i>name</i>+<i>foo</i> is delivered to the  alias  <i>name</i>+<i>foo</i>  or  to  the
-       alias  <i>name</i>,  to  the  destinations  listed in ~<i>name</i>/.<b>for-</b>
+       For example, with  "<b><a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a>  =  +</b>",  mail  for
+       <i>name</i>+<i>foo</i>  is  delivered  to  the  alias <i>name</i>+<i>foo</i> or to the
+       alias <i>name</i>, to  the  destinations  listed  in  ~<i>name</i>/.<b>for-</b>
        <b>ward</b>+<i>foo</i> or in ~<i>name</i>/.<b>forward</b>, to the mailbox owned by the
        user <i>name</i>, or it is sent back as undeliverable.
 
@@ -237,10 +244,10 @@ LOCAL(8)                                                 LOCAL(8)
        <b>ered-To:</b> header line with the final recipient address.
 
 <b>DELIVERY RIGHTS</b>
-       Deliveries to external files  and  external  commands  are
+       Deliveries  to  external  files  and external commands are
        made with the rights of the receiving user on whose behalf
-       the delivery is made.  In the absence of a  user  context,
-       the  <b>local</b>  daemon  uses the owner rights of the <b>:include:</b>
+       the  delivery  is made.  In the absence of a user context,
+       the <b>local</b> daemon uses the owner rights  of  the  <b>:include:</b>
        file or alias database.  When those files are owned by the
        superuser, delivery is made with the rights specified with
        the <b><a href="postconf.5.html#default_privs">default_privs</a></b> configuration parameter.
@@ -249,31 +256,31 @@ LOCAL(8)                                                 LOCAL(8)
        <a href="http://www.faqs.org/rfcs/rfc822.html">RFC 822</a> (ARPA Internet Text Messages)
 
 <b>DIAGNOSTICS</b>
-       Problems and transactions are logged to <b>syslogd</b>(8).   Cor-
-       rupted  message files are marked so that the queue manager
+       Problems  and transactions are logged to <b>syslogd</b>(8).  Cor-
+       rupted message files are marked so that the queue  manager
        can move them to the <b>corrupt</b> queue afterwards.
 
-       Depending on the setting of the <b><a href="postconf.5.html#notify_classes">notify_classes</a></b>  parameter,
-       the  postmaster  is notified of bounces and of other trou-
+       Depending  on the setting of the <b><a href="postconf.5.html#notify_classes">notify_classes</a></b> parameter,
+       the postmaster is notified of bounces and of  other  trou-
        ble.
 
 <b>BUGS</b>
-       For security  reasons,  the  message  delivery  status  of
-       external  commands  or  of  external files is never check-
+       For  security  reasons,  the  message  delivery  status of
+       external commands or of external  files  is  never  check-
        pointed to file. As a result, the program may occasionally
        deliver more than once to a command or external file. Bet-
        ter safe than sorry.
 
-       Mutually-recursive aliases or  ~/.<b>forward</b>  files  are  not
-       detected  early.   The  resulting  mail forwarding loop is
+       Mutually-recursive  aliases  or  ~/.<b>forward</b>  files are not
+       detected early.  The resulting  mail  forwarding  loop  is
        broken by the use of the <b>Delivered-To:</b> message header.
 
 <b>CONFIGURATION PARAMETERS</b>
-       Changes  to  <b>main.cf</b>  are  picked  up  automatically,   as
-       <a href="local.8.html">local(8)</a>  processes run for only a limited amount of time.
+       Changes   to  <b>main.cf</b>  are  picked  up  automatically,  as
+       <a href="local.8.html">local(8)</a> processes run for only a limited amount of  time.
        Use the command "<b>postfix reload</b>" to speed up a change.
 
-       The text below provides  only  a  parameter  summary.  See
+       The  text  below  provides  only  a parameter summary. See
        <a href="postconf.5.html">postconf(5)</a> for more details including examples.
 
 <b>COMPATIBILITY CONTROLS</b>
@@ -283,59 +290,59 @@ LOCAL(8)                                                 LOCAL(8)
        <b><a href="postconf.5.html#expand_owner_alias">expand_owner_alias</a> (no)</b>
               When delivering to an alias "aliasname" that has an
               "owner-aliasname" companion alias, set the envelope
-              sender  address  to  the  expansion  of the "owner-
+              sender address to  the  expansion  of  the  "owner-
               aliasname" alias.
 
        <b><a href="postconf.5.html#owner_request_special">owner_request_special</a> (yes)</b>
-              Give special treatment to owner-listname and  list-
-              name-request  address localparts: don't don't split
-              such addresses when the <a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a> is  set
+              Give  special treatment to owner-listname and list-
+              name-request address localparts: don't don't  split
+              such  addresses when the <a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a> is set
               to "-".
 
        <b><a href="postconf.5.html#sun_mailtool_compatibility">sun_mailtool_compatibility</a> (no)</b>
               Obsolete SUN mailtool compatibility feature.
 
 <b>DELIVERY METHOD CONTROLS</b>
-       The  precedence  of <a href="local.8.html">local(8)</a> delivery methods from high to
-       low is: aliases, .forward files, <a href="postconf.5.html#mailbox_transport">mailbox_transport</a>,  <a href="postconf.5.html#mailbox_command_maps">mail</a>-
+       The precedence of <a href="local.8.html">local(8)</a> delivery methods from  high  to
+       low  is: aliases, .forward files, <a href="postconf.5.html#mailbox_transport">mailbox_transport</a>, <a href="postconf.5.html#mailbox_command_maps">mail</a>-
        <a href="postconf.5.html#mailbox_command_maps">box_command_maps</a>,      <a href="postconf.5.html#mailbox_command">mailbox_command</a>,      <a href="postconf.5.html#home_mailbox">home_mailbox</a>,
-       <a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a>, <a href="postconf.5.html#fallback_transport">fallback_transport</a> and  <a href="postconf.5.html#luser_relay">luser_relay</a>.
+       <a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a>,  <a href="postconf.5.html#fallback_transport">fallback_transport</a> and <a href="postconf.5.html#luser_relay">luser_relay</a>.
 
        <b><a href="postconf.5.html#alias_maps">alias_maps</a> (see 'postconf -d' output)</b>
-              The  alias  databases  that  are  used for <a href="local.8.html">local(8)</a>
+              The alias databases  that  are  used  for  <a href="local.8.html">local(8)</a>
               delivery.
 
        <b><a href="postconf.5.html#forward_path">forward_path</a> (see 'postconf -d' output)</b>
               The <a href="local.8.html">local(8)</a> delivery agent search list for finding
-              a  .forward file with user-specified delivery meth-
+              a .forward file with user-specified delivery  meth-
               ods.
 
        <b><a href="postconf.5.html#mailbox_transport">mailbox_transport</a> (empty)</b>
-              Optional  message  delivery  transport   that   the
-              <a href="local.8.html">local(8)</a>  delivery  agent  should  use  for mailbox
-              delivery to all local recipients,  whether  or  not
+              Optional   message   delivery  transport  that  the
+              <a href="local.8.html">local(8)</a> delivery  agent  should  use  for  mailbox
+              delivery  to  all  local recipients, whether or not
               they are found in the UNIX passwd database.
 
        <b><a href="postconf.5.html#mailbox_command_maps">mailbox_command_maps</a> (empty)</b>
-              Optional  lookup tables with per-recipient external
+              Optional lookup tables with per-recipient  external
               commands to use for <a href="local.8.html">local(8)</a> mailbox delivery.
 
        <b><a href="postconf.5.html#mailbox_command">mailbox_command</a> (empty)</b>
-              Optional external command that the <a href="local.8.html">local(8)</a>  deliv-
+              Optional  external command that the <a href="local.8.html">local(8)</a> deliv-
               ery agent should use for mailbox delivery.
 
        <b><a href="postconf.5.html#home_mailbox">home_mailbox</a> (empty)</b>
-              Optional  pathname  of a mailbox file relative to a
+              Optional pathname of a mailbox file relative  to  a
               <a href="local.8.html">local(8)</a> user's home directory.
 
        <b><a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a> (see 'postconf -d' output)</b>
-              The directory where <a href="local.8.html">local(8)</a>  UNIX-style  mailboxes
+              The  directory  where <a href="local.8.html">local(8)</a> UNIX-style mailboxes
               are kept.
 
        <b><a href="postconf.5.html#fallback_transport">fallback_transport</a> (empty)</b>
-              Optional   message   delivery  transport  that  the
-              <a href="local.8.html">local(8)</a> delivery agent should use for  names  that
-              are  not found in the <a href="aliases.5.html">aliases(5)</a> database or in the
+              Optional  message  delivery  transport   that   the
+              <a href="local.8.html">local(8)</a>  delivery  agent should use for names that
+              are not found in the <a href="aliases.5.html">aliases(5)</a> database or in  the
               UNIX passwd database.
 
        <b><a href="postconf.5.html#luser_relay">luser_relay</a> (empty)</b>
@@ -348,15 +355,15 @@ LOCAL(8)                                                 LOCAL(8)
               sive lock on a mailbox file or <a href="bounce.8.html">bounce(8)</a> logfile.
 
        <b><a href="postconf.5.html#deliver_lock_delay">deliver_lock_delay</a> (1s)</b>
-              The time between attempts to acquire  an  exclusive
+              The  time  between attempts to acquire an exclusive
               lock on a mailbox file or <a href="bounce.8.html">bounce(8)</a> logfile.
 
        <b><a href="postconf.5.html#stale_lock_time">stale_lock_time</a> (500s)</b>
-              The  time  after  which  a  stale exclusive mailbox
+              The time after  which  a  stale  exclusive  mailbox
               lockfile is removed.
 
        <b><a href="postconf.5.html#mailbox_delivery_lock">mailbox_delivery_lock</a> (see 'postconf -d' output)</b>
-              How to lock a UNIX-style  <a href="local.8.html">local(8)</a>  mailbox  before
+              How  to  lock  a UNIX-style <a href="local.8.html">local(8)</a> mailbox before
               attempting delivery.
 
 <b>RESOURCE AND RATE CONTROLS</b>
@@ -364,17 +371,17 @@ LOCAL(8)                                                 LOCAL(8)
               Time limit for delivery to external commands.
 
        <b><a href="postconf.5.html#duplicate_filter_limit">duplicate_filter_limit</a> (1000)</b>
-              The  maximal  number of addresses remembered by the
-              address duplicate filter  for  <a href="aliases.5.html">aliases(5)</a>  or  vir-
+              The maximal number of addresses remembered  by  the
+              address  duplicate  filter  for  <a href="aliases.5.html">aliases(5)</a> or vir-
               tual(5) alias expansion, or for <a href="showq.8.html">showq(8)</a> queue dis-
               plays.
 
        <b><a href="postconf.5.html#local_destination_concurrency_limit">local_destination_concurrency_limit</a> (2)</b>
-              The maximal number of parallel deliveries  via  the
+              The  maximal  number of parallel deliveries via the
               local mail delivery transport to the same recipient
-              (when "<a href="postconf.5.html#local_destination_recipient_limit">local_destination_recipient_limit</a> =  1")  or
-              the  maximal  number  of parallel deliveries to the
-              same <a href="ADDRESS_CLASS_README.html#local_domain_class">local domain</a> (when  "local_destination_recipi-
+              (when  "<a href="postconf.5.html#local_destination_recipient_limit">local_destination_recipient_limit</a>  = 1") or
+              the maximal number of parallel  deliveries  to  the
+              same  <a href="ADDRESS_CLASS_README.html#local_domain_class">local domain</a> (when "local_destination_recipi-
               ent_limit &gt; 1").
 
        <b><a href="postconf.5.html#local_destination_recipient_limit">local_destination_recipient_limit</a> (1)</b>
@@ -387,37 +394,37 @@ LOCAL(8)                                                 LOCAL(8)
 
 <b>SECURITY CONTROLS</b>
        <b><a href="postconf.5.html#allow_mail_to_commands">allow_mail_to_commands</a> (alias, forward)</b>
-              Restrict  <a href="local.8.html">local(8)</a>  mail  delivery to external com-
+              Restrict <a href="local.8.html">local(8)</a> mail delivery  to  external  com-
               mands.
 
        <b><a href="postconf.5.html#allow_mail_to_files">allow_mail_to_files</a> (alias, forward)</b>
-              Restrict <a href="local.8.html">local(8)</a> mail delivery to external  files.
+              Restrict  <a href="local.8.html">local(8)</a> mail delivery to external files.
 
        <b><a href="postconf.5.html#command_expansion_filter">command_expansion_filter</a> (see 'postconf -d' output)</b>
-              Restrict  the characters that the <a href="local.8.html">local(8)</a> delivery
-              agent allows in $name expansions  of  $mailbox_com-
+              Restrict the characters that the <a href="local.8.html">local(8)</a>  delivery
+              agent  allows  in $name expansions of $mailbox_com-
               mand.
 
        <b><a href="postconf.5.html#default_privs">default_privs</a> (nobody)</b>
-              The  default  rights  used by the <a href="local.8.html">local(8)</a> delivery
+              The default rights used by  the  <a href="local.8.html">local(8)</a>  delivery
               agent for delivery to external file or command.
 
        <b><a href="postconf.5.html#forward_expansion_filter">forward_expansion_filter</a> (see 'postconf -d' output)</b>
-              Restrict the characters that the <a href="local.8.html">local(8)</a>  delivery
-              agent  allows in $name expansions of $<a href="postconf.5.html#forward_path">forward_path</a>.
+              Restrict  the characters that the <a href="local.8.html">local(8)</a> delivery
+              agent allows in $name expansions of  $<a href="postconf.5.html#forward_path">forward_path</a>.
 
 <b>MISCELLANEOUS CONTROLS</b>
        <b><a href="postconf.5.html#config_directory">config_directory</a> (see 'postconf -d' output)</b>
-              The default location of  the  Postfix  main.cf  and
+              The  default  location  of  the Postfix main.cf and
               master.cf configuration files.
 
        <b><a href="postconf.5.html#daemon_timeout">daemon_timeout</a> (18000s)</b>
-              How  much time a Postfix daemon process may take to
-              handle a request  before  it  is  terminated  by  a
+              How much time a Postfix daemon process may take  to
+              handle  a  request  before  it  is  terminated by a
               built-in watchdog timer.
 
        <b><a href="postconf.5.html#export_environment">export_environment</a> (see 'postconf -d' output)</b>
-              The  list  of  environment variables that a Postfix
+              The list of environment variables  that  a  Postfix
               process will export to non-Postfix processes.
 
        <b><a href="postconf.5.html#ipc_timeout">ipc_timeout</a> (3600s)</b>
@@ -425,37 +432,37 @@ LOCAL(8)                                                 LOCAL(8)
               over an internal communication channel.
 
        <b><a href="postconf.5.html#local_command_shell">local_command_shell</a> (empty)</b>
-              Optional  shell  program  for  <a href="local.8.html">local(8)</a> delivery to
+              Optional shell program  for  <a href="local.8.html">local(8)</a>  delivery  to
               non-Postfix command.
 
        <b><a href="postconf.5.html#max_idle">max_idle</a> (100s)</b>
-              The maximum amount of time  that  an  idle  Postfix
-              daemon  process  waits for the next service request
+              The  maximum  amount  of  time that an idle Postfix
+              daemon process waits for the next  service  request
               before exiting.
 
        <b><a href="postconf.5.html#max_use">max_use</a> (100)</b>
-              The maximal number of connection requests before  a
+              The  maximal number of connection requests before a
               Postfix daemon process terminates.
 
        <b><a href="postconf.5.html#prepend_delivered_header">prepend_delivered_header</a> (command, file, forward)</b>
-              The  message  delivery  contexts  where the Postfix
-              <a href="local.8.html">local(8)</a> delivery agent  prepends  a  Delivered-To:
+              The message delivery  contexts  where  the  Postfix
+              <a href="local.8.html">local(8)</a>  delivery  agent  prepends a Delivered-To:
               message header.
 
        <b><a href="postconf.5.html#process_id">process_id</a> (read-only)</b>
-              The  process ID of a Postfix command or daemon pro-
+              The process ID of a Postfix command or daemon  pro-
               cess.
 
        <b><a href="postconf.5.html#process_name">process_name</a> (read-only)</b>
-              The process name of a  Postfix  command  or  daemon
+              The  process  name  of  a Postfix command or daemon
               process.
 
        <b><a href="postconf.5.html#propagate_unmatched_extensions">propagate_unmatched_extensions</a> (canonical, virtual)</b>
-              What  address  lookup tables copy an address exten-
+              What address lookup tables copy an  address  exten-
               sion from the lookup key to the lookup result.
 
        <b><a href="postconf.5.html#queue_directory">queue_directory</a> (see 'postconf -d' output)</b>
-              The location of the Postfix top-level queue  direc-
+              The  location of the Postfix top-level queue direc-
               tory.
 
        <b><a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a> (empty)</b>
@@ -463,14 +470,14 @@ LOCAL(8)                                                 LOCAL(8)
               sions (user+foo).
 
        <b><a href="postconf.5.html#require_home_directory">require_home_directory</a> (no)</b>
-              Whether or not a <a href="local.8.html">local(8)</a> recipient's  home  direc-
-              tory  must exist before mail delivery is attempted.
+              Whether  or  not a <a href="local.8.html">local(8)</a> recipient's home direc-
+              tory must exist before mail delivery is  attempted.
 
        <b><a href="postconf.5.html#syslog_facility">syslog_facility</a> (mail)</b>
               The syslog facility of Postfix logging.
 
        <b><a href="postconf.5.html#syslog_name">syslog_name</a> (postfix)</b>
-              The mail system name that is prepended to the  pro-
+              The  mail system name that is prepended to the pro-
               cess  name  in  syslog  records,  so  that  "smtpd"
               becomes, for example, "postfix/smtpd".
 
@@ -490,14 +497,14 @@ LOCAL(8)                                                 LOCAL(8)
        syslogd(8), system logging
 
 <b>LICENSE</b>
-       The Secure Mailer license must be  distributed  with  this
+       The  Secure  Mailer  license must be distributed with this
        software.
 
 <b>HISTORY</b>
        The <b>Delivered-To:</b> message header appears in the <b>qmail</b> sys-
        tem by Daniel Bernstein.
 
-       The <i>maildir</i> structure  appears  in  the  <b>qmail</b>  system  by
+       The  <i>maildir</i>  structure  appears  in  the  <b>qmail</b> system by
        Daniel Bernstein.
 
 <b>AUTHOR(S)</b>
index ad7e6ac17d38bbe97e325da54bcfb3ef4c81fb27..7688047f42f8e20f78eaf4d9c04a59c1320ed821 100644 (file)
@@ -43,8 +43,8 @@ PICKUP(8)                                               PICKUP(8)
        unfiltered user data.
 
 <b>CONFIGURATION PARAMETERS</b>
-       As the pickup daemon is a relatively long-running process,
-       up  to  an  hour  may  pass  before a <b>main.cf</b> change takes
+       As the <a href="pickup.8.html">pickup(8)</a> daemon is a relatively long-running  pro-
+       cess, up to an hour may pass before a <b>main.cf</b> change takes
        effect.  Use the command "<b>postfix reload</b>" command to speed
        up a change.
 
index b3daa811992f5135fdca02984d918222abce4dd4..fa7adaa4b1144e43e4c64a0086794900095c9076 100644 (file)
@@ -733,6 +733,7 @@ below it),  "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patt
 pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table
 is matched when a table entry matches a lookup string (the lookup
 result is ignored).  Continue long lines by starting the next line
+with whitespace. </p>
 
 
 </DD>
@@ -1546,7 +1547,7 @@ This feature is available in Postfix 2.0 and later.
 The names of message delivery transports that should not be delivered
 to unless someone issues "<b>sendmail -q</b>" or equivalent. Specify zero
 or more names of mail delivery transports names that appear in the
-first field of master.cf).
+first field of master.cf.
 </p>
 
 <p>
@@ -3772,7 +3773,7 @@ configuration parameter. </p>
 (default: $<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD>
 
 <p>
-The <a href="ADDRESS_CLASS_README.html#default_domain_class">default domain</a> name that locally-posted mail appears to come
+The domain name that locally-posted mail appears to come
 from, and that locally posted mail is delivered to. The default,
 $<a href="postconf.5.html#myhostname">myhostname</a>, is adequate for small sites.  If you run a domain with
 multiple machines, you should (1) change this to $<a href="postconf.5.html#mydomain">mydomain</a> and (2)
@@ -3852,7 +3853,7 @@ The error classes are:
 <dd>Send the postmaster copies of the headers of bounced mail, and
 send transcripts of SMTP sessions when Postfix rejects mail. The
 notification is sent to the address specified with the
-<a href="postconf.5.html#bounce_notice_recipient">bounce_notice_recipient</a> configuration parameter (default: postmaster)
+<a href="postconf.5.html#bounce_notice_recipient">bounce_notice_recipient</a> configuration parameter (default: postmaster).
 </dd>
 
 <dt><b>2bounce</b></dt>
@@ -4582,13 +4583,6 @@ recipient addresses with $<a href="postconf.5.html#relay_recipient_maps">relay_r
 recipients. See also the <a href="ADDRESS_CLASS_README.html#relay_domain_class">relay domains</a> address class in the
 <a href="ADDRESS_CLASS_README.html">ADDRESS_CLASS_README</a> file.  </p>
 
-<p> The list of domains that are by default delivered via the
-$<a href="postconf.5.html#local_transport">local_transport</a> mail delivery transport. By default this is the
-Postfix <a href="local.8.html">local(8)</a> delivery agent which looks up all recipients in
-/etc/passwd and /etc/aliases. The SMTP server validates recipient
-addresses with $<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a>. See also the <a href="ADDRESS_CLASS_README.html#local_domain_class">local domain</a>
-address class in the <a href="ADDRESS_CLASS_README.html">ADDRESS_CLASS_README</a> file.  </p>
-
 <p> NOTE: Postfix will not automatically forward mail for domains
 that list this system as their primary or backup MX host. See the
 <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> restriction in the <a href="postconf.5.html">postconf(5)</a> manual page.  </p>
@@ -5245,7 +5239,7 @@ This feature is available in Postfix 2.1 and later.
 
 <p>
 The maximal length of message header and body lines that Postfix
-will send via SMTP.  Longer lines are longer are broken by inserting
+will send via SMTP.  Longer lines are broken by inserting
 "&lt;CR&gt;&lt;LF&gt;&lt;SPACE&gt;". This minimizes the damage to
 MIME formatted mail.
 </p>
@@ -5765,7 +5759,7 @@ restrictions.
 <p>
 By default, clients in trusted networks are excluded. Specify a
 list of network blocks, hostnames or .domain names (the initial
-initial dot causes the domain to match any name below it).
+dot causes the domain to match any name below it).
 </p>
 
 <p>
@@ -6407,7 +6401,7 @@ supposed to give the result to another Postfix SMTP server process.
 </p>
 
 <p> Specify host:port. The host can be specified as an IP address
-or was a symbolic name; no MX lookups are done. When no host or
+or as a symbolic name; no MX lookups are done. When no host or
 host:  are specified, the local machine is assumed.  </p>
 
 <p> This feature is available in Postfix 2.1 and later.  </p>
@@ -6606,8 +6600,7 @@ address. <br> The <a href="postconf.5.html#unknown_address_reject_code">unknown_
 the response code for rejected requests (default: 450).  The response
 is always 450 in case of a temporary DNS error.</dd>
 
-<dt><b><a name="reject_unlisted_recipient">reject_unlisted_recipient</a></b>
-(Postfix 2.0 name: check_recipient_maps)</dt>
+<dt><b><a name="reject_unlisted_recipient">reject_unlisted_recipient</a></b> (Postfix 2.0 name: check_recipient_maps)</dt>
 
 <dd> Reject the request when the RCPT TO address is not listed in
 the list of valid recipients for its domain class. See the
index 4c29654f37512f288d663b2e189de1fb868d4ff4..6d5afdc931b989d4807f0e35c586c4bfc6a8f032 100644 (file)
@@ -44,7 +44,7 @@ PROXYMAP(8)                                           PROXYMAP(8)
               Open the table with type <i>maptype</i> and name  <i>mapname</i>,
               as controlled by <i>flags</i>. The reply includes the <i>map-</i>
               <i>type</i> dependent flags (to distinguish a fixed string
-              table from regular a expression table).
+              table from a regular expression table).
 
        <b>lookup</b> <i>maptype:mapname flags key</i>
               Look  up  the  data stored under the requested key.
index 39af6a58e5949cebec2720b46d861e3f96f55021..fe9050aa7c657ad3501ad0c0e04ef32a6bced74a 100644 (file)
@@ -63,8 +63,8 @@ QMGR(8)                                                   QMGR(8)
               <a href="defer.8.html"><b>defer</b>(8)</a> daemon.
 
        <b>trace</b>  Per-recipient status information as requested  with
-              the  Postfix  "<b>sendmail  -v</b>" or "<b>sendmail -bv" com-</b>
-              <b>mand</b>.  These files are maintained by  the  <a href="trace.8.html"><b>trace</b>(8)</a>
+              the  Postfix  "<b>sendmail  -v</b>" or "<b>sendmail -bv</b>" com-
+              mand.  These files are maintained by  the  <a href="trace.8.html"><b>trace</b>(8)</a>
               daemon.
 
        The  <b>qmgr</b>  daemon is responsible for asking the <a href="bounce.8.html"><b>bounce</b>(8)</a>,
@@ -365,7 +365,7 @@ QMGR(8)                                                   QMGR(8)
 <b>SEE ALSO</b>
        <a href="trivial-rewrite.8.html">trivial-rewrite(8)</a>, address routing
        <a href="bounce.8.html">bounce(8)</a>, delivery status reports
-       <a href="postconf.5.html">postconf(5)</a> configuration parameters
+       <a href="postconf.5.html">postconf(5)</a>, configuration parameters
        <a href="master.8.html">master(8)</a>, process manager
        syslogd(8) system logging
 
index 506a503b9d5da423d537d2b656aa78cc174b8b70..398cf155356c9491ae113e9d347088442e1172dd 100644 (file)
@@ -12,7 +12,7 @@ QSHAPE(1)                                               QSHAPE(1)
 <b>SYNOPSIS</b>
        <b>qshape</b> [<b>-s</b>] [<b>-p</b>] [<b>-m</b> <i>min</i><b>_</b><i>subdomains</i>]
                [<b>-b</b> <i>bucket</i><b>_</b><i>count</i>] [<b>-t</b> <i>bucket</i><b>_</b><i>time</i>]
-               [<b>-w</b> <i>terminal</i><b>_</b><i>width</i>]
+               [<b>-l</b>] [<b>-w</b> <i>terminal</i><b>_</b><i>width</i>]
                [<b>-c</b> <i>config</i><b>_</b><i>directory</i>] [<i>queue</i><b>_</b><i>name</i> ...]
 
 <b>DESCRIPTION</b>
@@ -51,46 +51,52 @@ QSHAPE(1)                                               QSHAPE(1)
               large  as  that  of  the  previous bucket. The last
               bucket has no age limit.
 
-       <b>-b</b> <i>bucket</i><b>_</b><i>time</i>
+       <b>-t</b> <i>bucket</i><b>_</b><i>time</i>
               The age limit in minutes for the first time bucket.
               The  default  value  is  5,  meaning that the first
               bucket counts messages between 0 and 5 minutes old.
 
+       <b>-l</b>     Instead  of  using  a geometric age sequence, use a
+              linear age sequence, in other words  simple  multi-
+              ples of <b>bucket_time</b>.
+
+              This feature is available in Postfix 2.2 and later.
+
        <b>-w</b> <i>terminal</i><b>_</b><i>width</i>
-              The  output is right justified, with the counts for
-              the last bucket shown on the 80th column, the  <i>ter-</i>
+              The output is right justified, with the counts  for
+              the  last bucket shown on the 80th column, the <i>ter-</i>
               <i>minal</i><b>_</b><i>width</i>  can  be  adjusted  for  wider  screens
               allowing more buckets to be displayed with truncat-
-              ing  the domain names on the left. When a row for a
-              full domain name and its counters does not  fit  in
-              the  specified  number of columns, only the last 17
-              bytes of the domain name are shown with the  prefix
+              ing the domain names on the left. When a row for  a
+              full  domain  name and its counters does not fit in
+              the specified number of columns, only the  last  17
+              bytes  of the domain name are shown with the prefix
               replaced  by  a  '+'  character.  Truncated  parent
-              domain rows are shown as '.+' followed by the  last
-              16  bytes  of the domain name. If this is still too
-              narrow to show the domain name and  all  the  coun-
+              domain  rows are shown as '.+' followed by the last
+              16 bytes of the domain name. If this is  still  too
+              narrow  to  show  the domain name and all the coun-
               ters, the terminal_width limit is violated.
 
        <b>-c</b> <i>config</i><b>_</b><i>directory</i>
-              The  <b>main.cf</b>  configuration  file  is  in the named
+              The <b>main.cf</b> configuration  file  is  in  the  named
               directory  instead  of  the  default  configuration
               directory.
 
        Arguments:
 
        <i>queue</i><b>_</b><i>name</i>
-              By  default  <b>qshape</b> displays the combined distribu-
-              tion of the <a href="QSHAPE_README.html#incoming_queue">incoming</a> and <a href="QSHAPE_README.html#active_queue">active queues</a>. To  display
-              a  different  set of queues, just list their direc-
+              By default <b>qshape</b> displays the  combined  distribu-
+              tion  of the <a href="QSHAPE_README.html#incoming_queue">incoming</a> and <a href="QSHAPE_README.html#active_queue">active queues</a>. To display
+              a different set of queues, just list  their  direc-
               tory names on the command line.  Absolute paths are
-              used  as  is, other paths are taken relative to the
-              <i>main.cf</i> <b><a href="postconf.5.html#queue_directory">queue_directory</a></b> parameter  setting.   While
-              <i>main.cf</i>  supports the use of <i>$variable</i> expansion in
-              the definition of  the  <b><a href="postconf.5.html#queue_directory">queue_directory</a></b>  parameter,
-              the  <b>qshape</b> program does not. If you must use vari-
+              used as is, other paths are taken relative  to  the
+              <i>main.cf</i>  <b><a href="postconf.5.html#queue_directory">queue_directory</a></b>  parameter setting.  While
+              <i>main.cf</i> supports the use of <i>$variable</i> expansion  in
+              the  definition  of  the <b><a href="postconf.5.html#queue_directory">queue_directory</a></b> parameter,
+              the <b>qshape</b> program does not. If you must use  vari-
               able expansions in the <b><a href="postconf.5.html#queue_directory">queue_directory</a></b> setting, you
-              must  specify  an  explicit  absolute path for each
-              queue subdirectory even if  you  want  the  default
+              must specify an explicit  absolute  path  for  each
+              queue  subdirectory  even  if  you want the default
               <a href="QSHAPE_README.html#incoming_queue">incoming</a> and <a href="QSHAPE_README.html#active_queue">active queue</a> distribution.
 
 <b>SEE ALSO</b>
@@ -106,7 +112,7 @@ QSHAPE(1)                                               QSHAPE(1)
        $<a href="postconf.5.html#queue_directory">queue_directory</a>/deferred/, messages postponed for later delivery.
 
 <b>LICENSE</b>
-       The  Secure  Mailer  license must be distributed with this
+       The Secure Mailer license must be  distributed  with  this
        software.
 
 <b>AUTHOR(S)</b>
index 62f670c2719b8fd9ee02eb7773d665a290b7d89a..735d09388b759148c3506b36f1cba7985d303d98 100644 (file)
@@ -325,10 +325,10 @@ SMTPD(8)                                                 SMTPD(8)
        alias domains:
 
        <b><a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a> ($<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>)</b>
-              Optional list of names of  virtual  alias  domains,
-              that  is,  domains  for  which  all  addresses  are
-              aliased to  addresses  in  other  local  or  remote
-              domains.
+              Postfix is final destination for the specified list
+              of  virtual  alias  domains,  that  is, domains for
+              which all addresses are  aliased  to  addresses  in
+              other local or remote domains.
 
        <b><a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> ($<a href="postconf.5.html#virtual_maps">virtual_maps</a>)</b>
               Optional  lookup  tables  that  alias specific mail
@@ -345,114 +345,111 @@ SMTPD(8)                                                 SMTPD(8)
        mailbox domains:
 
        <b><a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a> ($<a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a>)</b>
-              The  list  of  domains  that  are delivered via the
-              $<a href="postconf.5.html#virtual_transport">virtual_transport</a> mail delivery transport.
+              Postfix is final destination for the specified list
+              of  domains;  mail  is  delivered  via  the   $<a href="postconf.5.html#virtual_transport">vir</a>-
+              <a href="postconf.5.html#virtual_transport">tual_transport</a> mail delivery transport.
 
        <b><a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a> (empty)</b>
-              Optional lookup tables with all valid addresses  in
+              Optional  lookup tables with all valid addresses in
               the domains that match $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>.
 
        <b><a href="postconf.5.html#unknown_virtual_mailbox_reject_code">unknown_virtual_mailbox_reject_code</a> (550)</b>
               The SMTP server reply code when a recipient address
-              matches   $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>,    and    $<a href="postconf.5.html#virtual_mailbox_maps">vir</a>-
+              matches    $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>,    and   $<a href="postconf.5.html#virtual_mailbox_maps">vir</a>-
               <a href="postconf.5.html#virtual_mailbox_maps">tual_mailbox_maps</a> specifies a list of lookup tables
               that does not match the recipient address.
 
 <b>RESOURCE AND RATE CONTROLS</b>
-       The following parameters limit resource usage by the  SMTP
+       The  following parameters limit resource usage by the SMTP
        server and/or control client request rates.
 
        <b><a href="postconf.5.html#line_length_limit">line_length_limit</a> (2048)</b>
-              Upon  input,  long lines are chopped up into pieces
-              of at most this length; upon delivery,  long  lines
+              Upon input, long lines are chopped up  into  pieces
+              of  at  most this length; upon delivery, long lines
               are reconstructed.
 
        <b><a href="postconf.5.html#queue_minfree">queue_minfree</a> (0)</b>
-              The  minimal  amount  of free space in bytes in the
+              The minimal amount of free space in  bytes  in  the
               queue file system that is needed to receive mail.
 
        <b><a href="postconf.5.html#message_size_limit">message_size_limit</a> (10240000)</b>
-              The maximal size in bytes of a  message,  including
+              The  maximal  size in bytes of a message, including
               envelope information.
 
        <b><a href="postconf.5.html#smtpd_recipient_limit">smtpd_recipient_limit</a> (1000)</b>
-              The  maximal  number of recipients that the Postfix
+              The maximal number of recipients that  the  Postfix
               SMTP server accepts per message delivery request.
 
        <b><a href="postconf.5.html#smtpd_timeout">smtpd_timeout</a> (300s)</b>
-              The time limit for sending a  Postfix  SMTP  server
-              response  and  for  receiving  a remote SMTP client
+              The  time  limit  for sending a Postfix SMTP server
+              response and for receiving  a  remote  SMTP  client
               request.
 
        <b><a href="postconf.5.html#smtpd_history_flush_threshold">smtpd_history_flush_threshold</a> (100)</b>
-              The maximal number of lines  in  the  Postfix  SMTP
-              server  command  history  before it is flushed upon
+              The  maximal  number  of  lines in the Postfix SMTP
+              server command history before it  is  flushed  upon
               receipt of EHLO, RSET, or end of DATA.
 
        Not available in Postfix version 2.1:
 
        <b><a href="postconf.5.html#smtpd_client_connection_count_limit">smtpd_client_connection_count_limit</a> (50)</b>
-              How many simultaneous connections any  SMTP  client
+              How  many  simultaneous connections any SMTP client
               is allowed to make to the SMTP service.
 
        <b><a href="postconf.5.html#smtpd_client_connection_rate_limit">smtpd_client_connection_rate_limit</a> (0)</b>
               The  maximal  number  of  connection  attempts  any
-              client is allowed to make to this service per  time
+              client  is allowed to make to this service per time
               unit.
 
        <b><a href="postconf.5.html#smtpd_client_connection_limit_exceptions">smtpd_client_connection_limit_exceptions</a> ($<a href="postconf.5.html#mynetworks">mynetworks</a>)</b>
-              Clients  that are excluded from connection count or
+              Clients that are excluded from connection count  or
               connection rate restrictions.
 
 <b>TARPIT CONTROLS</b>
-       When a remote SMTP client makes errors, the  Postfix  SMTP
-       server  can insert delays before responding. This can help
-       to slow down run-away  software.   The  behavior  is  con-
-       trolled  by  an  error  counter  that counts the number of
-       errors within an SMTP session that a client makes  without
+       When  a  remote SMTP client makes errors, the Postfix SMTP
+       server can insert delays before responding. This can  help
+       to  slow  down  run-away  software.   The behavior is con-
+       trolled by an error counter  that  counts  the  number  of
+       errors  within an SMTP session that a client makes without
        delivering mail.
 
        <b><a href="postconf.5.html#smtpd_error_sleep_time">smtpd_error_sleep_time</a> (1s)</b>
-              With   Postfix  2.1  and  later:  the  SMTP  server
-              response delay after a client has  made  more  than
-              $<a href="postconf.5.html#smtpd_soft_error_limit">smtpd_soft_error_limit</a>   errors,  and  fewer  than
-              $<a href="postconf.5.html#smtpd_hard_error_limit">smtpd_hard_error_limit</a> errors, without  delivering
+              With  Postfix  2.1  and  later:  the  SMTP   server
+              response  delay  after  a client has made more than
+              $<a href="postconf.5.html#smtpd_soft_error_limit">smtpd_soft_error_limit</a>  errors,  and  fewer   than
+              $<a href="postconf.5.html#smtpd_hard_error_limit">smtpd_hard_error_limit</a>  errors, without delivering
               mail.
 
        <b><a href="postconf.5.html#smtpd_soft_error_limit">smtpd_soft_error_limit</a> (10)</b>
-              The  number  of  errors  a  remote  SMTP  client is
-              allowed to make without delivering mail before  the
+              The number  of  errors  a  remote  SMTP  client  is
+              allowed  to make without delivering mail before the
               Postfix SMTP server slows down all its responses.
 
        <b><a href="postconf.5.html#smtpd_hard_error_limit">smtpd_hard_error_limit</a> (20)</b>
-              The  maximal  number of errors a remote SMTP client
+              The maximal number of errors a remote  SMTP  client
               is allowed to make without delivering mail.
 
        <b><a href="postconf.5.html#smtpd_junk_command_limit">smtpd_junk_command_limit</a> (100)</b>
-              The number of junk commands (NOOP,  VRFY,  ETRN  or
+              The  number  of  junk commands (NOOP, VRFY, ETRN or
               RSET) that a remote SMTP client can send before the
-              Postfix SMTP server starts to increment  the  error
+              Postfix  SMTP  server starts to increment the error
               counter with each junk command.
 
        Available in Postfix version 2.1 and later:
 
        <b><a href="postconf.5.html#smtpd_recipient_overshoot_limit">smtpd_recipient_overshoot_limit</a> (1000)</b>
-              The  number of recipients that a remote SMTP client
-              can send in excess  of  the  limit  specified  with
+              The number of recipients that a remote SMTP  client
+              can  send  in  excess  of  the limit specified with
               $<a href="postconf.5.html#smtpd_recipient_limit">smtpd_recipient_limit</a>,  before  the  Postfix  SMTP
-              server increments the per-session error  count  for
+              server  increments  the per-session error count for
               each excess recipient.
 
 <b>ACCESS POLICY DELEGATION CONTROLS</b>
-       As  of  version 2.1, Postfix can be configured to delegate
-       access policy decisions to an external  server  that  runs
-       outside  Postfix.   See  the  file <a href="SMTPD_POLICY_README.html">SMTPD_POLICY_README</a> for
+       As of version 2.1, Postfix can be configured  to  delegate
+       access  policy  decisions  to an external server that runs
+       outside Postfix.  See  the  file  <a href="SMTPD_POLICY_README.html">SMTPD_POLICY_README</a>  for
        more information.
 
-       <b><a href="postconf.5.html#smtpd_policy_service_timeout">smtpd_policy_service_timeout</a> (100s)</b>
-              The time limit for connecting  to,  writing  to  or
-              receiving from a delegated SMTPD policy server.
-
        <b><a href="postconf.5.html#smtpd_policy_service_max_idle">smtpd_policy_service_max_idle</a> (300s)</b>
               The  time  after which an idle SMTPD policy service
               connection is closed.
@@ -554,61 +551,62 @@ SMTPD(8)                                                 SMTPD(8)
               tion is specified.
 
 <b>SENDER AND RECIPIENT ADDRESS VERIFICATION CONTROLS</b>
-       Postfix  version 2.1 introduces sender and address verifi-
-       cation.  This feature  is  implemented  by  sending  probe
-       email messages that are not actually delivered.  This fea-
-       ture is requested  via  the  <a href="postconf.5.html#reject_unverified_sender">reject_unverified_sender</a>  and
-       <a href="postconf.5.html#reject_unverified_recipient">reject_unverified_recipient</a> access restrictions.  The sta-
-       tus of verification probes is maintained by the  <a href="verify.8.html">verify(8)</a>
-       server.   See  the  file  <a href="ADDRESS_VERIFICATION_README.html">ADDRESS_VERIFICATION_README</a>  for
-       information about how to configure and operate the Postfix
-       sender/recipient address verification service.
+       Postfix   version  2.1  introduces  sender  and  recipient
+       address verification.   This  feature  is  implemented  by
+       sending  probe email messages that are not actually deliv-
+       ered.  This feature is requested  via  the  <a href="postconf.5.html#reject_unverified_sender">reject_unveri</a>-
+       <a href="postconf.5.html#reject_unverified_sender">fied_sender</a>    and    <a href="postconf.5.html#reject_unverified_recipient">reject_unverified_recipient</a>   access
+       restrictions.  The status of verification probes is  main-
+       tained by the <a href="verify.8.html">verify(8)</a> server.  See the file ADDRESS_VER-
+       <a href="IFICATION_README.html">IFICATION_README</a> for information about  how  to  configure
+       and operate the Postfix sender/recipient address verifica-
+       tion service.
 
        <b><a href="postconf.5.html#address_verify_poll_count">address_verify_poll_count</a> (3)</b>
-              How  many  times to query the <a href="verify.8.html">verify(8)</a> service for
-              the completion of an address  verification  request
+              How many times to query the <a href="verify.8.html">verify(8)</a>  service  for
+              the  completion  of an address verification request
               in progress.
 
        <b><a href="postconf.5.html#address_verify_poll_delay">address_verify_poll_delay</a> (3s)</b>
-              The  delay between queries for the completion of an
+              The delay between queries for the completion of  an
               address verification request in progress.
 
        <b><a href="postconf.5.html#address_verify_sender">address_verify_sender</a> (postmaster)</b>
-              The sender address to use in  address  verification
+              The  sender  address to use in address verification
               probes.
 
        <b><a href="postconf.5.html#unverified_sender_reject_code">unverified_sender_reject_code</a> (450)</b>
-              The  numerical  Postfix  SMTP  server response code
-              when  a  recipient  address  is  rejected  by   the
+              The numerical Postfix  SMTP  server  response  code
+              when   a  recipient  address  is  rejected  by  the
               <a href="postconf.5.html#reject_unverified_sender">reject_unverified_sender</a> restriction.
 
        <b><a href="postconf.5.html#unverified_recipient_reject_code">unverified_recipient_reject_code</a> (450)</b>
-              The  numerical  Postfix SMTP server response when a
+              The numerical Postfix SMTP server response  when  a
               recipient address is rejected by the <a href="postconf.5.html#reject_unverified_recipient">reject_unveri</a>-
               <a href="postconf.5.html#reject_unverified_recipient">fied_recipient</a> restriction.
 
 <b>ACCESS CONTROL RESPONSES</b>
-       The  following  parameters  control  numerical  SMTP reply
+       The following  parameters  control  numerical  SMTP  reply
        codes and/or text responses.
 
        <b><a href="postconf.5.html#access_map_reject_code">access_map_reject_code</a> (554)</b>
-              The numerical Postfix  SMTP  server  response  code
-              when  a  client  is  rejected  by  an <a href="access.5.html">access(5)</a> map
+              The  numerical  Postfix  SMTP  server response code
+              when a client  is  rejected  by  an  <a href="access.5.html">access(5)</a>  map
               restriction.
 
        <b><a href="postconf.5.html#defer_code">defer_code</a> (450)</b>
-              The numerical Postfix  SMTP  server  response  code
-              when  a  remote  SMTP client request is rejected by
+              The  numerical  Postfix  SMTP  server response code
+              when a remote SMTP client request  is  rejected  by
               the "defer" restriction.
 
        <b><a href="postconf.5.html#invalid_hostname_reject_code">invalid_hostname_reject_code</a> (501)</b>
-              The numerical Postfix  SMTP  server  response  code
-              when  the  client HELO or EHLO command parameter is
-              rejected by  the  <a href="postconf.5.html#reject_invalid_hostname">reject_invalid_hostname</a>  restric-
+              The  numerical  Postfix  SMTP  server response code
+              when the client HELO or EHLO command  parameter  is
+              rejected  by  the  <a href="postconf.5.html#reject_invalid_hostname">reject_invalid_hostname</a> restric-
               tion.
 
        <b><a href="postconf.5.html#maps_rbl_reject_code">maps_rbl_reject_code</a> (554)</b>
-              The  numerical  Postfix  SMTP  server response code
+              The numerical Postfix  SMTP  server  response  code
               when a remote SMTP client request is blocked by the
               <a href="postconf.5.html#reject_rbl_client">reject_rbl_client</a>,             <a href="postconf.5.html#reject_rhsbl_client">reject_rhsbl_client</a>,
               <a href="postconf.5.html#reject_rhsbl_sender">reject_rhsbl_sender</a>    or    <a href="postconf.5.html#reject_rhsbl_recipient">reject_rhsbl_recipient</a>
@@ -616,47 +614,47 @@ SMTPD(8)                                                 SMTPD(8)
 
        <b><a href="postconf.5.html#non_fqdn_reject_code">non_fqdn_reject_code</a> (504)</b>
               The numerical Postfix SMTP server reply code when a
-              client    request    is     rejected     by     the
+              client     request     is     rejected    by    the
               <a href="postconf.5.html#reject_non_fqdn_hostname">reject_non_fqdn_hostname</a>, <a href="postconf.5.html#reject_non_fqdn_sender">reject_non_fqdn_sender</a> or
               <a href="postconf.5.html#reject_non_fqdn_recipient">reject_non_fqdn_recipient</a> restriction.
 
        <b><a href="postconf.5.html#reject_code">reject_code</a> (554)</b>
-              The numerical Postfix  SMTP  server  response  code
-              when  a  remote  SMTP client request is rejected by
+              The  numerical  Postfix  SMTP  server response code
+              when a remote SMTP client request  is  rejected  by
               the "<b>reject</b>" restriction.
 
        <b><a href="postconf.5.html#relay_domains_reject_code">relay_domains_reject_code</a> (554)</b>
-              The numerical Postfix  SMTP  server  response  code
-              when   a   client   request   is  rejected  by  the
+              The  numerical  Postfix  SMTP  server response code
+              when  a  client  request   is   rejected   by   the
               <a href="postconf.5.html#reject_unauth_destination">reject_unauth_destination</a> recipient restriction.
 
        <b><a href="postconf.5.html#unknown_address_reject_code">unknown_address_reject_code</a> (450)</b>
-              The numerical Postfix  SMTP  server  response  code
-              when  a  sender or recipient address is rejected by
+              The  numerical  Postfix  SMTP  server response code
+              when a sender or recipient address is  rejected  by
               the         <a href="postconf.5.html#reject_unknown_sender_domain">reject_unknown_sender_domain</a>         or
               <a href="postconf.5.html#reject_unknown_recipient_domain">reject_unknown_recipient_domain</a> restriction.
 
        <b><a href="postconf.5.html#unknown_client_reject_code">unknown_client_reject_code</a> (450)</b>
-              The  numerical  Postfix  SMTP  server response code
-              when a client without valid address &lt;=&gt;  name  map-
-              ping   is  rejected  by  the  <a href="postconf.5.html#reject_unknown_client">reject_unknown_client</a>
+              The numerical Postfix  SMTP  server  response  code
+              when  a  client without valid address &lt;=&gt; name map-
+              ping  is  rejected  by  the   <a href="postconf.5.html#reject_unknown_client">reject_unknown_client</a>
               restriction.
 
        <b><a href="postconf.5.html#unknown_hostname_reject_code">unknown_hostname_reject_code</a> (450)</b>
-              The numerical Postfix  SMTP  server  response  code
-              when  the  hostname specified with the HELO or EHLO
-              command is rejected by the  <a href="postconf.5.html#reject_unknown_hostname">reject_unknown_hostname</a>
+              The  numerical  Postfix  SMTP  server response code
+              when the hostname specified with the HELO  or  EHLO
+              command  is rejected by the <a href="postconf.5.html#reject_unknown_hostname">reject_unknown_hostname</a>
               restriction.
 
        Available in Postfix version 2.0 and later:
 
        <b><a href="postconf.5.html#default_rbl_reply">default_rbl_reply</a> (see 'postconf -d' output)</b>
-              The  default  SMTP  server  response template for a
-              request that is rejected by an  RBL-based  restric-
+              The default SMTP server  response  template  for  a
+              request  that  is rejected by an RBL-based restric-
               tion.
 
        <b><a href="postconf.5.html#multi_recipient_bounce_reject_code">multi_recipient_bounce_reject_code</a> (550)</b>
-              The  numerical  Postfix  SMTP  server response code
+              The numerical Postfix  SMTP  server  response  code
               when a remote SMTP client request is blocked by the
               <a href="postconf.5.html#reject_multi_recipient_bounce">reject_multi_recipient_bounce</a> restriction.
 
@@ -665,16 +663,16 @@ SMTPD(8)                                                 SMTPD(8)
 
 <b>MISCELLANEOUS CONTROLS</b>
        <b><a href="postconf.5.html#config_directory">config_directory</a> (see 'postconf -d' output)</b>
-              The default location of  the  Postfix  main.cf  and
+              The  default  location  of  the Postfix main.cf and
               master.cf configuration files.
 
        <b><a href="postconf.5.html#daemon_timeout">daemon_timeout</a> (18000s)</b>
-              How  much time a Postfix daemon process may take to
-              handle a request  before  it  is  terminated  by  a
+              How much time a Postfix daemon process may take  to
+              handle  a  request  before  it  is  terminated by a
               built-in watchdog timer.
 
        <b><a href="postconf.5.html#command_directory">command_directory</a> (see 'postconf -d' output)</b>
-              The  location  of  all  postfix administrative com-
+              The location of  all  postfix  administrative  com-
               mands.
 
        <b><a href="postconf.5.html#double_bounce_sender">double_bounce_sender</a> (double-bounce)</b>
@@ -695,36 +693,36 @@ SMTPD(8)                                                 SMTPD(8)
               and most Postfix daemon processes.
 
        <b><a href="postconf.5.html#max_idle">max_idle</a> (100s)</b>
-              The  maximum  amount  of  time that an idle Postfix
-              daemon process waits for the next  service  request
+              The maximum amount of time  that  an  idle  Postfix
+              daemon  process  waits for the next service request
               before exiting.
 
        <b><a href="postconf.5.html#max_use">max_use</a> (100)</b>
-              The  maximal number of connection requests before a
+              The maximal number of connection requests before  a
               Postfix daemon process terminates.
 
        <b><a href="postconf.5.html#myhostname">myhostname</a> (see 'postconf -d' output)</b>
               The internet hostname of this mail system.
 
        <b><a href="postconf.5.html#mynetworks">mynetworks</a> (see 'postconf -d' output)</b>
-              The list of "trusted" SMTP clients that  have  more
+              The  list  of "trusted" SMTP clients that have more
               privileges than "strangers".
 
        <b><a href="postconf.5.html#myorigin">myorigin</a> ($<a href="postconf.5.html#myhostname">myhostname</a>)</b>
-              The  default  domain  name that locally-posted mail
-              appears to come from, and that locally posted  mail
-              is delivered to.
+              The domain name that locally-posted mail appears to
+              come  from,  and that locally posted mail is deliv-
+              ered to.
 
        <b><a href="postconf.5.html#process_id">process_id</a> (read-only)</b>
-              The  process ID of a Postfix command or daemon pro-
+              The process ID of a Postfix command or daemon  pro-
               cess.
 
        <b><a href="postconf.5.html#process_name">process_name</a> (read-only)</b>
-              The process name of a  Postfix  command  or  daemon
+              The  process  name  of  a Postfix command or daemon
               process.
 
        <b><a href="postconf.5.html#queue_directory">queue_directory</a> (see 'postconf -d' output)</b>
-              The  location of the Postfix top-level queue direc-
+              The location of the Postfix top-level queue  direc-
               tory.
 
        <b><a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a> (empty)</b>
@@ -732,14 +730,14 @@ SMTPD(8)                                                 SMTPD(8)
               sions (user+foo).
 
        <b><a href="postconf.5.html#smtpd_banner">smtpd_banner</a> ($<a href="postconf.5.html#myhostname">myhostname</a> ESMTP $<a href="postconf.5.html#mail_name">mail_name</a>)</b>
-              The  text  that  follows the 220 status code in the
+              The text that follows the 220 status  code  in  the
               SMTP greeting banner.
 
        <b><a href="postconf.5.html#syslog_facility">syslog_facility</a> (mail)</b>
               The syslog facility of Postfix logging.
 
        <b><a href="postconf.5.html#syslog_name">syslog_name</a> (postfix)</b>
-              The mail system name that is prepended to the  pro-
+              The  mail system name that is prepended to the pro-
               cess  name  in  syslog  records,  so  that  "smtpd"
               becomes, for example, "postfix/smtpd".
 
@@ -764,7 +762,7 @@ SMTPD(8)                                                 SMTPD(8)
        <a href="XFORWARD_README.html">XFORWARD_README</a>, Postfix XFORWARD extension
 
 <b>LICENSE</b>
-       The  Secure  Mailer  license must be distributed with this
+       The Secure Mailer license must be  distributed  with  this
        software.
 
 <b>AUTHOR(S)</b>
index b1820ee7cb331f3ab7935a79357f07fecf95afce..77e203a9b0339c389dd68a6c277984d0fe7aada8 100644 (file)
@@ -66,7 +66,7 @@ SPAWN(8)                                                 SPAWN(8)
        data-driven attacks.
 
 <b>CONFIGURATION PARAMETERS</b>
-       Changes to <b>main.cf</b> are picked up automatically as <a href="smtpd.8.html">smtpd(8)</a>
+       Changes to <b>main.cf</b> are picked up automatically as <a href="spawn.8.html">spawn(8)</a>
        processes run for only a limited amount of time.  Use  the
        command "<b>postfix reload</b>" to speed up a change.
 
index f6e6ba824197c9c884d66ebcc613e4cddd6da552..8b24af669758feafdce823bb78d574e61b4340f8 100644 (file)
@@ -88,9 +88,9 @@ TRIVIAL-REWRITE(8)                             TRIVIAL-REWRITE(8)
 
 <b>ADDRESS REWRITING CONTROLS</b>
        <b><a href="postconf.5.html#myorigin">myorigin</a> ($<a href="postconf.5.html#myhostname">myhostname</a>)</b>
-              The  default  domain  name that locally-posted mail
-              appears to come from, and that locally posted  mail
-              is delivered to.
+              The domain name that locally-posted mail appears to
+              come from, and that locally posted mail  is  deliv-
+              ered to.
 
        <b><a href="postconf.5.html#allow_percent_hack">allow_percent_hack</a> (yes)</b>
               Enable  the  rewriting of the form "user%domain" to
@@ -156,13 +156,13 @@ TRIVIAL-REWRITE(8)                             TRIVIAL-REWRITE(8)
               destination).
 
 <b>ADDRESS VERIFICATION CONTROLS</b>
-       Postfix version 2.1 introduces sender and address  verifi-
-       cation.   This  feature  is  implemented  by sending probe
-       email  messages  that  are  not  actually  delivered.   By
-       default, address verification probes use the same route as
-       regular mail. To  override  specific  aspects  of  message
-       routing  for  address  verification probes, specify one or
-       more of the following:
+       Postfix  version  2.1  introduces  sender  and   recipient
+       address  verification.   This  feature  is  implemented by
+       sending probe email messages that are not actually  deliv-
+       ered.   By  default,  address  verification probes use the
+       same route as regular mail. To override  specific  aspects
+       of  message routing for address verification probes, spec-
+       ify one or more of the following:
 
        <b><a href="postconf.5.html#address_verify_local_transport">address_verify_local_transport</a> ($<a href="postconf.5.html#local_transport">local_transport</a>)</b>
               Overrides the <a href="postconf.5.html#local_transport">local_transport</a> parameter setting for
index 272a0cddf02b493cc106334ab078f9b0e2454c8b..8fb6cde3875c886fd45a94f21b9fb1d2eb839417 100644 (file)
@@ -177,17 +177,18 @@ VIRTUAL(8)                                             VIRTUAL(8)
        Available in Postfix version 2.0 and later:
 
        <b><a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a> ($<a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a>)</b>
-              The list of domains  that  are  delivered  via  the
-              $<a href="postconf.5.html#virtual_transport">virtual_transport</a> mail delivery transport.
+              Postfix is final destination for the specified list
+              of   domains;  mail  is  delivered  via  the  $<a href="postconf.5.html#virtual_transport">vir</a>-
+              <a href="postconf.5.html#virtual_transport">tual_transport</a> mail delivery transport.
 
        <b><a href="postconf.5.html#virtual_transport">virtual_transport</a> (virtual)</b>
-              The  default  mail  delivery  transport for domains
-              that match the  $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>  parameter
+              The default mail  delivery  transport  for  domains
+              that  match  the $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a> parameter
               value.
 
 <b>LOCKING CONTROLS</b>
        <b><a href="postconf.5.html#virtual_mailbox_lock">virtual_mailbox_lock</a> (see 'postconf -d' output)</b>
-              How  to lock a UNIX-style <a href="virtual.8.html">virtual(8)</a> mailbox before
+              How to lock a UNIX-style <a href="virtual.8.html">virtual(8)</a> mailbox  before
               attempting delivery.
 
        <b><a href="postconf.5.html#deliver_lock_attempts">deliver_lock_attempts</a> (20)</b>
@@ -195,37 +196,37 @@ VIRTUAL(8)                                             VIRTUAL(8)
               sive lock on a mailbox file or <a href="bounce.8.html">bounce(8)</a> logfile.
 
        <b><a href="postconf.5.html#deliver_lock_delay">deliver_lock_delay</a> (1s)</b>
-              The  time  between attempts to acquire an exclusive
+              The time between attempts to acquire  an  exclusive
               lock on a mailbox file or <a href="bounce.8.html">bounce(8)</a> logfile.
 
        <b><a href="postconf.5.html#stale_lock_time">stale_lock_time</a> (500s)</b>
-              The time after  which  a  stale  exclusive  mailbox
+              The  time  after  which  a  stale exclusive mailbox
               lockfile is removed.
 
 <b>RESOURCE AND RATE CONTROLS</b>
        <b><a href="postconf.5.html#virtual_destination_concurrency_limit">virtual_destination_concurrency_limit</a>   ($<a href="postconf.5.html#default_destination_concurrency_limit">default_destina</a>-</b>
        <b><a href="postconf.5.html#default_destination_concurrency_limit">tion_concurrency_limit</a>)</b>
-              The  maximal  number  of parallel deliveries to the
-              same destination via the virtual  message  delivery
+              The maximal number of parallel  deliveries  to  the
+              same  destination  via the virtual message delivery
               transport.
 
        <b><a href="postconf.5.html#virtual_destination_recipient_limit">virtual_destination_recipient_limit</a>     ($<a href="postconf.5.html#default_destination_recipient_limit">default_destina</a>-</b>
        <b><a href="postconf.5.html#default_destination_recipient_limit">tion_recipient_limit</a>)</b>
-              The  maximal  number of recipients per delivery via
+              The maximal number of recipients per  delivery  via
               the virtual message delivery transport.
 
        <b><a href="postconf.5.html#virtual_mailbox_limit">virtual_mailbox_limit</a> (51200000)</b>
-              The maximal size in bytes of an individual  mailbox
+              The  maximal size in bytes of an individual mailbox
               or maildir file, or zero (no limit).
 
 <b>MISCELLANEOUS CONTROLS</b>
        <b><a href="postconf.5.html#config_directory">config_directory</a> (see 'postconf -d' output)</b>
-              The  default  location  of  the Postfix main.cf and
+              The default location of  the  Postfix  main.cf  and
               master.cf configuration files.
 
        <b><a href="postconf.5.html#daemon_timeout">daemon_timeout</a> (18000s)</b>
-              How much time a Postfix daemon process may take  to
-              handle  a  request  before  it  is  terminated by a
+              How  much time a Postfix daemon process may take to
+              handle a request  before  it  is  terminated  by  a
               built-in watchdog timer.
 
        <b><a href="postconf.5.html#ipc_timeout">ipc_timeout</a> (3600s)</b>
@@ -233,31 +234,31 @@ VIRTUAL(8)                                             VIRTUAL(8)
               over an internal communication channel.
 
        <b><a href="postconf.5.html#max_idle">max_idle</a> (100s)</b>
-              The  maximum  amount  of  time that an idle Postfix
-              daemon process waits for the next  service  request
+              The maximum amount of time  that  an  idle  Postfix
+              daemon  process  waits for the next service request
               before exiting.
 
        <b><a href="postconf.5.html#max_use">max_use</a> (100)</b>
-              The  maximal number of connection requests before a
+              The maximal number of connection requests before  a
               Postfix daemon process terminates.
 
        <b><a href="postconf.5.html#process_id">process_id</a> (read-only)</b>
-              The process ID of a Postfix command or daemon  pro-
+              The  process ID of a Postfix command or daemon pro-
               cess.
 
        <b><a href="postconf.5.html#process_name">process_name</a> (read-only)</b>
-              The  process  name  of  a Postfix command or daemon
+              The process name of a  Postfix  command  or  daemon
               process.
 
        <b><a href="postconf.5.html#queue_directory">queue_directory</a> (see 'postconf -d' output)</b>
-              The location of the Postfix top-level queue  direc-
+              The  location of the Postfix top-level queue direc-
               tory.
 
        <b><a href="postconf.5.html#syslog_facility">syslog_facility</a> (mail)</b>
               The syslog facility of Postfix logging.
 
        <b><a href="postconf.5.html#syslog_name">syslog_name</a> (postfix)</b>
-              The  mail system name that is prepended to the pro-
+              The mail system name that is prepended to the  pro-
               cess  name  in  syslog  records,  so  that  "smtpd"
               becomes, for example, "postfix/smtpd".
 
@@ -271,20 +272,20 @@ VIRTUAL(8)                                             VIRTUAL(8)
        <a href="VIRTUAL_README.html">VIRTUAL_README</a>, domain hosting howto
 
 <b>LICENSE</b>
-       The  Secure  Mailer  license must be distributed with this
+       The Secure Mailer license must be  distributed  with  this
        software.
 
 <b>HISTORY</b>
-       This delivery agent was originally based  on  the  Postfix
-       local  delivery  agent.  Modifications mainly consisted of
-       removing code that either was not applicable or  that  was
-       not  safe  in this context: aliases, ~user/.forward files,
+       This  delivery  agent  was originally based on the Postfix
+       local delivery agent. Modifications  mainly  consisted  of
+       removing  code  that either was not applicable or that was
+       not safe in this context: aliases,  ~user/.forward  files,
        delivery to "|command" or to /file/name.
 
        The <b>Delivered-To:</b> message header appears in the <b>qmail</b> sys-
        tem by Daniel Bernstein.
 
-       The  <b>maildir</b>  structure  appears  in  the  <b>qmail</b> system by
+       The <b>maildir</b> structure  appears  in  the  <b>qmail</b>  system  by
        Daniel Bernstein.
 
 <b>AUTHOR(S)</b>
index 41505feb74862ab336fc4729598d53cf79708ee3..baa7e69aaf6341adda51035b136b021fb6d9631a 100644 (file)
@@ -11,7 +11,7 @@ Print Postfix queue domain and age distribution
 .fi
 \fBqshape\fR [\fB-s\fR] [\fB-p\fR] [\fB-m \fImin_subdomains\fR]
         [\fB-b \fIbucket_count\fR] [\fB-t \fIbucket_time\fR]
-        [\fB-w \fIterminal_width\fR]
+        [\fB-l\fR] [\fB-w \fIterminal_width\fR]
         [\fB-c \fIconfig_directory\fR] [\fIqueue_name\fR ...]
 .SH DESCRIPTION
 .ad
@@ -44,10 +44,15 @@ increasing intervals. This option sets the number of intervals
 or "buckets". Each bucket has a maximum queue age that is twice
 as large as that of the previous bucket. The last bucket has no
 age limit.
-.IP "\fB-b \fIbucket_time\fR"
+.IP "\fB-t \fIbucket_time\fR"
 The age limit in minutes for the first time bucket. The default
 value is 5, meaning that the first bucket counts messages between
 0 and 5 minutes old.
+.IP "\fB-l\fR"
+Instead of using a geometric age sequence, use a linear age sequence,
+in other words simple multiples of \fBbucket_time\fR.
+
+This feature is available in Postfix 2.2 and later.
 .IP "\fB-w \fIterminal_width\fR"
 The output is right justified, with the counts for the last
 bucket shown on the 80th column, the \fIterminal_width\fR can be
index 246ecddfdc802832f7b9f1b937c632c9da9b0ec5..866d68831894b4b66d332c8dc47d9b267a172116 100644 (file)
@@ -292,9 +292,9 @@ Body pattern to stop a specific HTML browser vulnerability exploit.
 .nf
 /etc/postfix/main.cf:
 .ti +4
-header_checks = regexp:/etc/postfix/header_checks
+body_checks = regexp:/etc/postfix/body_checks
 
-/etc/postfix/header_checks:
+/etc/postfix/body_checks:
 .ti +4
 /^<iframe src=(3D)?cid:.* height=(3D)?0 width=(3D)?0>$/
 .ti +8
index 3c7d090b330076e949aaf12b9dbbeb4fb46d4819..2f96c402800511a5784837ca911d29e275cbbaa4 100644 (file)
@@ -388,6 +388,7 @@ below it),  "/file/name" or "type:table" patterns.  A "/file/name"
 pattern is replaced by its contents; a "type:table" lookup table
 is matched when a table entry matches a lookup string (the lookup
 result is ignored).  Continue long lines by starting the next line
+with whitespace.
 .SH backwards_bounce_logfile_compatibility (default: yes)
 Produce additional bounce(8) logfile records that can be read by
 older Postfix versions. The current and more extensible "name =
@@ -796,7 +797,7 @@ This feature is available in Postfix 2.0 and later.
 The names of message delivery transports that should not be delivered
 to unless someone issues "\fBsendmail -q\fR" or equivalent. Specify zero
 or more names of mail delivery transports names that appear in the
-first field of master.cf).
+first field of master.cf.
 .PP
 Example:
 .PP
@@ -1928,7 +1929,7 @@ Postfix to "trust" your entire provider's network.  Instead, specify
 an explicit mynetworks list by hand, as described with the mynetworks
 configuration parameter.
 .SH myorigin (default: $myhostname)
-The default domain name that locally-posted mail appears to come
+The domain name that locally-posted mail appears to come
 from, and that locally posted mail is delivered to. The default,
 $myhostname, is adequate for small sites.  If you run a domain with
 multiple machines, you should (1) change this to $mydomain and (2)
@@ -1969,7 +1970,7 @@ The error classes are:
 Send the postmaster copies of the headers of bounced mail, and
 send transcripts of SMTP sessions when Postfix rejects mail. The
 notification is sent to the address specified with the
-bounce_notice_recipient configuration parameter (default: postmaster)
+bounce_notice_recipient configuration parameter (default: postmaster).
 .IP "\fB2bounce\fR"
 Send undeliverable bounced mail to the postmaster. The notification
 is sent to the address specified with the 2bounce_notice_recipient
@@ -2365,13 +2366,6 @@ recipient addresses with $relay_recipient_maps and rejects non-existent
 recipients. See also the relay domains address class in the
 ADDRESS_CLASS_README file.
 .PP
-The list of domains that are by default delivered via the
-$local_transport mail delivery transport. By default this is the
-Postfix local(8) delivery agent which looks up all recipients in
-/etc/passwd and /etc/aliases. The SMTP server validates recipient
-addresses with $local_recipient_maps. See also the local domain
-address class in the ADDRESS_CLASS_README file.
-.PP
 NOTE: Postfix will not automatically forward mail for domains
 that list this system as their primary or backup MX host. See the
 permit_mx_backup restriction in the postconf(5) manual page.
@@ -2721,7 +2715,7 @@ Use the native service for hosts not found in the DNS.
 This feature is available in Postfix 2.1 and later.
 .SH smtp_line_length_limit (default: 990)
 The maximal length of message header and body lines that Postfix
-will send via SMTP.  Longer lines are longer are broken by inserting
+will send via SMTP.  Longer lines are broken by inserting
 "<CR><LF><SPACE>". This minimizes the damage to
 MIME formatted mail.
 .PP
@@ -2988,7 +2982,7 @@ restrictions.
 .PP
 By default, clients in trusted networks are excluded. Specify a
 list of network blocks, hostnames or .domain names (the initial
-initial dot causes the domain to match any name below it).
+dot causes the domain to match any name below it).
 .PP
 This feature is not part of the stable Postfix 2.1 release.
 .SH smtpd_client_connection_rate_limit (default: 0)
@@ -3370,7 +3364,7 @@ The proxy receives all mail from the Postfix SMTP server, and is
 supposed to give the result to another Postfix SMTP server process.
 .PP
 Specify host:port. The host can be specified as an IP address
-or was a symbolic name; no MX lookups are done. When no host or
+or as a symbolic name; no MX lookups are done. When no host or
 host:  are specified, the local machine is assumed.
 .PP
 This feature is available in Postfix 2.1 and later.
@@ -3507,9 +3501,8 @@ address.
 The unknown_address_reject_code parameter specifies
 the response code for rejected requests (default: 450).  The response
 is always 450 in case of a temporary DNS error.
-.IP "\fBreject_unlisted_recipient\fR
-(Postfix 2.0 name: check_recipient_maps)"
- Reject the request when the RCPT TO address is not listed in
+.IP "\fBreject_unlisted_recipient\fR (Postfix 2.0 name: check_recipient_maps)"
+Reject the request when the RCPT TO address is not listed in
 the list of valid recipients for its domain class. See the
 smtpd_reject_unlisted_recipient parameter description for details.
 This feature is available in Postfix 2.1 and later.
index dcbe38d16269b1927a8779fc52a9b282be864840..22c64cf308e660f47b88ca3169aa45b3626fbb37 100644 (file)
@@ -260,7 +260,7 @@ process terminates.
 .IP "\fBmyhostname (see 'postconf -d' output)\fR"
 The internet hostname of this mail system.
 .IP "\fBmyorigin ($myhostname)\fR"
-The default domain name that locally-posted mail appears to come
+The domain name that locally-posted mail appears to come
 from, and that locally posted mail is delivered to.
 .IP "\fBprocess_id (read-only)\fR"
 The process ID of a Postfix command or daemon process.
index 5e7c4c28429c3badec04b31a7ed2c862ac7d67c9..a01ccce7061f7b00c07c65668e1c5808827f2b69 100644 (file)
@@ -40,6 +40,13 @@ The system administrator can specify a comma/space separated list
 of ~\fR/.\fBforward\fR like files through the \fBforward_path\fR
 configuration parameter. Upon delivery, the local delivery agent
 tries each pathname in the list until a file is found.
+
+Delivery via ~/.\fB.forward\fR files is done with the privileges
+of the recipient.
+Thus, ~/.\fBforward\fR like files must be readable by the
+recipient, and their parent directory needs to have "execute"
+permission for the recipient.
+
 The \fBforward_path\fR parameter is subject to interpolation of
 \fB$user\fR (recipient username), \fB$home\fR (recipient home
 directory), \fB$shell\fR (recipient shell), \fB$recipient\fR
index b7890fd90908edd6060a92a6e52f0488699e3890..ccc89e32c049c341d560322e060058c8f4c24e11 100644 (file)
@@ -51,7 +51,7 @@ descriptor instead of file data, but then the already complex
 .nf
 .ad
 .fi
-As the pickup daemon is a relatively long-running process, up
+As the pickup(8) daemon is a relatively long-running process, up
 to an hour may pass before a \fBmain.cf\fR change takes effect.
 Use the command "\fBpostfix reload\fR" command to speed up a change.
 
index 582268d518b9340aa650ee9668900a7f609d998f..21efe69ba52c86899817292bff9b0d2268f8a2e0 100644 (file)
@@ -42,8 +42,8 @@ The proxymap server implements the following requests:
 .IP "\fBopen\fR \fImaptype:mapname flags\fR"
 Open the table with type \fImaptype\fR and name \fImapname\fR,
 as controlled by \fIflags\fR. The reply includes the \fImaptype\fR
-dependent flags (to distinguish a fixed string table from regular
-expression table).
+dependent flags (to distinguish a fixed string table from regular
+expression table).
 .IP "\fBlookup\fR \fImaptype:mapname flags key\fR"
 Look up the data stored under the requested key.
 The reply is the request completion status code (below) and
index 68c1c1e178ffdd34ef205d634a310d1357bd39d4..b90e2ad98e91f08c79205c97c0cf50d439f3bd45 100644 (file)
@@ -60,7 +60,7 @@ Per-recipient status information about why mail is delayed.
 These files are maintained by the \fBdefer\fR(8) daemon.
 .IP \fBtrace\fR
 Per-recipient status information as requested with the
-Postfix "\fBsendmail -v\fR" or "\fBsendmail -bv" command\fR.
+Postfix "\fBsendmail -v\fR" or "\fBsendmail -bv\fR" command.
 These files are maintained by the \fBtrace\fR(8) daemon.
 .PP
 The \fBqmgr\fR daemon is responsible for asking the
@@ -325,7 +325,7 @@ records, so that "smtpd" becomes, for example, "postfix/smtpd".
 .nf
 trivial-rewrite(8), address routing
 bounce(8), delivery status reports
-postconf(5) configuration parameters
+postconf(5), configuration parameters
 master(8), process manager
 syslogd(8) system logging
 .SH "README FILES"
index d39f00d364d9eef7ef80caef6626f55c4be6b215..7d2e46ac2ec80f333a4b92573cd0ed551a50b903 100644 (file)
@@ -291,9 +291,9 @@ a list of lookup tables that does not match the recipient address.
 Parameters concerning known/unknown recipients in virtual alias
 domains:
 .IP "\fBvirtual_alias_domains ($virtual_alias_maps)\fR"
-Optional list of names of virtual alias domains, that is,
-domains for which all addresses are aliased to addresses in other
-local or remote domains.
+Postfix is final destination for the specified list of virtual
+alias domains, that is, domains for which all addresses are aliased
+to addresses in other local or remote domains.
 .IP "\fBvirtual_alias_maps ($virtual_maps)\fR"
 Optional lookup tables that alias specific mail addresses or domains
 to other local or remote address.
@@ -305,8 +305,8 @@ of lookup tables that does not match the recipient address.
 Parameters concerning known/unknown recipients in virtual mailbox
 domains:
 .IP "\fBvirtual_mailbox_domains ($virtual_mailbox_maps)\fR"
-The list of domains that are delivered via the $virtual_transport
-mail delivery transport.
+Postfix is final destination for the specified list of domains;
+mail is delivered via the $virtual_transport mail delivery transport.
 .IP "\fBvirtual_mailbox_maps (empty)\fR"
 Optional lookup tables with all valid addresses in the domains that
 match $virtual_mailbox_domains.
@@ -389,9 +389,6 @@ for each excess recipient.
 As of version 2.1, Postfix can be configured to delegate access
 policy decisions to an external server that runs outside Postfix.
 See the file SMTPD_POLICY_README for more information.
-.IP "\fBsmtpd_policy_service_timeout (100s)\fR"
-The time limit for connecting to, writing to or receiving from a
-delegated SMTPD policy server.
 .IP "\fBsmtpd_policy_service_max_idle (300s)\fR"
 The time after which an idle SMTPD policy service connection is
 closed.
@@ -468,7 +465,7 @@ access restriction is specified.
 .nf
 .ad
 .fi
-Postfix version 2.1 introduces sender and address verification.
+Postfix version 2.1 introduces sender and recipient address verification.
 This feature is implemented by sending probe email messages that
 are not actually delivered.
 This feature is requested via the reject_unverified_sender and
@@ -583,7 +580,7 @@ The internet hostname of this mail system.
 The list of "trusted" SMTP clients that have more privileges than
 "strangers".
 .IP "\fBmyorigin ($myhostname)\fR"
-The default domain name that locally-posted mail appears to come
+The domain name that locally-posted mail appears to come
 from, and that locally posted mail is delivered to.
 .IP "\fBprocess_id (read-only)\fR"
 The process ID of a Postfix command or daemon process.
index 2e42bd87f35a78e9f17686c105be9add1e41c791..6499fed80dd0579efaf6284c37b6b1013fb4f526 100644 (file)
@@ -69,7 +69,7 @@ and thus is not vulnerable to data-driven attacks.
 .nf
 .ad
 .fi
-Changes to \fBmain.cf\fR are picked up automatically as smtpd(8)
+Changes to \fBmain.cf\fR are picked up automatically as spawn(8)
 processes run for only a limited amount of time. Use the command
 "\fBpostfix reload\fR" to speed up a change.
 
index 3243dfe43277d76e4a93dcb28e1619f45a25b432..f433a48b1c58e3b85d2f49908b8f6cdc378bac77 100644 (file)
@@ -94,7 +94,7 @@ invalid.
 .ad
 .fi
 .IP "\fBmyorigin ($myhostname)\fR"
-The default domain name that locally-posted mail appears to come
+The domain name that locally-posted mail appears to come
 from, and that locally posted mail is delivered to.
 .IP "\fBallow_percent_hack (yes)\fR"
 Enable the rewriting of the form "user%domain" to "user@domain".
@@ -144,7 +144,7 @@ Optional lookup tables with mappings from recipient address to
 .nf
 .ad
 .fi
-Postfix version 2.1 introduces sender and address verification.
+Postfix version 2.1 introduces sender and recipient address verification.
 This feature is implemented by sending probe email messages that
 are not actually delivered.
 By default, address verification probes use the same route
index e2cc66580480318be8137a67e4f2633de4cef00b..34d466cbbb90be9fdba81f3d66c7541fb645c557 100644 (file)
@@ -188,8 +188,8 @@ delivery.
 .PP
 Available in Postfix version 2.0 and later:
 .IP "\fBvirtual_mailbox_domains ($virtual_mailbox_maps)\fR"
-The list of domains that are delivered via the $virtual_transport
-mail delivery transport.
+Postfix is final destination for the specified list of domains;
+mail is delivered via the $virtual_transport mail delivery transport.
 .IP "\fBvirtual_transport (virtual)\fR"
 The default mail delivery transport for domains that match the
 $virtual_mailbox_domains parameter value.
index e1298282e4ffbfaf565b2c5b07c163c639a449f1..9d94c07d1e0989e1d4bb6cefbc285555b7d568cb 100755 (executable)
@@ -57,7 +57,7 @@ while(<>) {
     #$block =~ s/<\/ul>/\n.PP\n/g;
     $block =~ s/<\/dl>/\n/g;
     $block =~ s/<\/ul>/\n/g;
-    $block =~ s/<dd>/\n/g;
+    $block =~ s/<dd>\s*/\n/g;
     $block =~ s/<\/dd>/\n/g;
     $block =~ s/<li>\s*/\n.IP \\(bu\n/g;
     $block =~ s/<dt>\s*/\n.IP "/g;
index c6bef2e706083ca68392de36571bd51720244179..785c0e2b8e103753b88b97b4bb3eeeb17a70ebd5 100755 (executable)
 #!/bin/sh
 
-# Crude script to make formatted Postfix man pages clickable.
-
-# If you use a sed(1) command that does not understand POSIX,
-# do s/\[\[:<:\]\]/\\</g; s/\[\[:>:\]\]/\\>/g on this script.
-
-exec sed '
-
-       # Glue together words that were broken across line breaks.
-
-    :again
-       /-[</bB>]*$/{
-           N
-           b again
-       }
-
-       /<[Aa] *[HhNn][RrAa][EeMm][FfEe] *=/{
-               p
-               d
-       }
-       /<\/[Aa]>/{
-               p
-               d
-       }
-       /"[Hh][Tt][Tt][Pp]:/{
-               p
-               d
-       }
-       /<[Tt][Ii][Tt][Ll][Ee]>/{
-               p
-               d
-       }
-
-       # Following block was generated with "makepostconflinks"
-       # but hyphenation was added manually.
-
-       /<\/*[Hh][0-9]*>/{
-               p
-               d
-               }
-       /<[Aa] [Nm][Aa][Mm][Ee]=/{
-               p
-               d
-               }
-       /<[D][T]>/{
-               p
-               d
-               }
-       s;[[:<:]]autho[-</bB>]*\n*[ <bB>]*rized_verp_clients[[:>:]];<a href="postconf.5.html#authorized_verp_clients">&</a>;g
-       s;[[:<:]]debugger_command[[:>:]];<a href="postconf.5.html#debugger_command">&</a>;g
-       s;[[:<:]]2bounce_notice_recipi[-</bB>]*\n*[ <bB>]*ent[[:>:]];<a href="postconf.5.html#2bounce_notice_recipient">&</a>;g
-       s;[[:<:]]access_map_reject_code[[:>:]];<a href="postconf.5.html#access_map_reject_code">&</a>;g
-       s;[[:<:]]address_verify_default_transport[[:>:]];<a href="postconf.5.html#address_verify_default_transport">&</a>;g
-       s;[[:<:]]address_verify_local_transport[[:>:]];<a href="postconf.5.html#address_verify_local_transport">&</a>;g
-       s;[[:<:]]address_verify_map[[:>:]];<a href="postconf.5.html#address_verify_map">&</a>;g
-       s;[[:<:]]address_verify_negative_cache[[:>:]];<a href="postconf.5.html#address_verify_negative_cache">&</a>;g
-       s;[[:<:]]address_verify_negative_expire_time[[:>:]];<a href="postconf.5.html#address_verify_negative_expire_time">&</a>;g
-       s;[[:<:]]address_verify_negative_refresh_time[[:>:]];<a href="postconf.5.html#address_verify_negative_refresh_time">&</a>;g
-       s;[[:<:]]address_verify_poll_count[[:>:]];<a href="postconf.5.html#address_verify_poll_count">&</a>;g
-       s;[[:<:]]address_verify_poll_delay[[:>:]];<a href="postconf.5.html#address_verify_poll_delay">&</a>;g
-       s;[[:<:]]address_verify_positive_expire_time[[:>:]];<a href="postconf.5.html#address_verify_positive_expire_time">&</a>;g
-       s;[[:<:]]address_verify_positive_refresh_time[[:>:]];<a href="postconf.5.html#address_verify_positive_refresh_time">&</a>;g
-       s;[[:<:]]address_verify_relay_transport[[:>:]];<a href="postconf.5.html#address_verify_relay_transport">&</a>;g
-       s;[[:<:]]address_verify_relayhost[[:>:]];<a href="postconf.5.html#address_verify_relayhost">&</a>;g
-       s;[[:<:]]address_verify_sender[[:>:]];<a href="postconf.5.html#address_verify_sender">&</a>;g
-       s;[[:<:]]address_verify_service_name[[:>:]];<a href="postconf.5.html#address_verify_service_name">&</a>;g
-       s;[[:<:]]address_verify_transport_maps[[:>:]];<a href="postconf.5.html#address_verify_transport_maps">&</a>;g
-       s;[[:<:]]address_verify_virtual_transport[[:>:]];<a href="postconf.5.html#address_verify_virtual_transport">&</a>;g
-       s;[[:<:]]alias_database[[:>:]];<a href="postconf.5.html#alias_database">&</a>;g
-       s;[[:<:]]alias_maps[[:>:]];<a href="postconf.5.html#alias_maps">&</a>;g
-       s;[[:<:]]allow_mail_to_commands[[:>:]];<a href="postconf.5.html#allow_mail_to_commands">&</a>;g
-       s;[[:<:]]allow_mail_to_files[[:>:]];<a href="postconf.5.html#allow_mail_to_files">&</a>;g
-       s;[[:<:]]allow_min_user[[:>:]];<a href="postconf.5.html#allow_min_user">&</a>;g
-       s;[[:<:]]allow_percent_hack[[:>:]];<a href="postconf.5.html#allow_percent_hack">&</a>;g
-       s;[[:<:]]allow_untrusted_routing[[:>:]];<a href="postconf.5.html#allow_untrusted_routing">&</a>;g
-       s;[[:<:]]alternate_config_directories[[:>:]];<a href="postconf.5.html#alternate_config_directories">&</a>;g
-       s;[[:<:]]always_bcc[[:>:]];<a href="postconf.5.html#always_bcc">&</a>;g
-       s;[[:<:]]anvil_rate_time_unit[[:>:]];<a href="postconf.5.html#anvil_rate_time_unit">&</a>;g
-       s;[[:<:]]append_at_myorigin[[:>:]];<a href="postconf.5.html#append_at_myorigin">&</a>;g
-       s;[[:<:]]append_dot_mydomain[[:>:]];<a href="postconf.5.html#append_dot_mydomain">&</a>;g
-       s;[[:<:]]application_event_drain_time[[:>:]];<a href="postconf.5.html#application_event_drain_time">&</a>;g
-       s;[[:<:]]backwards_bounce_logfile_compatibility[[:>:]];<a href="postconf.5.html#backwards_bounce_logfile_compatibility">&</a>;g
-       s;[[:<:]]berkeley_db_create_buffer_size[[:>:]];<a href="postconf.5.html#berkeley_db_create_buffer_size">&</a>;g
-       s;[[:<:]]berkeley_db_read_buffer_size[[:>:]];<a href="postconf.5.html#berkeley_db_read_buffer_size">&</a>;g
-       s;[[:<:]]best_mx_transport[[:>:]];<a href="postconf.5.html#best_mx_transport">&</a>;g
-       s;[[:<:]]biff[[:>:]];<a href="postconf.5.html#biff">&</a>;g
-       s;[[:<:]]body_checks[[:>:]];<a href="postconf.5.html#body_checks">&</a>;g
-       s;[[:<:]]body_checks_size_limit[[:>:]];<a href="postconf.5.html#body_checks_size_limit">&</a>;g
-       s;[[:<:]]bounce_notice_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#bounce_notice_recipient">&</a>;g
-       s;[[:<:]]bounce_queue_lifetime[[:>:]];<a href="postconf.5.html#bounce_queue_lifetime">&</a>;g
-       s;[[:<:]]bounce_service_name[[:>:]];<a href="postconf.5.html#bounce_service_name">&</a>;g
-       s;[[:<:]]bounce_size_limit[[:>:]];<a href="postconf.5.html#bounce_size_limit">&</a>;g
-       s;[[:<:]]broken_sasl_auth_clients[[:>:]];<a href="postconf.5.html#broken_sasl_auth_clients">&</a>;g
-       s;[[:<:]]canonical_maps[[:>:]];<a href="postconf.5.html#canonical_maps">&</a>;g
-       s;[[:<:]]cleanup_service_name[[:>:]];<a href="postconf.5.html#cleanup_service_name">&</a>;g
-       s;[[:<:]]anvil_status_update_time[[:>:]];<a href="postconf.5.html#anvil_status_update_time">&</a>;g
-       s;[[:<:]]command_directory[[:>:]];<a href="postconf.5.html#command_directory">&</a>;g
-       s;[[:<:]]command_expan[-</bB>]*\n* *[<bB>]*sion_filter[[:>:]];<a href="postconf.5.html#command_expansion_filter">&</a>;g
-       s;[[:<:]]command_time_limit[[:>:]];<a href="postconf.5.html#command_time_limit">&</a>;g
-       s;[[:<:]]config_direc[-</bB>]*\n*[ <bB>]*tory[[:>:]];<a href="postconf.5.html#config_directory">&</a>;g
-       s;[[:<:]]con[-</bB>]*\n*[ <bB>]*tent_filter[[:>:]];<a href="postconf.5.html#content_filter">&</a>;g
-       s;[[:<:]]daemon_directory[[:>:]];<a href="postconf.5.html#daemon_directory">&</a>;g
-       s;[[:<:]]daemon_timeout[[:>:]];<a href="postconf.5.html#daemon_timeout">&</a>;g
-       s;[[:<:]]debug_peer_level[[:>:]];<a href="postconf.5.html#debug_peer_level">&</a>;g
-       s;[[:<:]]debug_peer_list[[:>:]];<a href="postconf.5.html#debug_peer_list">&</a>;g
-       s;[[:<:]]default_database_type[[:>:]];<a href="postconf.5.html#default_database_type">&</a>;g
-       s;[[:<:]]default_deliv[-</Bb>]*\n* *[<Bb>]*ery_slot_cost[[:>:]];<a href="postconf.5.html#default_delivery_slot_cost">&</a>;g
-       s;[[:<:]]default_deliv[-</Bb>]*\n* *[<Bb>]*ery_slot_discount[[:>:]];<a href="postconf.5.html#default_delivery_slot_discount">&</a>;g
-       s;[[:<:]]default_deliv[-</Bb>]*\n* *[<Bb>]*ery_slot_loan[[:>:]];<a href="postconf.5.html#default_delivery_slot_loan">&</a>;g
-       s;[[:<:]]default_destina[-</Bb>]*\n* *[<Bb>]*tion_concurrency_limit[[:>:]];<a href="postconf.5.html#default_destination_concurrency_limit">&</a>;g
-       s;[[:<:]]default_destina[-</Bb>]*\n* *[<Bb>]*tion_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#default_destination_recipient_limit">&</a>;g
-       s;[[:<:]]default_extra_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#default_extra_recipient_limit">&</a>;g
-       s;[[:<:]]default_minimum_deliv[-</Bb>]*\n* *[<Bb>]*ery_slots[[:>:]];<a href="postconf.5.html#default_minimum_delivery_slots">&</a>;g
-       s;[[:<:]]default_privs[[:>:]];<a href="postconf.5.html#default_privs">&</a>;g
-       s;[[:<:]]default_process_limit[[:>:]];<a href="postconf.5.html#default_process_limit">&</a>;g
-       s;[[:<:]]default_rbl_reply[[:>:]];<a href="postconf.5.html#default_rbl_reply">&</a>;g
-       s;[[:<:]]default_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#default_recipient_limit">&</a>;g
-       s;[[:<:]]default_transport[[:>:]];<a href="postconf.5.html#default_transport">&</a>;g
-       s;[[:<:]]default_verp_delimiters[[:>:]];<a href="postconf.5.html#default_verp_delimiters">&</a>;g
-       s;[[:<:]]defer_code[[:>:]];<a href="postconf.5.html#defer_code">&</a>;g
-       s;[[:<:]]defer_service_name[[:>:]];<a href="postconf.5.html#defer_service_name">&</a>;g
-       s;[[:<:]]defer_transports[[:>:]];<a href="postconf.5.html#defer_transports">&</a>;g
-       s;[[:<:]]delay_notice_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#delay_notice_recipient">&</a>;g
-       s;[[:<:]]delay_warning_time[[:>:]];<a href="postconf.5.html#delay_warning_time">&</a>;g
-       s;[[:<:]]deliver_lock_attempts[[:>:]];<a href="postconf.5.html#deliver_lock_attempts">&</a>;g
-       s;[[:<:]]deliver_lock_delay[[:>:]];<a href="postconf.5.html#deliver_lock_delay">&</a>;g
-       s;[[:<:]]disable_dns_lookups[[:>:]];<a href="postconf.5.html#disable_dns_lookups">&</a>;g
-       s;[[:<:]]disable_mime_input_processing[[:>:]];<a href="postconf.5.html#disable_mime_input_processing">&</a>;g
-       s;[[:<:]]disable_mime_output_conversion[[:>:]];<a href="postconf.5.html#disable_mime_output_conversion">&</a>;g
-       s;[[:<:]]disable_verp_bounces[[:>:]];<a href="postconf.5.html#disable_verp_bounces">&</a>;g
-       s;[[:<:]]disable_vrfy_command[[:>:]];<a href="postconf.5.html#disable_vrfy_command">&</a>;g
-       s;[[:<:]]dont_remove[[:>:]];<a href="postconf.5.html#dont_remove">&</a>;g
-       s;[[:<:]]double_bounce_sender[[:>:]];<a href="postconf.5.html#double_bounce_sender">&</a>;g
-       s;[[:<:]]dupli[-</bB>]*\n* *[<bB>]*cate_filter_limit[[:>:]];<a href="postconf.5.html#duplicate_filter_limit">&</a>;g
-       s;[[:<:]]empty_address_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#empty_address_recipient">&</a>;g
-       s;[[:<:]]enable_original_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#enable_original_recipient">&</a>;g
-       s;[[:<:]]error_notice_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#error_notice_recipient">&</a>;g
-       s;[[:<:]]error_service_name[[:>:]];<a href="postconf.5.html#error_service_name">&</a>;g
-       s;[[:<:]]expand_owner_alias[[:>:]];<a href="postconf.5.html#expand_owner_alias">&</a>;g
-       s;[[:<:]]export_environment[[:>:]];<a href="postconf.5.html#export_environment">&</a>;g
-       s;[[:<:]]fallback_relay[[:>:]];<a href="postconf.5.html#fallback_relay">&</a>;g
-       s;[[:<:]]fallback_transport[[:>:]];<a href="postconf.5.html#fallback_transport">&</a>;g
-       s;[[:<:]]fast_flush_domains[[:>:]];<a href="postconf.5.html#fast_flush_domains">&</a>;g
-       s;[[:<:]]fast_flush_purge_time[[:>:]];<a href="postconf.5.html#fast_flush_purge_time">&</a>;g
-       s;[[:<:]]fast_flush_refresh_time[[:>:]];<a href="postconf.5.html#fast_flush_refresh_time">&</a>;g
-       s;[[:<:]]fault_injection_code[[:>:]];<a href="postconf.5.html#fault_injection_code">&</a>;g
-       s;[[:<:]]flush_service_name[[:>:]];<a href="postconf.5.html#flush_service_name">&</a>;g
-       s;[[:<:]]fork_attempts[[:>:]];<a href="postconf.5.html#fork_attempts">&</a>;g
-       s;[[:<:]]fork_delay[[:>:]];<a href="postconf.5.html#fork_delay">&</a>;g
-       s;[[:<:]]forward_expan[-</bB>]*\n* *[<bB>]*sion_filter[[:>:]];<a href="postconf.5.html#forward_expansion_filter">&</a>;g
-       s;[[:<:]]for[-</bB>]*\n* *[<bB>]*ward_path[[:>:]];<a href="postconf.5.html#forward_path">&</a>;g
-       s;[[:<:]]hash_queue_depth[[:>:]];<a href="postconf.5.html#hash_queue_depth">&</a>;g
-       s;[[:<:]]hash_queue_names[[:>:]];<a href="postconf.5.html#hash_queue_names">&</a>;g
-       s;[[:<:]]header_address_token_limit[[:>:]];<a href="postconf.5.html#header_address_token_limit">&</a>;g
-       s;[[:<:]]header_checks[[:>:]];<a href="postconf.5.html#header_checks">&</a>;g
-       s;[[:<:]]header_size_limit[[:>:]];<a href="postconf.5.html#header_size_limit">&</a>;g
-       s;[[:<:]]helpful_warnings[[:>:]];<a href="postconf.5.html#helpful_warnings">&</a>;g
-       s;[[:<:]]home_mailbox[[:>:]];<a href="postconf.5.html#home_mailbox">&</a>;g
-       s;[[:<:]]hopcount_limit[[:>:]];<a href="postconf.5.html#hopcount_limit">&</a>;g
-       s;[[:<:]]html_direc[-</bB>]*\n*[ <bB>]*tory[[:>:]];<a href="postconf.5.html#html_directory">&</a>;g
-       s;[[:<:]]ignore_mx_lookup_error[[:>:]];<a href="postconf.5.html#ignore_mx_lookup_error">&</a>;g
-       s;[[:<:]]import_environment[[:>:]];<a href="postconf.5.html#import_environment">&</a>;g
-       s;[[:<:]]in_flow_delay[[:>:]];<a href="postconf.5.html#in_flow_delay">&</a>;g
-       s;[[:<:]]inet_interfaces[[:>:]];<a href="postconf.5.html#inet_interfaces">&</a>;g
-       s;[[:<:]]initial_destination_concurrency[[:>:]];<a href="postconf.5.html#initial_destination_concurrency">&</a>;g
-       s;[[:<:]]invalid_hostname_reject_code[[:>:]];<a href="postconf.5.html#invalid_hostname_reject_code">&</a>;g
-       s;[[:<:]]ipc_idle[[:>:]];<a href="postconf.5.html#ipc_idle">&</a>;g
-       s;[[:<:]]ipc_timeout[[:>:]];<a href="postconf.5.html#ipc_timeout">&</a>;g
-       s;[[:<:]]ipc_ttl[[:>:]];<a href="postconf.5.html#ipc_ttl">&</a>;g
-       s;[[:<:]]line_length_limit[[:>:]];<a href="postconf.5.html#line_length_limit">&</a>;g
-       s;[[:<:]]lmtp_cache_connection[[:>:]];<a href="postconf.5.html#lmtp_cache_connection">&</a>;g
-       s;[[:<:]]lmtp_connect_timeout[[:>:]];<a href="postconf.5.html#lmtp_connect_timeout">&</a>;g
-       s;[[:<:]]lmtp_data_done_timeout[[:>:]];<a href="postconf.5.html#lmtp_data_done_timeout">&</a>;g
-       s;[[:<:]]lmtp_data_init_timeout[[:>:]];<a href="postconf.5.html#lmtp_data_init_timeout">&</a>;g
-       s;[[:<:]]lmtp_data_xfer_timeout[[:>:]];<a href="postconf.5.html#lmtp_data_xfer_timeout">&</a>;g
-       s;[[:<:]]lmtp_lhlo_timeout[[:>:]];<a href="postconf.5.html#lmtp_lhlo_timeout">&</a>;g
-       s;[[:<:]]lmtp_mail_timeout[[:>:]];<a href="postconf.5.html#lmtp_mail_timeout">&</a>;g
-       s;[[:<:]]lmtp_quit_timeout[[:>:]];<a href="postconf.5.html#lmtp_quit_timeout">&</a>;g
-       s;[[:<:]]lmtp_rcpt_timeout[[:>:]];<a href="postconf.5.html#lmtp_rcpt_timeout">&</a>;g
-       s;[[:<:]]lmtp_rset_timeout[[:>:]];<a href="postconf.5.html#lmtp_rset_timeout">&</a>;g
-       s;[[:<:]]lmtp_sasl_auth_enable[[:>:]];<a href="postconf.5.html#lmtp_sasl_auth_enable">&</a>;g
-       s;[[:<:]]lmtp_sasl_password_maps[[:>:]];<a href="postconf.5.html#lmtp_sasl_password_maps">&</a>;g
-       s;[[:<:]]lmtp_sasl_security_options[[:>:]];<a href="postconf.5.html#lmtp_sasl_security_options">&</a>;g
-       s;[[:<:]]lmtp_send_xforward_command[[:>:]];<a href="postconf.5.html#lmtp_send_xforward_command">&</a>;g
-       s;[[:<:]]lmtp_skip_quit_response[[:>:]];<a href="postconf.5.html#lmtp_skip_quit_response">&</a>;g
-       s;[[:<:]]lmtp_tcp_port[[:>:]];<a href="postconf.5.html#lmtp_tcp_port">&</a>;g
-       s;[[:<:]]lmtp_xforward_timeout[[:>:]];<a href="postconf.5.html#lmtp_xforward_timeout">&</a>;g
-       s;[[:<:]]local_command_shell[[:>:]];<a href="postconf.5.html#local_command_shell">&</a>;g
-       s;[[:<:]]local_destination_concurrency_limit[[:>:]];<a href="postconf.5.html#local_destination_concurrency_limit">&</a>;g
-       s;[[:<:]]local_destination_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#local_destination_recipient_limit">&</a>;g
-       s;[[:<:]]local_recip[-</bB>]*\n* *[<bB>]*ient_maps[[:>:]];<a href="postconf.5.html#local_recipient_maps">&</a>;g
-       s;[[:<:]]local_transport[[:>:]];<a href="postconf.5.html#local_transport">&</a>;g
-       s;[[:<:]]luser_relay[[:>:]];<a href="postconf.5.html#luser_relay">&</a>;g
-       s;[[:<:]]mail_name[[:>:]];<a href="postconf.5.html#mail_name">&</a>;g
-       s;[[:<:]]mail_owner[[:>:]];<a href="postconf.5.html#mail_owner">&</a>;g
-       s;[[:<:]]mail_release_date[[:>:]];<a href="postconf.5.html#mail_release_date">&</a>;g
-       s;[[:<:]]mail_spool_direc[-</bB>]*\n* *[<bB>]*tory[[:>:]];<a href="postconf.5.html#mail_spool_directory">&</a>;g
-       s;[[:<:]]mail_version[[:>:]];<a href="postconf.5.html#mail_version">&</a>;g
-       s;[[:<:]]mail[-</bB>]*\n* *[<bB>]*box_command[[:>:]];<a href="postconf.5.html#mailbox_command">&</a>;g
-       s;[[:<:]]mail[-</bB>]*\n* *[<bB>]*box_command_maps[[:>:]];<a href="postconf.5.html#mailbox_command_maps">&</a>;g
-       s;[[:<:]]mail[-</bB>]*\n* *[<bB>]*box_deliv[-</Bb>]*\n* *[<Bb>]*ery_lock[[:>:]];<a href="postconf.5.html#mailbox_delivery_lock">&</a>;g
-       s;[[:<:]]mail[-</bB>]*\n* *[<bB>]*box_size_limit[[:>:]];<a href="postconf.5.html#mailbox_size_limit">&</a>;g
-       s;[[:<:]]mail[-</bB>]*\n* *[<bB>]*box_transport[[:>:]];<a href="postconf.5.html#mailbox_transport">&</a>;g
-       s;[[:<:]]mailq_path[[:>:]];<a href="postconf.5.html#mailq_path">&</a>;g
-       s;[[:<:]]manpage_directory[[:>:]];<a href="postconf.5.html#manpage_directory">&</a>;g
-       s;[[:<:]]maps_rbl_domains[[:>:]];<a href="postconf.5.html#maps_rbl_domains">&</a>;g
-       s;[[:<:]]maps_rbl_reject_code[[:>:]];<a href="postconf.5.html#maps_rbl_reject_code">&</a>;g
-       s;[[:<:]]masquerade_classes[[:>:]];<a href="postconf.5.html#masquerade_classes">&</a>;g
-       s;[[:<:]]masquerade_domains[[:>:]];<a href="postconf.5.html#masquerade_domains">&</a>;g
-       s;[[:<:]]masquerade_exceptions[[:>:]];<a href="postconf.5.html#masquerade_exceptions">&</a>;g
-       s;[[:<:]]max_idle[[:>:]];<a href="postconf.5.html#max_idle">&</a>;g
-       s;[[:<:]]max_use[[:>:]];<a href="postconf.5.html#max_use">&</a>;g
-       s;[[:<:]]maxi[-</bB>]*\n*[ <bB>]*mal_backoff_time[[:>:]];<a href="postconf.5.html#maximal_backoff_time">&</a>;g
-       s;[[:<:]]maxi[-</bB>]*\n*[ <bB>]*mal_queue_lifetime[[:>:]];<a href="postconf.5.html#maximal_queue_lifetime">&</a>;g
-       s;[[:<:]]message_size_limit[[:>:]];<a href="postconf.5.html#message_size_limit">&</a>;g
-       s;[[:<:]]mime_boundary_length_limit[[:>:]];<a href="postconf.5.html#mime_boundary_length_limit">&</a>;g
-       s;[[:<:]]mime_header_checks[[:>:]];<a href="postconf.5.html#mime_header_checks">&</a>;g
-       s;[[:<:]]mime_nesting_limit[[:>:]];<a href="postconf.5.html#mime_nesting_limit">&</a>;g
-       s;[[:<:]]minimal_backoff_time[[:>:]];<a href="postconf.5.html#minimal_backoff_time">&</a>;g
-       s;[[:<:]]multi_recip[-</bB>]*\n* *[<bB>]*ient_bounce_reject_code[[:>:]];<a href="postconf.5.html#multi_recipient_bounce_reject_code">&</a>;g
-       s;[[:<:]]mydes[-</bB>]*\n*[ <bB>]*tina[-</bB>]*\n*[ <bB>]*tion[[:>:]];<a href="postconf.5.html#mydestination">&</a>;g
-       s;[[:<:]]mydomain[[:>:]];<a href="postconf.5.html#mydomain">&</a>;g
-       s;[[:<:]]myhostname[[:>:]];<a href="postconf.5.html#myhostname">&</a>;g
-       s;[[:<:]]mynetworks[[:>:]];<a href="postconf.5.html#mynetworks">&</a>;g
-       s;[[:<:]]mynetworks_style[[:>:]];<a href="postconf.5.html#mynetworks_style">&</a>;g
-       s;[[:<:]]myorigin[[:>:]];<a href="postconf.5.html#myorigin">&</a>;g
-       s;[[:<:]]nested_header_checks[[:>:]];<a href="postconf.5.html#nested_header_checks">&</a>;g
-       s;[[:<:]]newaliases_path[[:>:]];<a href="postconf.5.html#newaliases_path">&</a>;g
-       s;[[:<:]]non_fqdn_reject_code[[:>:]];<a href="postconf.5.html#non_fqdn_reject_code">&</a>;g
-       s;[[:<:]]notify_classes[[:>:]];<a href="postconf.5.html#notify_classes">&</a>;g
-       s;[[:<:]]owner_request_special[[:>:]];<a href="postconf.5.html#owner_request_special">&</a>;g
-       s;[[:<:]]parent_domain_matches_subdomains[[:>:]];<a href="postconf.5.html#parent_domain_matches_subdomains">&</a>;g
-       s;[[:<:]]permit_mx_backup_networks[[:>:]];<a href="postconf.5.html#permit_mx_backup_networks">&</a>;g
-       s;[[:<:]]pickup_service_name[[:>:]];<a href="postconf.5.html#pickup_service_name">&</a>;g
-       s;[[:<:]]prepend_delivered_header[[:>:]];<a href="postconf.5.html#prepend_delivered_header">&</a>;g
-       s;[[:<:]]process_id[[:>:]];<a href="postconf.5.html#process_id">&</a>;g
-       s;[[:<:]]process_id_directory[[:>:]];<a href="postconf.5.html#process_id_directory">&</a>;g
-       s;[[:<:]]process_name[[:>:]];<a href="postconf.5.html#process_name">&</a>;g
-       s;[[:<:]]propagate_unmatched_extensions[[:>:]];<a href="postconf.5.html#propagate_unmatched_extensions">&</a>;g
-       s;[[:<:]]proxy_interfaces[[:>:]];<a href="postconf.5.html#proxy_interfaces">&</a>;g
-       s;[[:<:]]proxy_read_maps[[:>:]];<a href="postconf.5.html#proxy_read_maps">&</a>;g
-       s;[[:<:]]qmgr_clog_warn_time[[:>:]];<a href="postconf.5.html#qmgr_clog_warn_time">&</a>;g
-       s;[[:<:]]qmgr_fudge_factor[[:>:]];<a href="postconf.5.html#qmgr_fudge_factor">&</a>;g
-       s;[[:<:]]qmgr_message_active_limit[[:>:]];<a href="postconf.5.html#qmgr_message_active_limit">&</a>;g
-       s;[[:<:]]qmgr_message_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#qmgr_message_recipient_limit">&</a>;g
-       s;[[:<:]]qmgr_message_recip[-</bB>]*\n* *[<bB>]*ient_minimum[[:>:]];<a href="postconf.5.html#qmgr_message_recipient_minimum">&</a>;g
-       s;[[:<:]]qmqpd_authorized_clients[[:>:]];<a href="postconf.5.html#qmqpd_authorized_clients">&</a>;g
-       s;[[:<:]]qmqpd_error_delay[[:>:]];<a href="postconf.5.html#qmqpd_error_delay">&</a>;g
-       s;[[:<:]]qmqpd_timeout[[:>:]];<a href="postconf.5.html#qmqpd_timeout">&</a>;g
-       s;[[:<:]]queue_directory[[:>:]];<a href="postconf.5.html#queue_directory">&</a>;g
-       s;[[:<:]]queue_file_attribute_count_limit[[:>:]];<a href="postconf.5.html#queue_file_attribute_count_limit">&</a>;g
-       s;[[:<:]]queue_minfree[[:>:]];<a href="postconf.5.html#queue_minfree">&</a>;g
-       s;[[:<:]]queue_run_delay[[:>:]];<a href="postconf.5.html#queue_run_delay">&</a>;g
-       s;[[:<:]]queue_service_name[[:>:]];<a href="postconf.5.html#queue_service_name">&</a>;g
-       s;[[:<:]]rbl_reply_maps[[:>:]];<a href="postconf.5.html#rbl_reply_maps">&</a>;g
-       s;[[:<:]]readme_directory[[:>:]];<a href="postconf.5.html#readme_directory">&</a>;g
-       s;[[:<:]]receive_override_options[[:>:]];<a href="postconf.5.html#receive_override_options">&</a>;g
-       s;[[:<:]]no_unknown_recip[-</bB>]*\n* *[<bB>]*ient_checks[[:>:]];<a href="postconf.5.html#no_unknown_recipient_checks">&</a>;g
-       s;[[:<:]]no_address_mappings[[:>:]];<a href="postconf.5.html#no_address_mappings">&</a>;g
-       s;[[:<:]]no_header_body_checks[[:>:]];<a href="postconf.5.html#no_header_body_checks">&</a>;g
-       s;[[:<:]]recip[-</bB>]*\n* *[<bB>]*ient_bcc_maps[[:>:]];<a href="postconf.5.html#recipient_bcc_maps">&</a>;g
-       s;[[:<:]]recip[-</bB>]*\n* *[<bB>]*ient_canonical_maps[[:>:]];<a href="postconf.5.html#recipient_canonical_maps">&</a>;g
-       s;[[:<:]]recip[-</bB>]*\n* *[<bB>]*ient_delim[-</bB>]*\n* *[<bB>]*iter[[:>:]];<a href="postconf.5.html#recipient_delimiter">&<\/a>;g
-       s;[[:<:]]reject_code[[:>:]];<a href="postconf.5.html#reject_code">&</a>;g
-       s;[[:<:]]relay_domains[[:>:]];<a href="postconf.5.html#relay_domains">&</a>;g
-       s;[[:<:]]relay_domains_reject_code[[:>:]];<a href="postconf.5.html#relay_domains_reject_code">&</a>;g
-       s;[[:<:]]relay_recipi[-</bB>]*\n*[ <bB>]*ent_maps[[:>:]];<a href="postconf.5.html#relay_recipient_maps">&</a>;g
-       s;[[:<:]]relay_transport[[:>:]];<a href="postconf.5.html#relay_transport">&</a>;g
-       s;[[:<:]]relayhost[[:>:]];<a href="postconf.5.html#relayhost">&</a>;g
-       s;[[:<:]]relocated_maps[[:>:]];<a href="postconf.5.html#relocated_maps">&</a>;g
-       s;[[:<:]]require_home_directory[[:>:]];<a href="postconf.5.html#require_home_directory">&</a>;g
-       s;[[:<:]]resolve_dequoted_address[[:>:]];<a href="postconf.5.html#resolve_dequoted_address">&</a>;g
-       s;[[:<:]]rewrite_service_name[[:>:]];<a href="postconf.5.html#rewrite_service_name">&</a>;g
-       s;[[:<:]]sample_directory[[:>:]];<a href="postconf.5.html#sample_directory">&</a>;g
-       s;[[:<:]]sender_based_routing[[:>:]];<a href="postconf.5.html#sender_based_routing">&</a>;g
-       s;[[:<:]]sender_bcc_maps[[:>:]];<a href="postconf.5.html#sender_bcc_maps">&</a>;g
-       s;[[:<:]]sender_canonical_maps[[:>:]];<a href="postconf.5.html#sender_canonical_maps">&</a>;g
-       s;[[:<:]]sendmail_path[[:>:]];<a href="postconf.5.html#sendmail_path">&</a>;g
-       s;[[:<:]]service_throttle_time[[:>:]];<a href="postconf.5.html#service_throttle_time">&</a>;g
-       s;[[:<:]]setgid_group[[:>:]];<a href="postconf.5.html#setgid_group">&</a>;g
-       s;[[:<:]]show_user_unknown_table_name[[:>:]];<a href="postconf.5.html#show_user_unknown_table_name">&</a>;g
-       s;[[:<:]]showq_service_name[[:>:]];<a href="postconf.5.html#showq_service_name">&</a>;g
-       s;[[:<:]]smtp_always_send_ehlo[[:>:]];<a href="postconf.5.html#smtp_always_send_ehlo">&</a>;g
-       s;[[:<:]]smtp_bind_address[[:>:]];<a href="postconf.5.html#smtp_bind_address">&</a>;g
-       s;[[:<:]]smtp_connect_timeout[[:>:]];<a href="postconf.5.html#smtp_connect_timeout">&</a>;g
-       s;[[:<:]]smtp_data_done_timeout[[:>:]];<a href="postconf.5.html#smtp_data_done_timeout">&</a>;g
-       s;[[:<:]]smtp_data_init_timeout[[:>:]];<a href="postconf.5.html#smtp_data_init_timeout">&</a>;g
-       s;[[:<:]]smtp_data_xfer_timeout[[:>:]];<a href="postconf.5.html#smtp_data_xfer_timeout">&</a>;g
-       s;[[:<:]]smtp_defer_if_no_mx_address_found[[:>:]];<a href="postconf.5.html#smtp_defer_if_no_mx_address_found">&</a>;g
-       s;[[:<:]]lmtp_destination_concurrency_limit[[:>:]];<a href="postconf.5.html#lmtp_destination_concurrency_limit">&</a>;g
-       s;[[:<:]]lmtp_destination_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#lmtp_destination_recipient_limit">&</a>;g
-       s;[[:<:]]relay_destination_concurrency_limit[[:>:]];<a href="postconf.5.html#relay_destination_concurrency_limit">&</a>;g
-       s;[[:<:]]relay_destination_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#relay_destination_recipient_limit">&</a>;g
-       s;[[:<:]]resolve_null_domain[[:>:]];<a href="postconf.5.html#resolve_null_domain">&</a>;g
-       s;[[:<:]]smtp_destination_concurrency_limit[[:>:]];<a href="postconf.5.html#smtp_destination_concurrency_limit">&</a>;g
-       s;[[:<:]]smtp_destination_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#smtp_destination_recipient_limit">&</a>;g
-       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_destination_concurrency_limit[[:>:]];<a href="postconf.5.html#virtual_destination_concurrency_limit">&</a>;g
-       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_destination_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#virtual_destination_recipient_limit">&</a>;g
-       s;[[:<:]]smtp_helo_name[[:>:]];<a href="postconf.5.html#smtp_helo_name">&</a>;g
-       s;[[:<:]]smtp_helo_timeout[[:>:]];<a href="postconf.5.html#smtp_helo_timeout">&</a>;g
-       s;[[:<:]]smtp_host_lookup[[:>:]];<a href="postconf.5.html#smtp_host_lookup">&</a>;g
-       s;[[:<:]]smtp_line_length_limit[[:>:]];<a href="postconf.5.html#smtp_line_length_limit">&</a>;g
-       s;[[:<:]]smtp_mail_timeout[[:>:]];<a href="postconf.5.html#smtp_mail_timeout">&</a>;g
-       s;[[:<:]]smtp_mx_address_limit[[:>:]];<a href="postconf.5.html#smtp_mx_address_limit">&</a>;g
-       s;[[:<:]]smtp_mx_session_limit[[:>:]];<a href="postconf.5.html#smtp_mx_session_limit">&</a>;g
-       s;[[:<:]]smtp_never_send_ehlo[[:>:]];<a href="postconf.5.html#smtp_never_send_ehlo">&</a>;g
-       s;[[:<:]]smtp_pix_workaround_delay_time[[:>:]];<a href="postconf.5.html#smtp_pix_workaround_delay_time">&</a>;g
-       s;[[:<:]]smtp_pix_workaround_threshold_time[[:>:]];<a href="postconf.5.html#smtp_pix_workaround_threshold_time">&</a>;g
-       s;[[:<:]]smtp_quit_timeout[[:>:]];<a href="postconf.5.html#smtp_quit_timeout">&</a>;g
-       s;[[:<:]]smtp_quote_rfc821_envelope[[:>:]];<a href="postconf.5.html#smtp_quote_rfc821_envelope">&</a>;g
-       s;[[:<:]]smtp_randomize_addresses[[:>:]];<a href="postconf.5.html#smtp_randomize_addresses">&</a>;g
-       s;[[:<:]]smtp_rcpt_timeout[[:>:]];<a href="postconf.5.html#smtp_rcpt_timeout">&</a>;g
-       s;[[:<:]]smtp_rset_timeout[[:>:]];<a href="postconf.5.html#smtp_rset_timeout">&</a>;g
-       s;[[:<:]]smtp_sasl_auth_enable[[:>:]];<a href="postconf.5.html#smtp_sasl_auth_enable">&</a>;g
-       s;[[:<:]]smtp_sasl_password_maps[[:>:]];<a href="postconf.5.html#smtp_sasl_password_maps">&</a>;g
-       s;[[:<:]]smtp_sasl_security_options[[:>:]];<a href="postconf.5.html#smtp_sasl_security_options">&</a>;g
-       s;[[:<:]]smtp_send_xforward_command[[:>:]];<a href="postconf.5.html#smtp_send_xforward_command">&</a>;g
-       s;[[:<:]]smtp_skip_4xx_greeting[[:>:]];<a href="postconf.5.html#smtp_skip_4xx_greeting">&</a>;g
-       s;[[:<:]]smtp_skip_5xx_greeting[[:>:]];<a href="postconf.5.html#smtp_skip_5xx_greeting">&</a>;g
-       s;[[:<:]]smtp_skip_quit_response[[:>:]];<a href="postconf.5.html#smtp_skip_quit_response">&</a>;g
-       s;[[:<:]]smtp_xforward_timeout[[:>:]];<a href="postconf.5.html#smtp_xforward_timeout">&</a>;g
-       s;[[:<:]]smtpd_autho[-</bB>]*\n*[ <bB>]*rized_verp_clients[[:>:]];<a href="postconf.5.html#smtpd_authorized_verp_clients">&</a>;g
-       s;[[:<:]]smtpd_autho[-</bB>]*\n*[ <bB>]*rized_xclient_hosts[[:>:]];<a href="postconf.5.html#smtpd_authorized_xclient_hosts">&</a>;g
-       s;[[:<:]]smtpd_autho[-</bB>]*\n*[ <bB>]*rized_xforward_hosts[[:>:]];<a href="postconf.5.html#smtpd_authorized_xforward_hosts">&</a>;g
-       s;[[:<:]]smtpd_banner[[:>:]];<a href="postconf.5.html#smtpd_banner">&</a>;g
-       s;[[:<:]]smtpd_client_connection_count_limit[[:>:]];<a href="postconf.5.html#smtpd_client_connection_count_limit">&</a>;g
-       s;[[:<:]]smtpd_client_connection_limit_exceptions[[:>:]];<a href="postconf.5.html#smtpd_client_connection_limit_exceptions">&</a>;g
-       s;[[:<:]]smtpd_client_connection_rate_limit[[:>:]];<a href="postconf.5.html#smtpd_client_connection_rate_limit">&</a>;g
-       s;[[:<:]]smtpd_client_restrictions[[:>:]];<a href="postconf.5.html#smtpd_client_restrictions">&</a>;g
-       s;[[:<:]]smtpd_data_restrictions[[:>:]];<a href="postconf.5.html#smtpd_data_restrictions">&</a>;g
-       s;[[:<:]]smtpd_delay_reject[[:>:]];<a href="postconf.5.html#smtpd_delay_reject">&</a>;g
-       s;[[:<:]]smtpd_error_sleep_time[[:>:]];<a href="postconf.5.html#smtpd_error_sleep_time">&</a>;g
-       s;[[:<:]]smtpd_etrn_restrictions[[:>:]];<a href="postconf.5.html#smtpd_etrn_restrictions">&</a>;g
-       s;[[:<:]]smtpd_expansion_filter[[:>:]];<a href="postconf.5.html#smtpd_expansion_filter">&</a>;g
-       s;[[:<:]]smtpd_hard_error_limit[[:>:]];<a href="postconf.5.html#smtpd_hard_error_limit">&</a>;g
-       s;[[:<:]]smtpd_helo_required[[:>:]];<a href="postconf.5.html#smtpd_helo_required">&</a>;g
-       s;[[:<:]]smtpd_helo_restrictions[[:>:]];<a href="postconf.5.html#smtpd_helo_restrictions">&</a>;g
-       s;[[:<:]]smtpd_history_flush_threshold[[:>:]];<a href="postconf.5.html#smtpd_history_flush_threshold">&</a>;g
-       s;[[:<:]]smtpd_junk_command_limit[[:>:]];<a href="postconf.5.html#smtpd_junk_command_limit">&</a>;g
-       s;[[:<:]]smtpd_noop_commands[[:>:]];<a href="postconf.5.html#smtpd_noop_commands">&</a>;g
-       s;[[:<:]]smtpd_null_access_lookup_key[[:>:]];<a href="postconf.5.html#smtpd_null_access_lookup_key">&</a>;g
-       s;[[:<:]]smtpd_recipient_overshoot_limit[[:>:]];<a href="postconf.5.html#smtpd_recipient_overshoot_limit">&</a>;g
-       s;[[:<:]]smtpd_policy_service_max_idle[[:>:]];<a href="postconf.5.html#smtpd_policy_service_max_idle">&</a>;g
-       s;[[:<:]]smtpd_policy_service_max_ttl[[:>:]];<a href="postconf.5.html#smtpd_policy_service_max_ttl">&</a>;g
-       s;[[:<:]]smtpd_policy_service_timeout[[:>:]];<a href="postconf.5.html#smtpd_policy_service_timeout">&</a>;g
-       s;[[:<:]]smtpd_proxy_ehlo[[:>:]];<a href="postconf.5.html#smtpd_proxy_ehlo">&</a>;g
-       s;[[:<:]]smtpd_proxy_filter[[:>:]];<a href="postconf.5.html#smtpd_proxy_filter">&</a>;g
-       s;[[:<:]]smtpd_proxy_timeout[[:>:]];<a href="postconf.5.html#smtpd_proxy_timeout">&</a>;g
-       s;[[:<:]]smtpd_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#smtpd_recipient_limit">&</a>;g
-       s;[[:<:]]smtpd_recip[-</bB>]*\n* *[<bB>]*ient_restrictions[[:>:]];<a href="postconf.5.html#smtpd_recipient_restrictions">&</a>;g
-       s;[[:<:]]smtpd_reject_unlisted_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#smtpd_reject_unlisted_recipient">&</a>;g
-       s;[[:<:]]smtpd_reject_unlisted_sender[[:>:]];<a href="postconf.5.html#smtpd_reject_unlisted_sender">&</a>;g
-       s;[[:<:]]smtpd_restriction_classes[[:>:]];<a href="postconf.5.html#smtpd_restriction_classes">&</a>;g
-       s;[[:<:]]smtpd_sasl_application_name[[:>:]];<a href="postconf.5.html#smtpd_sasl_application_name">&</a>;g
-       s;[[:<:]]smtpd_sasl_auth_enable[[:>:]];<a href="postconf.5.html#smtpd_sasl_auth_enable">&</a>;g
-       s;[[:<:]]smtpd_sasl_exceptions_networks[[:>:]];<a href="postconf.5.html#smtpd_sasl_exceptions_networks">&</a>;g
-       s;[[:<:]]smtpd_sasl_local_domain[[:>:]];<a href="postconf.5.html#smtpd_sasl_local_domain">&</a>;g
-       s;[[:<:]]smtpd_sasl_security_options[[:>:]];<a href="postconf.5.html#smtpd_sasl_security_options">&</a>;g
-       s;[[:<:]]smtpd_sender_login_maps[[:>:]];<a href="postconf.5.html#smtpd_sender_login_maps">&</a>;g
-       s;[[:<:]]smtpd_sender_restrictions[[:>:]];<a href="postconf.5.html#smtpd_sender_restrictions">&</a>;g
-       s;[[:<:]]smtpd_soft_error_limit[[:>:]];<a href="postconf.5.html#smtpd_soft_error_limit">&</a>;g
-       s;[[:<:]]smtpd_timeout[[:>:]];<a href="postconf.5.html#smtpd_timeout">&</a>;g
-       s;[[:<:]]soft_bounce[[:>:]];<a href="postconf.5.html#soft_bounce">&</a>;g
-       s;[[:<:]]stale_lock_time[[:>:]];<a href="postconf.5.html#stale_lock_time">&</a>;g
-       s;[[:<:]]strict_7bit_headers[[:>:]];<a href="postconf.5.html#strict_7bit_headers">&</a>;g
-       s;[[:<:]]strict_8bitmime[[:>:]];<a href="postconf.5.html#strict_8bitmime">&</a>;g
-       s;[[:<:]]strict_8bitmime_body[[:>:]];<a href="postconf.5.html#strict_8bitmime_body">&</a>;g
-       s;[[:<:]]strict_mime_encoding_domain[[:>:]];<a href="postconf.5.html#strict_mime_encoding_domain">&</a>;g
-       s;[[:<:]]strict_rfc821_envelopes[[:>:]];<a href="postconf.5.html#strict_rfc821_envelopes">&</a>;g
-       s;[[:<:]]sun_mailtool_compatibility[[:>:]];<a href="postconf.5.html#sun_mailtool_compatibility">&</a>;g
-       s;[[:<:]]swap_bangpath[[:>:]];<a href="postconf.5.html#swap_bangpath">&</a>;g
-       s;[[:<:]]syslog_facility[[:>:]];<a href="postconf.5.html#syslog_facility">&</a>;g
-       s;[[:<:]]syslog_name[[:>:]];<a href="postconf.5.html#syslog_name">&</a>;g
-       s;[[:<:]]trace_service_name[[:>:]];<a href="postconf.5.html#trace_service_name">&</a>;g
-       s;[[:<:]]transport_maps[[:>:]];<a href="postconf.5.html#transport_maps">&</a>;g
-       s;[[:<:]]transport_retry_time[[:>:]];<a href="postconf.5.html#transport_retry_time">&</a>;g
-       s;[[:<:]]trigger_timeout[[:>:]];<a href="postconf.5.html#trigger_timeout">&</a>;g
-       s;[[:<:]]undisclosed_recip[-</bB>]*\n* *[<bB>]*ients_header[[:>:]];<a href="postconf.5.html#undisclosed_recipients_header">&</a>;g
-       s;[[:<:]]unknown_address_reject_code[[:>:]];<a href="postconf.5.html#unknown_address_reject_code">&</a>;g
-       s;[[:<:]]unknown_client_reject_code[[:>:]];<a href="postconf.5.html#unknown_client_reject_code">&</a>;g
-       s;[[:<:]]unknown_hostname_reject_code[[:>:]];<a href="postconf.5.html#unknown_hostname_reject_code">&</a>;g
-       s;[[:<:]]unknown_local_recip[-</bB>]*\n* *[<bB>]*ient_reject_code[[:>:]];<a href="postconf.5.html#unknown_local_recipient_reject_code">&</a>;g
-       s;[[:<:]]unknown_relay_recipi[-</bB>]*\n*[ <bB>]*ent_reject_code[[:>:]];<a href="postconf.5.html#unknown_relay_recipient_reject_code">&</a>;g
-       s;[[:<:]]unknown_virtual_alias_reject_code[[:>:]];<a href="postconf.5.html#unknown_virtual_alias_reject_code">&</a>;g
-       s;[[:<:]]unknown_virtual_mail[-</bB>]*\n* *[<bB>]*box_reject_code[[:>:]];<a href="postconf.5.html#unknown_virtual_mailbox_reject_code">&</a>;g
-       s;[[:<:]]unverified_recip[-</bB>]*\n* *[<bB>]*ient_reject_code[[:>:]];<a href="postconf.5.html#unverified_recipient_reject_code">&</a>;g
-       s;[[:<:]]unverified_sender_reject_code[[:>:]];<a href="postconf.5.html#unverified_sender_reject_code">&</a>;g
-       s;[[:<:]]verp_delimiter_filter[[:>:]];<a href="postconf.5.html#verp_delimiter_filter">&</a>;g
-       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_alias_domains[[:>:]];<a href="postconf.5.html#virtual_alias_domains">&</a>;g
-       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_alias_expansion_limit[[:>:]];<a href="postconf.5.html#virtual_alias_expansion_limit">&</a>;g
-       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_alias_maps[[:>:]];<a href="postconf.5.html#virtual_alias_maps">&</a>;g
-       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_maps[[:>:]];<a href="postconf.5.html#virtual_maps">&</a>;g
-       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_alias_recursion_limit[[:>:]];<a href="postconf.5.html#virtual_alias_recursion_limit">&</a>;g
-       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_gid_maps[[:>:]];<a href="postconf.5.html#virtual_gid_maps">&</a>;g
-       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_mail[-</bB>]*\n* *[<bB>]*box_base[[:>:]];<a href="postconf.5.html#virtual_mailbox_base">&</a>;g
-       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_mail[-</bB>]*\n* *[<bB>]*box_domains[[:>:]];<a href="postconf.5.html#virtual_mailbox_domains">&</a>;g
-       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_mail[-</bB>]*\n* *[<bB>]*box_limit[[:>:]];<a href="postconf.5.html#virtual_mailbox_limit">&</a>;g
-       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_mail[-</bB>]*\n* *[<bB>]*box_lock[[:>:]];<a href="postconf.5.html#virtual_mailbox_lock">&</a>;g
-       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_mail[-</bB>]*\n* *[<bB>]*box_maps[[:>:]];<a href="postconf.5.html#virtual_mailbox_maps">&</a>;g
-       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_minimum_uid[[:>:]];<a href="postconf.5.html#virtual_minimum_uid">&</a>;g
-       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_transport[[:>:]];<a href="postconf.5.html#virtual_transport">&</a>;g
-       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_uid_maps[[:>:]];<a href="postconf.5.html#virtual_uid_maps">&</a>;g
-
-       # Undo hyperlinks of manual pages with the same name as parameters.
-
-       s/<a href="[^"]*">\([^<]*\)<\/a>(/\1(/g
-
-       # Undo hyperlinks of pathnames thay collide with parameter names.
-
-       s/\/<a href="[^"]*">\([^<]*\)<\/a>/\/\1/g
-
-       # Hyperlink Postfix manual page references.
-
-       s/[<bB>]*anvil[</bB>]*(8)/<a href="anvil.8.html">&<\/a>/g
-       s/[<bB>]*bounce[</bB>]*(8)/<a href="bounce.8.html">&<\/a>/g
-       s/[<bB>]*cleanup[</bB>]*(8)/<a href="cleanup.8.html">&<\/a>/g
-       s/[<bB>]*defer[</bB>]*(8)/<a href="defer.8.html">&<\/a>/g
-       s/[<bB>]*error[</bB>]*(8)/<a href="error.8.html">&<\/a>/g
-       s/[<bB>]*flush[</bB>]*(8)/<a href="flush.8.html">&<\/a>/g
-       s/[<bB>]*lmtp[</bB>]*(8)/<a href="lmtp.8.html">&<\/a>/g
-       s/[<bB>]*local[</bB>]*(8)/<a href="local.8.html">&<\/a>/g
-       s/[<bB>]*mas[-</bB>]*\n* *[<bB>]*ter[</bB>]*(8)/<a href="master.8.html">&<\/a>/g
-       s/[<bB>]*pickup[</bB>]*(8)/<a href="pickup.8.html">&<\/a>/g
-       s/[<bB>]*pipe[</bB>]*(8)/<a href="pipe.8.html">&<\/a>/g
-       s/[<bB>]*oqmgr[</bB>]*(8)/<a href="qmgr.8.html">&<\/a>/g
-       s/[<bB>]*[[:<:]]qmgr[</bB>]*(8)/<a href="qmgr.8.html">&<\/a>/g
-       s/[<bB>]*qmqpd[</bB>]*(8)/<a href="qmqpd.8.html">&<\/a>/g
-       s/[<bB>]*showq[</bB>]*(8)/<a href="showq.8.html">&<\/a>/g
-       s/[<bB>]*smtp[</bB>]*(8)/<a href="smtp.8.html">&<\/a>/g
-       s/[<bB>]*smtpd[</bB>]*(8)/<a href="smtpd.8.html">&<\/a>/g
-       s/[<bB>]*spawn[</bB>]*(8)/<a href="spawn.8.html">&<\/a>/g
-       s/[<bB>]*trace[</bB>]*(8)/<a href="trace.8.html">&<\/a>/g
-       s/[<bB>]*trivial- *<br> *rewrite[</bB>]*(8)/<a href="trivial-rewrite.8.html">&<\/a>/g
-       s/[<bB>]*triv[-</bB>]*\n* *[<bB>]*ial-[</bB>]*\n* *[<bB>]*rewrite[</bB>]*(8)/<a href="trivial-rewrite.8.html">&<\/a>/g
-       s/[<bB>]*mailq[</bB>]*(1)/<a href="mailq.1.html">&<\/a>/g
-       s/[<bB>]*newaliases[</bB>]*(1)/<a href="newaliases.1.html">&<\/a>/g
-       s/[<bB>]*postalias[</bB>]*(1)/<a href="postalias.1.html">&<\/a>/g
-       s/[<bB>]*postcat[</bB>]*(1)/<a href="postcat.1.html">&<\/a>/g
-       s/[<bB>]*postconf[</bB>]*(1)/<a href="postconf.1.html">&<\/a>/g
-       s/[<bB>]*postdrop[</bB>]*(1)/<a href="postdrop.1.html">&<\/a>/g
-       s/[<bB>]*postfix[</bB>]*(1)/<a href="postfix.1.html">&<\/a>/g
-       s/[<bB>]*postkick[</bB>]*(1)/<a href="postkick.1.html">&<\/a>/g
-       s/[<bB>]*postlock[</bB>]*(1)/<a href="postlock.1.html">&<\/a>/g
-       s/[<bB>]*postlog[</bB>]*(1)/<a href="postlog.1.html">&<\/a>/g
-       s/[<bB>]*postmap[</bB>]*(1)/<a href="postmap.1.html">&<\/a>/g
-       s/[<bB>]*postqueue[</bB>]*(1)/<a href="postqueue.1.html">&<\/a>/g
-       s/[<bB>]*postsuper[</bB>]*(1)/<a href="postsuper.1.html">&<\/a>/g
-       s/[<bB>]*send[-</bB>]*\n*[ <bB>]*mail[</bB>]*(1)/<a href="sendmail.1.html">&<\/a>/g
-       s/[<bB>]*smtp-[</bB>]*\n* *[<bB>]*source[</bB>]*(1)/<a href="smtp-source.1.html">&<\/a>/g
-       s/[<bB>]*smtp-[</bB>]*\n* *[<bB>]*sink[</bB>]*(1)/<a href="smtp-sink.1.html">&<\/a>/g
-       s/[<bB>]*qmqp-[</bB>]*\n* *[<bB>]*source[</bB>]*(1)/<a href="qmqp-source.1.html">&<\/a>/g
-       s/[<bB>]*qmqp-[</bB>]*\n* *[<bB>]*sink[</bB>]*(1)/<a href="qmqp-sink.1.html">&<\/a>/g
-       s/[<bB>]*qshape[</bB>]*(1)/<a href="qshape.1.html">&<\/a>/g
-       s/[<bB>]*access[</bB>]*(5)/<a href="access.5.html">&<\/a>/g
-       s/[<bB>]*aliases[</bB>]*(5)/<a href="aliases.5.html">&<\/a>/g
-       s/[<bB>]*canonical[</bB>]*(5)/<a href="canonical.5.html">&<\/a>/g
-       s/[<bB>]*etrn[</bB>]*(5)/<a href="etrn.5.html">&<\/a>/g
-       s/[<bB>]*ldap[</bBiI>]*_[</iIbB>]*table[</bB>]*(5)/<a href="ldap_table.5.html">&<\/a>/g
-       s/[<bB>]*mysql[</bBiI>]*_[</iIbB>]*table[</bB>]*(5)/<a href="mysql_table.5.html">&<\/a>/g
-       s/[<bB>]*pcre[</bBiI>]*_[</iIbB>]*table[</bB>]*(5)/<a href="pcre_table.5.html">&<\/a>/g
-       s/[<bB>]*pgsql[</bBiI>]*_[</iIbB>]*table[</bB>]*(5)/<a href="pgsql_table.5.html">&<\/a>/g
-       s/[<bB>]*postconf[</bB>]*(5)/<a href="postconf.5.html">&<\/a>/g
-       s/[<bB>]*proxymap[</bB>]*(8)/<a href="proxymap.8.html">&<\/a>/g
-       s/[<bB>]*reg[-</bB>]*\n*[ <bB>]*exp[</bBiI>]*_[</iIbB>]*table[</bB>]*(5)/<a href="regexp_table.5.html">&<\/a>/g
-       s/[<bB>]*relocated[</bB>]*(5)/<a href="relocated.5.html">&<\/a>/g
-       s/[<bB>]*trans[-</bB>]*\n*[ <bB>]*port[</bB>]*(5)/<a href="transport.5.html">&<\/a>/g
-       s/[<bB>]*verify[</bB>]*(8)/<a href="verify.8.html">&<\/a>/g
-       s/[<bB>]*virtual[</bB>]*(5)/<a href="virtual.5.html">&<\/a>/g
-       s/[<bB>]*virtual[</bB>]*(8)/<a href="virtual.8.html">&<\/a>/g
-       s/[<bB>]*cidr_table[</bB>]*(5)/<a href="cidr_table.5.html">&<\/a>/g
-       s/[<bB>]*tcp_table[</bB>]*(5)/<a href="tcp_table.5.html">&<\/a>/g
-       s/[<bB>]*body_checks[</bB>]*(5)/<a href="header_checks.5.html">&<\/a>/g
-       s/[<bB>]*header_checks[</bB>]*(5)/<a href="header_checks.5.html">&<\/a>/g
-
-       # Hyperlink README document names
-
-       s/[[:<:]][A-Z_]*_README[[:>:]]/<a href="&.html">&<\/a>/g
-       s/[[:<:]]INSTALL[[:>:]]/<a href="&.html">&<\/a>/g
-       s/[[:<:]]OVERVIEW[[:>:]]/<a href="&.html">&<\/a>/g
-       s/"type:table"/"<a href="DATABASE_README.html">type:table<\/a>"/g
-
-       # Split manual page hyperlinks across newlines
-
-       s/\(<a href="[^"]*">\)\([<bB>]*[-a-z0-9_]*[-</bB>]*\)\(\n *\)\([<bB>]*[-a-z0-9_]*[</bB>]*([0-9])\)\(<\/a>\)/\1\2\5\3\1\4\5/
-
-       # Access restrictions - generic
-
-       s;[[:<:]]check_policy_service[[:>:]];<a href="postconf.5.html#check_policy_service">&</a>;g
-       s;[[:<:]]defer_if_permit[[:>:]];<a href="postconf.5.html#defer_if_permit">&</a>;g
-       s;[[:<:]]defer_if_reject[[:>:]];<a href="postconf.5.html#defer_if_reject">&</a>;g
-       s;[[:<:]]reject_multi_recip[-</bB>]*\n* *[<bB>]*ient_bounce[[:>:]];<a href="postconf.5.html#reject_multi_recipient_bounce">&</a>;g
-       s;[[:<:]]reject_unauth_pipelining[[:>:]];<a href="postconf.5.html#reject_unauth_pipelining">&</a>;g
-       s;[[:<:]]warn_if_reject[[:>:]];<a href="postconf.5.html#warn_if_reject">&</a>;g
-
-       # Access restrictions - client
-
-       s;[[:<:]]check_client_access[[:>:]];<a href="postconf.5.html#check_client_access">&</a>;g
-       s;[[:<:]]permit_mynetworks[[:>:]];<a href="postconf.5.html#permit_mynetworks">&</a>;g
-       s;[[:<:]]reject_unknown_client[[:>:]];<a href="postconf.5.html#reject_unknown_client">&</a>;g
-       s;[[:<:]]reject_rbl_client[[:>:]];<a href="postconf.5.html#reject_rbl_client">&</a>;g
-       s;[[:<:]]reject_rhsbl_client[[:>:]];<a href="postconf.5.html#reject_rhsbl_client">&</a>;g
-
-       # Access restrictions - helo
-
-       s;[[:<:]]check_helo_access[[:>:]];<a href="postconf.5.html#check_helo_access">&</a>;g
-       s;[[:<:]]reject_invalid_hostname[[:>:]];<a href="postconf.5.html#reject_invalid_hostname">&</a>;g
-       s;[[:<:]]reject_non_fqdn_hostname[[:>:]];<a href="postconf.5.html#reject_non_fqdn_hostname">&</a>;g
-       s;[[:<:]]reject_unknown_hostname[[:>:]];<a href="postconf.5.html#reject_unknown_hostname">&</a>;g
-
-       # Access restrictions - sender
-
-       s;[[:<:]]check_sender_access[[:>:]];<a href="postconf.5.html#check_sender_access">&</a>;g
-       s;[[:<:]]\(reject_authenti\)\([-</bB>]*\n*[ <bB>]*\)\(cated_sender_login_mismatch\)[[:>:]];<a href="postconf.5.html#reject_authenticated_sender_login_mismatch">\1<\/a>\2<a href="postconf.5.html#reject_authenticated_sender_login_mismatch">\3</a>;g
-       s;[[:<:]]reject_non_fqdn_sender[[:>:]];<a href="postconf.5.html#reject_non_fqdn_sender">&</a>;g
-       s;[[:<:]]reject_rhsbl_sender[[:>:]];<a href="postconf.5.html#reject_rhsbl_sender">&</a>;g
-       s;[[:<:]]reject_sender_login_mis[-</bB>]*\n*[ <bB>]*match[[:>:]];<a href="postconf.5.html#reject_sender_login_mismatch">&</a>;g
-       s;[[:<:]]reject_unauthenticated_sender_login_mismatch[[:>:]];<a href="postconf.5.html#reject_unauthenticated_sender_login_mismatch">&</a>;g
-       s;[[:<:]]reject_unknown_sender_domain[[:>:]];<a href="postconf.5.html#reject_unknown_sender_domain">&</a>;g
-       s;[[:<:]]reject_unlisted_sender[[:>:]];<a href="postconf.5.html#reject_unlisted_sender">&</a>;g
-       s;[[:<:]]reject_unveri[-</bB>]*\n*[ <bB>]*fied_sender[[:>:]];<a href="postconf.5.html#reject_unverified_sender">&</a>;g
-
-       # Access restrictions - recip[-</bB>]*\n* *[<bB>]*ient
-
-       s;[[:<:]]check_recip[-</bB>]*\n* *[<bB>]*ient_access[[:>:]];<a href="postconf.5.html#check_recipient_access">&</a>;g
-       s;[[:<:]]check_recip[-</bB>]*\n* *[<bB>]*ient_mx_access[[:>:]];<a href="postconf.5.html#check_recipient_mx_access">&</a>;g
-       s;[[:<:]]check_recip[-</bB>]*\n* *[<bB>]*ient_ns_access[[:>:]];<a href="postconf.5.html#check_recipient_ns_access">&</a>;g
-       s;[[:<:]]permit_auth_destination[[:>:]];<a href="postconf.5.html#permit_auth_destination">&</a>;g
-       s;[[:<:]]permit_mx_backup[[:>:]];<a href="postconf.5.html#permit_mx_backup">&</a>;g
-       s;[[:<:]]reject_non_fqdn_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#reject_non_fqdn_recipient">&</a>;g
-       s;[[:<:]]reject_rhsbl_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#reject_rhsbl_recipient">&</a>;g
-       s;[[:<:]]reject_unauth_destination[[:>:]];<a href="postconf.5.html#reject_unauth_destination">&</a>;g
-       s;[[:<:]]reject_unknown_recipi[-</bB>]*\n*[ <bB>]*ent_domain[[:>:]];<a href="postconf.5.html#reject_unknown_recipient_domain">&</a>;g
-       s;[[:<:]]reject_unlisted_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#reject_unlisted_recipient">&</a>;g
-       s;[[:<:]]reject_unveri[-</bB>]*\n*[ <bB>]*fied_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#reject_unverified_recipient">&</a>;g
-
-       # Access restrictions - etrn
-
-       s;[[:<:]]check_etrn_access[[:>:]];<a href="postconf.5.html#check_etrn_access">&</a>;g
-
-       # Split parameter or restriction hyperlinks across line breaks
-
-       s/\(<a href="[^"]*">\)\([-a-z0-9_]*\)[[:>:]]\([-</bB>]*\n *[<bB>]*\)[[:<:]]\([-a-z0-9_]*\)\(<\/a>\)/\1\2\5\3\1\4\5/
-
-       # Glue manual/parameter/restriction hyperlinks without line breaks.
-
-       s/\(<a href="[^"]*">\)\([<bB>]*[-a-zA-Z0-9._]*[<bB>]*\)<\/a>\1/\1\2/g
-       s/\(<a href="[^"]*">\)\([<bB>]*[-a-zA-Z0-9._]*[<bB>]*\)<\/a>\1/\1\2/g
-
-       # Hyperlink URLs and RFC documents
-
-       s/\(http:\/\/[^ ,"()]*[^ ,"():;!?.]\)/<a href="\1">\1<\/a>/
-       s/\(ftp:\/\/[^ ,"()]*[^ ,"():;!?.]\)/<a href="\1">\1<\/a>/
-       s/[[:<:]]RFC *\([1-9][0-9]*\)/<a href="http:\/\/www.faqs.org\/rfcs\/rfc\1.html">&<\/a>/
-
-       # Hyperlink phrases not in headers.
-
-       /<\/*h[0-9]>/{
-               p
-               d
-       }
-       s/canonical domains*/<a href="VIRTUAL_README.html#canonical">&<\/a>/
-       s/hosted domains*/<a href="VIRTUAL_README.html#canonical">&<\/a>/
-       #s/other domains*/<a href="VIRTUAL_README.html#canonical">&<\/a>/
-       s/virtual alias example/<a href="VIRTUAL_README.html#virtual_alias">&<\/a>/
-       s/virtual mailbox example/<a href="VIRTUAL_README.html#virtual_mailbox">&<\/a>/
-       s/local domains*/<a href="ADDRESS_CLASS_README.html#local_domain_class">&<\/a>/
-       s/virtual alias domains*/<a href="ADDRESS_CLASS_README.html#virtual_alias_class">&<\/a>/
-       s/virtual ALIAS domains*/<a href="ADDRESS_CLASS_README.html#virtual_alias_class">&<\/a>/
-       s/virtual mailbox domains*/<a href="ADDRESS_CLASS_README.html#virtual_mailbox_class">&<\/a>/
-       s/virtual MAILBOX domains*/<a href="ADDRESS_CLASS_README.html#virtual_mailbox_class">&<\/a>/
-       s/relay domains*/<a href="ADDRESS_CLASS_README.html#relay_domain_class">&<\/a>/
-       s/default domains*/<a href="ADDRESS_CLASS_README.html#default_domain_class">&<\/a>/
-       s/mydestination domains*/<a href="ADDRESS_CLASS_README.html#local_domain_class">&<\/a>/
-       s/[[:<:]]"*maildrop"* *queues*[[:>:]]/<a href="QSHAPE_README.html#maildrop_queue">&<\/a>/
-       s/[[:<:]]\("*maildrop"*\),/<a href="QSHAPE_README.html#maildrop_queue">\1<\/a>,/
-       s/[[:<:]]\("*incoming"*\) and[[:>:]]/<a href="QSHAPE_README.html#incoming_queue">\1<\/a> and/
-       s/[[:<:]]\("*incoming"*\) or[[:>:]]/<a href="QSHAPE_README.html#incoming_queue">\1<\/a> or/
-       s/[[:<:]]"*incoming"* *queues*[[:>:]]/<a href="QSHAPE_README.html#incoming_queue">&<\/a>/
-       s/<b> *incoming *<\/b> *queues*[[:>:]]/<a href="QSHAPE_README.html#incoming_queue">&<\/a>/
-       s/[[:<:]]"*active"* *queues*[[:>:]]/<a href="QSHAPE_README.html#active_queue">&<\/a>/
-       s/[[:<:]]"*deferred"* *queues*[[:>:]]/<a href="QSHAPE_README.html#deferred_queue">&<\/a>/
-       s/[[:<:]]"*hold"* *queues*[[:>:]]/<a href="QSHAPE_README.html#hold_queue">&<\/a>/
-       s/[[:<:]]\("*hold"*\),/<a href="QSHAPE_README.html#hold_queue">\1<\/a>,/
-
-       # Hyperlink map types.
-
-       s/[[:<:]]\(cidr\):/<a href="cidr_table.5.html">\1<\/a>:/g
-       s/[[:<:]]\(pcre\):/<a href="pcre_table.5.html">\1<\/a>:/g
-       s/[[:<:]]\(proxy\):/<a href="proxymap.8.html">\1<\/a>:/g
-       s/[[:<:]]\(pgsql\):/<a href="pgsql_table.5.html">\1<\/a>:/g
-       s/[[:<:]]\(mysql\):/<a href="mysql_table.5.html">\1<\/a>:/g
-       s/[[:<:]]\(ldap\):/<a href="ldap_table.5.html">\1<\/a>:/g
-       s/[[:<:]]\(regexp\):/<a href="regexp_table.5.html">\1<\/a>:/g
-       s/[[:<:]]\(tcp\):/<a href="tcp_table.5.html">\1<\/a>:/g
-
-       # Do nice links for smtp:host:port etc.
-
-       s/[[:<:]]\(error\):/<a href="error.8.html">\1<\/a>:/g
-       s/[[:<:]]\(smtp\):/<a href="smtp.8.html">\1<\/a>:/g
-       s/[[:<:]]\(lmtp\):/<a href="lmtp.8.html">\1<\/a>:/g
+perl -e '
+
+$printit++ unless $nflag;
+
+$\ = "\n";             # automatically add newline on print
+
+LINE:
+while (<>) {
+    chop;
+
+    # Glue together words that were broken across line breaks.
+
+  Again:
+    if (/-[<\/bB>]*$/) {
+       $_ .= "\n";
+       $len1 = length;
+       $_ .= <>;
+       chop if $len1 < length;
+       goto Again;
+    }
+    if (/<[Aa] *[HhNn][RrAa][EeMm][FfEe] *=/) {
+       print;
+       $printit = 0;
+       next LINE;
+    }
+    if (/<\/[Aa]>/) {
+       print;
+       $printit = 0;
+       next LINE;
+    }
+    if (/"[Hh][Tt][Tt][Pp]:/) {
+       print;
+       $printit = 0;
+       next LINE;
+    }
+    if (/<[Tt][Ii][Tt][Ll][Ee]>/) {
+       print;
+       $printit = 0;
+       next LINE;
+    }
+
+    # Following block was generated with "makepostconflinks"
+    # but hyphenation was added manually.
+
+    if (/<\/*[Hh]\d*>/) {
+       print;
+       $printit = 0;
+       next LINE;
+    }
+    if (/<[Aa] [Nm][Aa][Mm][Ee]=/) {
+       print;
+       $printit = 0;
+       next LINE;
+    }
+    if (/<[D][T]>/) {
+       print;
+       $printit = 0;
+       next LINE;
+    }
+    s;\bautho[-</bB>]*\n*[ <bB>]*rized_verp_clients\b;<a href="postconf.5.html#authorized_verp_clients">$&</a>;g;
+    s;\bdebugger_command\b;<a href="postconf.5.html#debugger_command">$&</a>;g;
+    s;\b2bounce_notice_recipi[-</bB>]*\n*[ <bB>]*ent\b;<a href="postconf.5.html#2bounce_notice_recipient">$&</a>;g;
+    s;\baccess_map_reject_code\b;<a href="postconf.5.html#access_map_reject_code">$&</a>;g;
+    s;\baddress_verify_default_transport\b;<a href="postconf.5.html#address_verify_default_transport">$&</a>;g;
+    s;\baddress_verify_local_transport\b;<a href="postconf.5.html#address_verify_local_transport">$&</a>;g;
+    s;\baddress_verify_map\b;<a href="postconf.5.html#address_verify_map">$&</a>;g;
+    s;\baddress_verify_negative_cache\b;<a href="postconf.5.html#address_verify_negative_cache">$&</a>;g;
+    s;\baddress_verify_negative_expire_time\b;<a href="postconf.5.html#address_verify_negative_expire_time">$&</a>;g;
+    s;\baddress_verify_negative_refresh_time\b;<a href="postconf.5.html#address_verify_negative_refresh_time">$&</a>;g;
+    s;\baddress_verify_poll_count\b;<a href="postconf.5.html#address_verify_poll_count">$&</a>;g;
+    s;\baddress_verify_poll_delay\b;<a href="postconf.5.html#address_verify_poll_delay">$&</a>;g;
+    s;\baddress_verify_positive_expire_time\b;<a href="postconf.5.html#address_verify_positive_expire_time">$&</a>;g;
+    s;\baddress_verify_positive_refresh_time\b;<a href="postconf.5.html#address_verify_positive_refresh_time">$&</a>;g;
+    s;\baddress_verify_relay_transport\b;<a href="postconf.5.html#address_verify_relay_transport">$&</a>;g;
+    s;\baddress_verify_relayhost\b;<a href="postconf.5.html#address_verify_relayhost">$&</a>;g;
+    s;\baddress_verify_sender\b;<a href="postconf.5.html#address_verify_sender">$&</a>;g;
+    s;\baddress_verify_service_name\b;<a href="postconf.5.html#address_verify_service_name">$&</a>;g;
+    s;\baddress_verify_transport_maps\b;<a href="postconf.5.html#address_verify_transport_maps">$&</a>;g;
+    s;\baddress_verify_virtual_transport\b;<a href="postconf.5.html#address_verify_virtual_transport">$&</a>;g;
+    s;\balias_database\b;<a href="postconf.5.html#alias_database">$&</a>;g;
+    s;\balias_maps\b;<a href="postconf.5.html#alias_maps">$&</a>;g;
+    s;\ballow_mail_to_commands\b;<a href="postconf.5.html#allow_mail_to_commands">$&</a>;g;
+    s;\ballow_mail_to_files\b;<a href="postconf.5.html#allow_mail_to_files">$&</a>;g;
+    s;\ballow_min_user\b;<a href="postconf.5.html#allow_min_user">$&</a>;g;
+    s;\ballow_percent_hack\b;<a href="postconf.5.html#allow_percent_hack">$&</a>;g;
+    s;\ballow_untrusted_routing\b;<a href="postconf.5.html#allow_untrusted_routing">$&</a>;g;
+    s;\balternate_config_directories\b;<a href="postconf.5.html#alternate_config_directories">$&</a>;g;
+    s;\balways_bcc\b;<a href="postconf.5.html#always_bcc">$&</a>;g;
+    s;\banvil_rate_time_unit\b;<a href="postconf.5.html#anvil_rate_time_unit">$&</a>;g;
+    s;\bappend_at_myorigin\b;<a href="postconf.5.html#append_at_myorigin">$&</a>;g;
+    s;\bappend_dot_mydomain\b;<a href="postconf.5.html#append_dot_mydomain">$&</a>;g;
+    s;\bapplication_event_drain_time\b;<a href="postconf.5.html#application_event_drain_time">$&</a>;g;
+    s;\bbackwards_bounce_logfile_compatibility\b;<a href="postconf.5.html#backwards_bounce_logfile_compatibility">$&</a>;g;
+    s;\bberkeley_db_create_buffer_size\b;<a href="postconf.5.html#berkeley_db_create_buffer_size">$&</a>;g;
+    s;\bberkeley_db_read_buffer_size\b;<a href="postconf.5.html#berkeley_db_read_buffer_size">$&</a>;g;
+    s;\bbest_mx_transport\b;<a href="postconf.5.html#best_mx_transport">$&</a>;g;
+    s;\bbiff\b;<a href="postconf.5.html#biff">$&</a>;g;
+    s;\bbody_checks\b;<a href="postconf.5.html#body_checks">$&</a>;g;
+    s;\bbody_checks_size_limit\b;<a href="postconf.5.html#body_checks_size_limit">$&</a>;g;
+    s;\bbounce_notice_recip[-</bB>]*\n* *[<bB>]*ient\b;<a href="postconf.5.html#bounce_notice_recipient">$&</a>;g;
+    s;\bbounce_queue_lifetime\b;<a href="postconf.5.html#bounce_queue_lifetime">$&</a>;g;
+    s;\bbounce_service_name\b;<a href="postconf.5.html#bounce_service_name">$&</a>;g;
+    s;\bbounce_size_limit\b;<a href="postconf.5.html#bounce_size_limit">$&</a>;g;
+    s;\bbroken_sasl_auth_clients\b;<a href="postconf.5.html#broken_sasl_auth_clients">$&</a>;g;
+    s;\bcanonical_maps\b;<a href="postconf.5.html#canonical_maps">$&</a>;g;
+    s;\bcleanup_service_name\b;<a href="postconf.5.html#cleanup_service_name">$&</a>;g;
+    s;\banvil_status_update_time\b;<a href="postconf.5.html#anvil_status_update_time">$&</a>;g;
+    s;\bcommand_directory\b;<a href="postconf.5.html#command_directory">$&</a>;g;
+    s;\bcommand_expan[-</bB>]*\n* *[<bB>]*sion_filter\b;<a href="postconf.5.html#command_expansion_filter">$&</a>;g;
+    s;\bcommand_time_limit\b;<a href="postconf.5.html#command_time_limit">$&</a>;g;
+    s;\bconfig_direc[-</bB>]*\n*[ <bB>]*tory\b;<a href="postconf.5.html#config_directory">$&</a>;g;
+    s;\bcon[-</bB>]*\n*[ <bB>]*tent_filter\b;<a href="postconf.5.html#content_filter">$&</a>;g;
+    s;\bdaemon_directory\b;<a href="postconf.5.html#daemon_directory">$&</a>;g;
+    s;\bdaemon_timeout\b;<a href="postconf.5.html#daemon_timeout">$&</a>;g;
+    s;\bdebug_peer_level\b;<a href="postconf.5.html#debug_peer_level">$&</a>;g;
+    s;\bdebug_peer_list\b;<a href="postconf.5.html#debug_peer_list">$&</a>;g;
+    s;\bdefault_database_type\b;<a href="postconf.5.html#default_database_type">$&</a>;g;
+    s;\bdefault_deliv[-</Bb>]*\n* *[<Bb>]*ery_slot_cost\b;<a href="postconf.5.html#default_delivery_slot_cost">$&</a>;g;
+    s;\bdefault_deliv[-</Bb>]*\n* *[<Bb>]*ery_slot_discount\b;<a href="postconf.5.html#default_delivery_slot_discount">$&</a>;g;
+    s;\bdefault_deliv[-</Bb>]*\n* *[<Bb>]*ery_slot_loan\b;<a href="postconf.5.html#default_delivery_slot_loan">$&</a>;g;
+    s;\bdefault_destina[-</Bb>]*\n* *[<Bb>]*tion_concurrency_limit\b;<a href="postconf.5.html#default_destination_concurrency_limit">$&</a>;g;
+    s;\bdefault_destina[-</Bb>]*\n* *[<Bb>]*tion_recip[-</bB>]*\n* *[<bB>]*ient_limit\b;<a href="postconf.5.html#default_destination_recipient_limit">$&</a>;g;
+    s;\bdefault_extra_recip[-</bB>]*\n* *[<bB>]*ient_limit\b;<a href="postconf.5.html#default_extra_recipient_limit">$&</a>;g;
+    s;\bdefault_minimum_deliv[-</Bb>]*\n* *[<Bb>]*ery_slots\b;<a href="postconf.5.html#default_minimum_delivery_slots">$&</a>;g;
+    s;\bdefault_privs\b;<a href="postconf.5.html#default_privs">$&</a>;g;
+    s;\bdefault_process_limit\b;<a href="postconf.5.html#default_process_limit">$&</a>;g;
+    s;\bdefault_rbl_reply\b;<a href="postconf.5.html#default_rbl_reply">$&</a>;g;
+    s;\bdefault_recip[-</bB>]*\n* *[<bB>]*ient_limit\b;<a href="postconf.5.html#default_recipient_limit">$&</a>;g;
+    s;\bdefault_transport\b;<a href="postconf.5.html#default_transport">$&</a>;g;
+    s;\bdefault_verp_delimiters\b;<a href="postconf.5.html#default_verp_delimiters">$&</a>;g;
+    s;\bdefer_code\b;<a href="postconf.5.html#defer_code">$&</a>;g;
+    s;\bdefer_service_name\b;<a href="postconf.5.html#defer_service_name">$&</a>;g;
+    s;\bdefer_transports\b;<a href="postconf.5.html#defer_transports">$&</a>;g;
+    s;\bdelay_notice_recip[-</bB>]*\n* *[<bB>]*ient\b;<a href="postconf.5.html#delay_notice_recipient">$&</a>;g;
+    s;\bdelay_warning_time\b;<a href="postconf.5.html#delay_warning_time">$&</a>;g;
+    s;\bdeliver_lock_attempts\b;<a href="postconf.5.html#deliver_lock_attempts">$&</a>;g;
+    s;\bdeliver_lock_delay\b;<a href="postconf.5.html#deliver_lock_delay">$&</a>;g;
+    s;\bdisable_dns_lookups\b;<a href="postconf.5.html#disable_dns_lookups">$&</a>;g;
+    s;\bdisable_mime_input_processing\b;<a href="postconf.5.html#disable_mime_input_processing">$&</a>;g;
+    s;\bdisable_mime_output_conversion\b;<a href="postconf.5.html#disable_mime_output_conversion">$&</a>;g;
+    s;\bdisable_verp_bounces\b;<a href="postconf.5.html#disable_verp_bounces">$&</a>;g;
+    s;\bdisable_vrfy_command\b;<a href="postconf.5.html#disable_vrfy_command">$&</a>;g;
+    s;\bdont_remove\b;<a href="postconf.5.html#dont_remove">$&</a>;g;
+    s;\bdouble_bounce_sender\b;<a href="postconf.5.html#double_bounce_sender">$&</a>;g;
+    s;\bdupli[-</bB>]*\n* *[<bB>]*cate_filter_limit\b;<a href="postconf.5.html#duplicate_filter_limit">$&</a>;g;
+    s;\bempty_address_recip[-</bB>]*\n* *[<bB>]*ient\b;<a href="postconf.5.html#empty_address_recipient">$&</a>;g;
+    s;\benable_original_recip[-</bB>]*\n* *[<bB>]*ient\b;<a href="postconf.5.html#enable_original_recipient">$&</a>;g;
+    s;\berror_notice_recip[-</bB>]*\n* *[<bB>]*ient\b;<a href="postconf.5.html#error_notice_recipient">$&</a>;g;
+    s;\berror_service_name\b;<a href="postconf.5.html#error_service_name">$&</a>;g;
+    s;\bexpand_owner_alias\b;<a href="postconf.5.html#expand_owner_alias">$&</a>;g;
+    s;\bexport_environment\b;<a href="postconf.5.html#export_environment">$&</a>;g;
+    s;\bfallback_relay\b;<a href="postconf.5.html#fallback_relay">$&</a>;g;
+    s;\bfallback_transport\b;<a href="postconf.5.html#fallback_transport">$&</a>;g;
+    s;\bfast_flush_domains\b;<a href="postconf.5.html#fast_flush_domains">$&</a>;g;
+    s;\bfast_flush_purge_time\b;<a href="postconf.5.html#fast_flush_purge_time">$&</a>;g;
+    s;\bfast_flush_refresh_time\b;<a href="postconf.5.html#fast_flush_refresh_time">$&</a>;g;
+    s;\bfault_injection_code\b;<a href="postconf.5.html#fault_injection_code">$&</a>;g;
+    s;\bflush_service_name\b;<a href="postconf.5.html#flush_service_name">$&</a>;g;
+    s;\bfork_attempts\b;<a href="postconf.5.html#fork_attempts">$&</a>;g;
+    s;\bfork_delay\b;<a href="postconf.5.html#fork_delay">$&</a>;g;
+    s;\bforward_expan[-</bB>]*\n* *[<bB>]*sion_filter\b;<a href="postconf.5.html#forward_expansion_filter">$&</a>;g;
+    s;\bfor[-</bB>]*\n* *[<bB>]*ward_path\b;<a href="postconf.5.html#forward_path">$&</a>;g;
+    s;\bhash_queue_depth\b;<a href="postconf.5.html#hash_queue_depth">$&</a>;g;
+    s;\bhash_queue_names\b;<a href="postconf.5.html#hash_queue_names">$&</a>;g;
+    s;\bheader_address_token_limit\b;<a href="postconf.5.html#header_address_token_limit">$&</a>;g;
+    s;\bheader_checks\b;<a href="postconf.5.html#header_checks">$&</a>;g;
+    s;\bheader_size_limit\b;<a href="postconf.5.html#header_size_limit">$&</a>;g;
+    s;\bhelpful_warnings\b;<a href="postconf.5.html#helpful_warnings">$&</a>;g;
+    s;\bhome_mailbox\b;<a href="postconf.5.html#home_mailbox">$&</a>;g;
+    s;\bhopcount_limit\b;<a href="postconf.5.html#hopcount_limit">$&</a>;g;
+    s;\bhtml_direc[-</bB>]*\n*[ <bB>]*tory\b;<a href="postconf.5.html#html_directory">$&</a>;g;
+    s;\bignore_mx_lookup_error\b;<a href="postconf.5.html#ignore_mx_lookup_error">$&</a>;g;
+    s;\bimport_environment\b;<a href="postconf.5.html#import_environment">$&</a>;g;
+    s;\bin_flow_delay\b;<a href="postconf.5.html#in_flow_delay">$&</a>;g;
+    s;\binet_interfaces\b;<a href="postconf.5.html#inet_interfaces">$&</a>;g;
+    s;\binitial_destination_concurrency\b;<a href="postconf.5.html#initial_destination_concurrency">$&</a>;g;
+    s;\binvalid_hostname_reject_code\b;<a href="postconf.5.html#invalid_hostname_reject_code">$&</a>;g;
+    s;\bipc_idle\b;<a href="postconf.5.html#ipc_idle">$&</a>;g;
+    s;\bipc_timeout\b;<a href="postconf.5.html#ipc_timeout">$&</a>;g;
+    s;\bipc_ttl\b;<a href="postconf.5.html#ipc_ttl">$&</a>;g;
+    s;\bline_length_limit\b;<a href="postconf.5.html#line_length_limit">$&</a>;g;
+    s;\blmtp_cache_connection\b;<a href="postconf.5.html#lmtp_cache_connection">$&</a>;g;
+    s;\blmtp_connect_timeout\b;<a href="postconf.5.html#lmtp_connect_timeout">$&</a>;g;
+    s;\blmtp_data_done_timeout\b;<a href="postconf.5.html#lmtp_data_done_timeout">$&</a>;g;
+    s;\blmtp_data_init_timeout\b;<a href="postconf.5.html#lmtp_data_init_timeout">$&</a>;g;
+    s;\blmtp_data_xfer_timeout\b;<a href="postconf.5.html#lmtp_data_xfer_timeout">$&</a>;g;
+    s;\blmtp_lhlo_timeout\b;<a href="postconf.5.html#lmtp_lhlo_timeout">$&</a>;g;
+    s;\blmtp_mail_timeout\b;<a href="postconf.5.html#lmtp_mail_timeout">$&</a>;g;
+    s;\blmtp_quit_timeout\b;<a href="postconf.5.html#lmtp_quit_timeout">$&</a>;g;
+    s;\blmtp_rcpt_timeout\b;<a href="postconf.5.html#lmtp_rcpt_timeout">$&</a>;g;
+    s;\blmtp_rset_timeout\b;<a href="postconf.5.html#lmtp_rset_timeout">$&</a>;g;
+    s;\blmtp_sasl_auth_enable\b;<a href="postconf.5.html#lmtp_sasl_auth_enable">$&</a>;g;
+    s;\blmtp_sasl_password_maps\b;<a href="postconf.5.html#lmtp_sasl_password_maps">$&</a>;g;
+    s;\blmtp_sasl_security_options\b;<a href="postconf.5.html#lmtp_sasl_security_options">$&</a>;g;
+    s;\blmtp_send_xforward_command\b;<a href="postconf.5.html#lmtp_send_xforward_command">$&</a>;g;
+    s;\blmtp_skip_quit_response\b;<a href="postconf.5.html#lmtp_skip_quit_response">$&</a>;g;
+    s;\blmtp_tcp_port\b;<a href="postconf.5.html#lmtp_tcp_port">$&</a>;g;
+    s;\blmtp_xforward_timeout\b;<a href="postconf.5.html#lmtp_xforward_timeout">$&</a>;g;
+    s;\blocal_command_shell\b;<a href="postconf.5.html#local_command_shell">$&</a>;g;
+    s;\blocal_destination_concurrency_limit\b;<a href="postconf.5.html#local_destination_concurrency_limit">$&</a>;g;
+    s;\blocal_destination_recip[-</bB>]*\n* *[<bB>]*ient_limit\b;<a href="postconf.5.html#local_destination_recipient_limit">$&</a>;g;
+    s;\blocal_recip[-</bB>]*\n* *[<bB>]*ient_maps\b;<a href="postconf.5.html#local_recipient_maps">$&</a>;g;
+    s;\blocal_transport\b;<a href="postconf.5.html#local_transport">$&</a>;g;
+    s;\bluser_relay\b;<a href="postconf.5.html#luser_relay">$&</a>;g;
+    s;\bmail_name\b;<a href="postconf.5.html#mail_name">$&</a>;g;
+    s;\bmail_owner\b;<a href="postconf.5.html#mail_owner">$&</a>;g;
+    s;\bmail_release_date\b;<a href="postconf.5.html#mail_release_date">$&</a>;g;
+    s;\bmail_spool_direc[-</bB>]*\n* *[<bB>]*tory\b;<a href="postconf.5.html#mail_spool_directory">$&</a>;g;
+    s;\bmail_version\b;<a href="postconf.5.html#mail_version">$&</a>;g;
+    s;\bmail[-</bB>]*\n* *[<bB>]*box_command\b;<a href="postconf.5.html#mailbox_command">$&</a>;g;
+    s;\bmail[-</bB>]*\n* *[<bB>]*box_command_maps\b;<a href="postconf.5.html#mailbox_command_maps">$&</a>;g;
+    s;\bmail[-</bB>]*\n* *[<bB>]*box_deliv[-</Bb>]*\n* *[<Bb>]*ery_lock\b;<a href="postconf.5.html#mailbox_delivery_lock">$&</a>;g;
+    s;\bmail[-</bB>]*\n* *[<bB>]*box_size_limit\b;<a href="postconf.5.html#mailbox_size_limit">$&</a>;g;
+    s;\bmail[-</bB>]*\n* *[<bB>]*box_transport\b;<a href="postconf.5.html#mailbox_transport">$&</a>;g;
+    s;\bmailq_path\b;<a href="postconf.5.html#mailq_path">$&</a>;g;
+    s;\bmanpage_directory\b;<a href="postconf.5.html#manpage_directory">$&</a>;g;
+    s;\bmaps_rbl_domains\b;<a href="postconf.5.html#maps_rbl_domains">$&</a>;g;
+    s;\bmaps_rbl_reject_code\b;<a href="postconf.5.html#maps_rbl_reject_code">$&</a>;g;
+    s;\bmasquerade_classes\b;<a href="postconf.5.html#masquerade_classes">$&</a>;g;
+    s;\bmasquerade_domains\b;<a href="postconf.5.html#masquerade_domains">$&</a>;g;
+    s;\bmasquerade_exceptions\b;<a href="postconf.5.html#masquerade_exceptions">$&</a>;g;
+    s;\bmax_idle\b;<a href="postconf.5.html#max_idle">$&</a>;g;
+    s;\bmax_use\b;<a href="postconf.5.html#max_use">$&</a>;g;
+    s;\bmaxi[-</bB>]*\n*[ <bB>]*mal_backoff_time\b;<a href="postconf.5.html#maximal_backoff_time">$&</a>;g;
+    s;\bmaxi[-</bB>]*\n*[ <bB>]*mal_queue_lifetime\b;<a href="postconf.5.html#maximal_queue_lifetime">$&</a>;g;
+    s;\bmessage_size_limit\b;<a href="postconf.5.html#message_size_limit">$&</a>;g;
+    s;\bmime_boundary_length_limit\b;<a href="postconf.5.html#mime_boundary_length_limit">$&</a>;g;
+    s;\bmime_header_checks\b;<a href="postconf.5.html#mime_header_checks">$&</a>;g;
+    s;\bmime_nesting_limit\b;<a href="postconf.5.html#mime_nesting_limit">$&</a>;g;
+    s;\bminimal_backoff_time\b;<a href="postconf.5.html#minimal_backoff_time">$&</a>;g;
+    s;\bmulti_recip[-</bB>]*\n* *[<bB>]*ient_bounce_reject_code\b;<a href="postconf.5.html#multi_recipient_bounce_reject_code">$&</a>;g;
+    s;\bmydes[-</bB>]*\n*[ <bB>]*tina[-</bB>]*\n*[ <bB>]*tion\b;<a href="postconf.5.html#mydestination">$&</a>;g;
+    s;\bmydomain\b;<a href="postconf.5.html#mydomain">$&</a>;g;
+    s;\bmyhostname\b;<a href="postconf.5.html#myhostname">$&</a>;g;
+    s;\bmynetworks\b;<a href="postconf.5.html#mynetworks">$&</a>;g;
+    s;\bmynetworks_style\b;<a href="postconf.5.html#mynetworks_style">$&</a>;g;
+    s;\bmyorigin\b;<a href="postconf.5.html#myorigin">$&</a>;g;
+    s;\bnested_header_checks\b;<a href="postconf.5.html#nested_header_checks">$&</a>;g;
+    s;\bnewaliases_path\b;<a href="postconf.5.html#newaliases_path">$&</a>;g;
+    s;\bnon_fqdn_reject_code\b;<a href="postconf.5.html#non_fqdn_reject_code">$&</a>;g;
+    s;\bnotify_classes\b;<a href="postconf.5.html#notify_classes">$&</a>;g;
+    s;\bowner_request_special\b;<a href="postconf.5.html#owner_request_special">$&</a>;g;
+    s;\bparent_domain_matches_subdomains\b;<a href="postconf.5.html#parent_domain_matches_subdomains">$&</a>;g;
+    s;\bpermit_mx_backup_networks\b;<a href="postconf.5.html#permit_mx_backup_networks">$&</a>;g;
+    s;\bpickup_service_name\b;<a href="postconf.5.html#pickup_service_name">$&</a>;g;
+    s;\bprepend_delivered_header\b;<a href="postconf.5.html#prepend_delivered_header">$&</a>;g;
+    s;\bprocess_id\b;<a href="postconf.5.html#process_id">$&</a>;g;
+    s;\bprocess_id_directory\b;<a href="postconf.5.html#process_id_directory">$&</a>;g;
+    s;\bprocess_name\b;<a href="postconf.5.html#process_name">$&</a>;g;
+    s;\bpropagate_unmatched_extensions\b;<a href="postconf.5.html#propagate_unmatched_extensions">$&</a>;g;
+    s;\bproxy_interfaces\b;<a href="postconf.5.html#proxy_interfaces">$&</a>;g;
+    s;\bproxy_read_maps\b;<a href="postconf.5.html#proxy_read_maps">$&</a>;g;
+    s;\bqmgr_clog_warn_time\b;<a href="postconf.5.html#qmgr_clog_warn_time">$&</a>;g;
+    s;\bqmgr_fudge_factor\b;<a href="postconf.5.html#qmgr_fudge_factor">$&</a>;g;
+    s;\bqmgr_message_active_limit\b;<a href="postconf.5.html#qmgr_message_active_limit">$&</a>;g;
+    s;\bqmgr_message_recip[-</bB>]*\n* *[<bB>]*ient_limit\b;<a href="postconf.5.html#qmgr_message_recipient_limit">$&</a>;g;
+    s;\bqmgr_message_recip[-</bB>]*\n* *[<bB>]*ient_minimum\b;<a href="postconf.5.html#qmgr_message_recipient_minimum">$&</a>;g;
+    s;\bqmqpd_authorized_clients\b;<a href="postconf.5.html#qmqpd_authorized_clients">$&</a>;g;
+    s;\bqmqpd_error_delay\b;<a href="postconf.5.html#qmqpd_error_delay">$&</a>;g;
+    s;\bqmqpd_timeout\b;<a href="postconf.5.html#qmqpd_timeout">$&</a>;g;
+    s;\bqueue_directory\b;<a href="postconf.5.html#queue_directory">$&</a>;g;
+    s;\bqueue_file_attribute_count_limit\b;<a href="postconf.5.html#queue_file_attribute_count_limit">$&</a>;g;
+    s;\bqueue_minfree\b;<a href="postconf.5.html#queue_minfree">$&</a>;g;
+    s;\bqueue_run_delay\b;<a href="postconf.5.html#queue_run_delay">$&</a>;g;
+    s;\bqueue_service_name\b;<a href="postconf.5.html#queue_service_name">$&</a>;g;
+    s;\brbl_reply_maps\b;<a href="postconf.5.html#rbl_reply_maps">$&</a>;g;
+    s;\breadme_directory\b;<a href="postconf.5.html#readme_directory">$&</a>;g;
+    s;\breceive_override_options\b;<a href="postconf.5.html#receive_override_options">$&</a>;g;
+    s;\bno_unknown_recip[-</bB>]*\n* *[<bB>]*ient_checks\b;<a href="postconf.5.html#no_unknown_recipient_checks">$&</a>;g;
+    s;\bno_address_mappings\b;<a href="postconf.5.html#no_address_mappings">$&</a>;g;
+    s;\bno_header_body_checks\b;<a href="postconf.5.html#no_header_body_checks">$&</a>;g;
+    s;\brecip[-</bB>]*\n* *[<bB>]*ient_bcc_maps\b;<a href="postconf.5.html#recipient_bcc_maps">$&</a>;g;
+    s;\brecip[-</bB>]*\n* *[<bB>]*ient_canonical_maps\b;<a href="postconf.5.html#recipient_canonical_maps">$&</a>;g;
+    s;\brecip[-</bB>]*\n* *[<bB>]*ient_delim[-</bB>]*\n* *[<bB>]*iter\b;<a href="postconf.5.html#recipient_delimiter">$&<\/a>;g;
+    s;\breject_code\b;<a href="postconf.5.html#reject_code">$&</a>;g;
+    s;\brelay_domains\b;<a href="postconf.5.html#relay_domains">$&</a>;g;
+    s;\brelay_domains_reject_code\b;<a href="postconf.5.html#relay_domains_reject_code">$&</a>;g;
+    s;\brelay_recipi[-</bB>]*\n*[ <bB>]*ent_maps\b;<a href="postconf.5.html#relay_recipient_maps">$&</a>;g;
+    s;\brelay_transport\b;<a href="postconf.5.html#relay_transport">$&</a>;g;
+    s;\brelayhost\b;<a href="postconf.5.html#relayhost">$&</a>;g;
+    s;\brelocated_maps\b;<a href="postconf.5.html#relocated_maps">$&</a>;g;
+    s;\brequire_home_directory\b;<a href="postconf.5.html#require_home_directory">$&</a>;g;
+    s;\bresolve_dequoted_address\b;<a href="postconf.5.html#resolve_dequoted_address">$&</a>;g;
+    s;\brewrite_service_name\b;<a href="postconf.5.html#rewrite_service_name">$&</a>;g;
+    s;\bsample_directory\b;<a href="postconf.5.html#sample_directory">$&</a>;g;
+    s;\bsender_based_routing\b;<a href="postconf.5.html#sender_based_routing">$&</a>;g;
+    s;\bsender_bcc_maps\b;<a href="postconf.5.html#sender_bcc_maps">$&</a>;g;
+    s;\bsender_canonical_maps\b;<a href="postconf.5.html#sender_canonical_maps">$&</a>;g;
+    s;\bsendmail_path\b;<a href="postconf.5.html#sendmail_path">$&</a>;g;
+    s;\bservice_throttle_time\b;<a href="postconf.5.html#service_throttle_time">$&</a>;g;
+    s;\bsetgid_group\b;<a href="postconf.5.html#setgid_group">$&</a>;g;
+    s;\bshow_user_unknown_table_name\b;<a href="postconf.5.html#show_user_unknown_table_name">$&</a>;g;
+    s;\bshowq_service_name\b;<a href="postconf.5.html#showq_service_name">$&</a>;g;
+    s;\bsmtp_always_send_ehlo\b;<a href="postconf.5.html#smtp_always_send_ehlo">$&</a>;g;
+    s;\bsmtp_bind_address\b;<a href="postconf.5.html#smtp_bind_address">$&</a>;g;
+    s;\bsmtp_connect_timeout\b;<a href="postconf.5.html#smtp_connect_timeout">$&</a>;g;
+    s;\bsmtp_data_done_timeout\b;<a href="postconf.5.html#smtp_data_done_timeout">$&</a>;g;
+    s;\bsmtp_data_init_timeout\b;<a href="postconf.5.html#smtp_data_init_timeout">$&</a>;g;
+    s;\bsmtp_data_xfer_timeout\b;<a href="postconf.5.html#smtp_data_xfer_timeout">$&</a>;g;
+    s;\bsmtp_defer_if_no_mx_address_found\b;<a href="postconf.5.html#smtp_defer_if_no_mx_address_found">$&</a>;g;
+    s;\blmtp_destination_concurrency_limit\b;<a href="postconf.5.html#lmtp_destination_concurrency_limit">$&</a>;g;
+    s;\blmtp_destination_recip[-</bB>]*\n* *[<bB>]*ient_limit\b;<a href="postconf.5.html#lmtp_destination_recipient_limit">$&</a>;g;
+    s;\brelay_destination_concurrency_limit\b;<a href="postconf.5.html#relay_destination_concurrency_limit">$&</a>;g;
+    s;\brelay_destination_recip[-</bB>]*\n* *[<bB>]*ient_limit\b;<a href="postconf.5.html#relay_destination_recipient_limit">$&</a>;g;
+    s;\bresolve_null_domain\b;<a href="postconf.5.html#resolve_null_domain">$&</a>;g;
+    s;\bsmtp_destination_concurrency_limit\b;<a href="postconf.5.html#smtp_destination_concurrency_limit">$&</a>;g;
+    s;\bsmtp_destination_recip[-</bB>]*\n* *[<bB>]*ient_limit\b;<a href="postconf.5.html#smtp_destination_recipient_limit">$&</a>;g;
+    s;\bvir[-</bB>]*\n*[ <bB>]*tual_destination_concurrency_limit\b;<a href="postconf.5.html#virtual_destination_concurrency_limit">$&</a>;g;
+    s;\bvir[-</bB>]*\n*[ <bB>]*tual_destination_recip[-</bB>]*\n* *[<bB>]*ient_limit\b;<a href="postconf.5.html#virtual_destination_recipient_limit">$&</a>;g;
+    s;\bsmtp_helo_name\b;<a href="postconf.5.html#smtp_helo_name">$&</a>;g;
+    s;\bsmtp_helo_timeout\b;<a href="postconf.5.html#smtp_helo_timeout">$&</a>;g;
+    s;\bsmtp_host_lookup\b;<a href="postconf.5.html#smtp_host_lookup">$&</a>;g;
+    s;\bsmtp_line_length_limit\b;<a href="postconf.5.html#smtp_line_length_limit">$&</a>;g;
+    s;\bsmtp_mail_timeout\b;<a href="postconf.5.html#smtp_mail_timeout">$&</a>;g;
+    s;\bsmtp_mx_address_limit\b;<a href="postconf.5.html#smtp_mx_address_limit">$&</a>;g;
+    s;\bsmtp_mx_session_limit\b;<a href="postconf.5.html#smtp_mx_session_limit">$&</a>;g;
+    s;\bsmtp_never_send_ehlo\b;<a href="postconf.5.html#smtp_never_send_ehlo">$&</a>;g;
+    s;\bsmtp_pix_workaround_delay_time\b;<a href="postconf.5.html#smtp_pix_workaround_delay_time">$&</a>;g;
+    s;\bsmtp_pix_workaround_threshold_time\b;<a href="postconf.5.html#smtp_pix_workaround_threshold_time">$&</a>;g;
+    s;\bsmtp_quit_timeout\b;<a href="postconf.5.html#smtp_quit_timeout">$&</a>;g;
+    s;\bsmtp_quote_rfc821_envelope\b;<a href="postconf.5.html#smtp_quote_rfc821_envelope">$&</a>;g;
+    s;\bsmtp_randomize_addresses\b;<a href="postconf.5.html#smtp_randomize_addresses">$&</a>;g;
+    s;\bsmtp_rcpt_timeout\b;<a href="postconf.5.html#smtp_rcpt_timeout">$&</a>;g;
+    s;\bsmtp_rset_timeout\b;<a href="postconf.5.html#smtp_rset_timeout">$&</a>;g;
+    s;\bsmtp_sasl_auth_enable\b;<a href="postconf.5.html#smtp_sasl_auth_enable">$&</a>;g;
+    s;\bsmtp_sasl_password_maps\b;<a href="postconf.5.html#smtp_sasl_password_maps">$&</a>;g;
+    s;\bsmtp_sasl_security_options\b;<a href="postconf.5.html#smtp_sasl_security_options">$&</a>;g;
+    s;\bsmtp_send_xforward_command\b;<a href="postconf.5.html#smtp_send_xforward_command">$&</a>;g;
+    s;\bsmtp_skip_4xx_greeting\b;<a href="postconf.5.html#smtp_skip_4xx_greeting">$&</a>;g;
+    s;\bsmtp_skip_5xx_greeting\b;<a href="postconf.5.html#smtp_skip_5xx_greeting">$&</a>;g;
+    s;\bsmtp_skip_quit_response\b;<a href="postconf.5.html#smtp_skip_quit_response">$&</a>;g;
+    s;\bsmtp_xforward_timeout\b;<a href="postconf.5.html#smtp_xforward_timeout">$&</a>;g;
+    s;\bsmtpd_autho[-</bB>]*\n*[ <bB>]*rized_verp_clients\b;<a href="postconf.5.html#smtpd_authorized_verp_clients">$&</a>;g;
+    s;\bsmtpd_autho[-</bB>]*\n*[ <bB>]*rized_xclient_hosts\b;<a href="postconf.5.html#smtpd_authorized_xclient_hosts">$&</a>;g;
+    s;\bsmtpd_autho[-</bB>]*\n*[ <bB>]*rized_xforward_hosts\b;<a href="postconf.5.html#smtpd_authorized_xforward_hosts">$&</a>;g;
+    s;\bsmtpd_banner\b;<a href="postconf.5.html#smtpd_banner">$&</a>;g;
+    s;\bsmtpd_client_connection_count_limit\b;<a href="postconf.5.html#smtpd_client_connection_count_limit">$&</a>;g;
+    s;\bsmtpd_client_connection_limit_exceptions\b;<a href="postconf.5.html#smtpd_client_connection_limit_exceptions">$&</a>;g;
+    s;\bsmtpd_client_connection_rate_limit\b;<a href="postconf.5.html#smtpd_client_connection_rate_limit">$&</a>;g;
+    s;\bsmtpd_client_restrictions\b;<a href="postconf.5.html#smtpd_client_restrictions">$&</a>;g;
+    s;\bsmtpd_data_restrictions\b;<a href="postconf.5.html#smtpd_data_restrictions">$&</a>;g;
+    s;\bsmtpd_delay_reject\b;<a href="postconf.5.html#smtpd_delay_reject">$&</a>;g;
+    s;\bsmtpd_error_sleep_time\b;<a href="postconf.5.html#smtpd_error_sleep_time">$&</a>;g;
+    s;\bsmtpd_etrn_restrictions\b;<a href="postconf.5.html#smtpd_etrn_restrictions">$&</a>;g;
+    s;\bsmtpd_expansion_filter\b;<a href="postconf.5.html#smtpd_expansion_filter">$&</a>;g;
+    s;\bsmtpd_hard_error_limit\b;<a href="postconf.5.html#smtpd_hard_error_limit">$&</a>;g;
+    s;\bsmtpd_helo_required\b;<a href="postconf.5.html#smtpd_helo_required">$&</a>;g;
+    s;\bsmtpd_helo_restrictions\b;<a href="postconf.5.html#smtpd_helo_restrictions">$&</a>;g;
+    s;\bsmtpd_history_flush_threshold\b;<a href="postconf.5.html#smtpd_history_flush_threshold">$&</a>;g;
+    s;\bsmtpd_junk_command_limit\b;<a href="postconf.5.html#smtpd_junk_command_limit">$&</a>;g;
+    s;\bsmtpd_noop_commands\b;<a href="postconf.5.html#smtpd_noop_commands">$&</a>;g;
+    s;\bsmtpd_null_access_lookup_key\b;<a href="postconf.5.html#smtpd_null_access_lookup_key">$&</a>;g;
+    s;\bsmtpd_recipient_overshoot_limit\b;<a href="postconf.5.html#smtpd_recipient_overshoot_limit">$&</a>;g;
+    s;\bsmtpd_policy_service_max_idle\b;<a href="postconf.5.html#smtpd_policy_service_max_idle">$&</a>;g;
+    s;\bsmtpd_policy_service_max_ttl\b;<a href="postconf.5.html#smtpd_policy_service_max_ttl">$&</a>;g;
+    s;\bsmtpd_policy_service_timeout\b;<a href="postconf.5.html#smtpd_policy_service_timeout">$&</a>;g;
+    s;\bsmtpd_proxy_ehlo\b;<a href="postconf.5.html#smtpd_proxy_ehlo">$&</a>;g;
+    s;\bsmtpd_proxy_filter\b;<a href="postconf.5.html#smtpd_proxy_filter">$&</a>;g;
+    s;\bsmtpd_proxy_timeout\b;<a href="postconf.5.html#smtpd_proxy_timeout">$&</a>;g;
+    s;\bsmtpd_recip[-</bB>]*\n* *[<bB>]*ient_limit\b;<a href="postconf.5.html#smtpd_recipient_limit">$&</a>;g;
+    s;\bsmtpd_recip[-</bB>]*\n* *[<bB>]*ient_restrictions\b;<a href="postconf.5.html#smtpd_recipient_restrictions">$&</a>;g;
+    s;\bsmtpd_reject_unlisted_recip[-</bB>]*\n* *[<bB>]*ient\b;<a href="postconf.5.html#smtpd_reject_unlisted_recipient">$&</a>;g;
+    s;\bsmtpd_reject_unlisted_sender\b;<a href="postconf.5.html#smtpd_reject_unlisted_sender">$&</a>;g;
+    s;\bsmtpd_restriction_classes\b;<a href="postconf.5.html#smtpd_restriction_classes">$&</a>;g;
+    s;\bsmtpd_sasl_application_name\b;<a href="postconf.5.html#smtpd_sasl_application_name">$&</a>;g;
+    s;\bsmtpd_sasl_auth_enable\b;<a href="postconf.5.html#smtpd_sasl_auth_enable">$&</a>;g;
+    s;\bsmtpd_sasl_exceptions_networks\b;<a href="postconf.5.html#smtpd_sasl_exceptions_networks">$&</a>;g;
+    s;\bsmtpd_sasl_local_domain\b;<a href="postconf.5.html#smtpd_sasl_local_domain">$&</a>;g;
+    s;\bsmtpd_sasl_security_options\b;<a href="postconf.5.html#smtpd_sasl_security_options">$&</a>;g;
+    s;\bsmtpd_sender_login_maps\b;<a href="postconf.5.html#smtpd_sender_login_maps">$&</a>;g;
+    s;\bsmtpd_sender_restrictions\b;<a href="postconf.5.html#smtpd_sender_restrictions">$&</a>;g;
+    s;\bsmtpd_soft_error_limit\b;<a href="postconf.5.html#smtpd_soft_error_limit">$&</a>;g;
+    s;\bsmtpd_timeout\b;<a href="postconf.5.html#smtpd_timeout">$&</a>;g;
+    s;\bsoft_bounce\b;<a href="postconf.5.html#soft_bounce">$&</a>;g;
+    s;\bstale_lock_time\b;<a href="postconf.5.html#stale_lock_time">$&</a>;g;
+    s;\bstrict_7bit_headers\b;<a href="postconf.5.html#strict_7bit_headers">$&</a>;g;
+    s;\bstrict_8bitmime\b;<a href="postconf.5.html#strict_8bitmime">$&</a>;g;
+    s;\bstrict_8bitmime_body\b;<a href="postconf.5.html#strict_8bitmime_body">$&</a>;g;
+    s;\bstrict_mime_encoding_domain\b;<a href="postconf.5.html#strict_mime_encoding_domain">$&</a>;g;
+    s;\bstrict_rfc821_envelopes\b;<a href="postconf.5.html#strict_rfc821_envelopes">$&</a>;g;
+    s;\bsun_mailtool_compatibility\b;<a href="postconf.5.html#sun_mailtool_compatibility">$&</a>;g;
+    s;\bswap_bangpath\b;<a href="postconf.5.html#swap_bangpath">$&</a>;g;
+    s;\bsyslog_facility\b;<a href="postconf.5.html#syslog_facility">$&</a>;g;
+    s;\bsyslog_name\b;<a href="postconf.5.html#syslog_name">$&</a>;g;
+    s;\btrace_service_name\b;<a href="postconf.5.html#trace_service_name">$&</a>;g;
+    s;\btransport_maps\b;<a href="postconf.5.html#transport_maps">$&</a>;g;
+    s;\btransport_retry_time\b;<a href="postconf.5.html#transport_retry_time">$&</a>;g;
+    s;\btrigger_timeout\b;<a href="postconf.5.html#trigger_timeout">$&</a>;g;
+    s;\bundisclosed_recip[-</bB>]*\n* *[<bB>]*ients_header\b;<a href="postconf.5.html#undisclosed_recipients_header">$&</a>;g;
+    s;\bunknown_address_reject_code\b;<a href="postconf.5.html#unknown_address_reject_code">$&</a>;g;
+    s;\bunknown_client_reject_code\b;<a href="postconf.5.html#unknown_client_reject_code">$&</a>;g;
+    s;\bunknown_hostname_reject_code\b;<a href="postconf.5.html#unknown_hostname_reject_code">$&</a>;g;
+    s;\bunknown_local_recip[-</bB>]*\n* *[<bB>]*ient_reject_code\b;<a href="postconf.5.html#unknown_local_recipient_reject_code">$&</a>;g;
+    s;\bunknown_relay_recipi[-</bB>]*\n*[ <bB>]*ent_reject_code\b;<a href="postconf.5.html#unknown_relay_recipient_reject_code">$&</a>;g;
+    s;\bunknown_virtual_alias_reject_code\b;<a href="postconf.5.html#unknown_virtual_alias_reject_code">$&</a>;g;
+    s;\bunknown_virtual_mail[-</bB>]*\n* *[<bB>]*box_reject_code\b;<a href="postconf.5.html#unknown_virtual_mailbox_reject_code">$&</a>;g;
+    s;\bunverified_recip[-</bB>]*\n* *[<bB>]*ient_reject_code\b;<a href="postconf.5.html#unverified_recipient_reject_code">$&</a>;g;
+    s;\bunverified_sender_reject_code\b;<a href="postconf.5.html#unverified_sender_reject_code">$&</a>;g;
+    s;\bverp_delimiter_filter\b;<a href="postconf.5.html#verp_delimiter_filter">$&</a>;g;
+    s;\bvir[-</bB>]*\n*[ <bB>]*tual_alias_domains\b;<a href="postconf.5.html#virtual_alias_domains">$&</a>;g;
+    s;\bvir[-</bB>]*\n*[ <bB>]*tual_alias_expansion_limit\b;<a href="postconf.5.html#virtual_alias_expansion_limit">$&</a>;g;
+    s;\bvir[-</bB>]*\n*[ <bB>]*tual_alias_maps\b;<a href="postconf.5.html#virtual_alias_maps">$&</a>;g;
+    s;\bvir[-</bB>]*\n*[ <bB>]*tual_maps\b;<a href="postconf.5.html#virtual_maps">$&</a>;g;
+    s;\bvir[-</bB>]*\n*[ <bB>]*tual_alias_recursion_limit\b;<a href="postconf.5.html#virtual_alias_recursion_limit">$&</a>;g;
+    s;\bvir[-</bB>]*\n*[ <bB>]*tual_gid_maps\b;<a href="postconf.5.html#virtual_gid_maps">$&</a>;g;
+    s;\bvir[-</bB>]*\n*[ <bB>]*tual_mail[-</bB>]*\n* *[<bB>]*box_base\b;<a href="postconf.5.html#virtual_mailbox_base">$&</a>;g;
+    s;\bvir[-</bB>]*\n*[ <bB>]*tual_mail[-</bB>]*\n* *[<bB>]*box_domains\b;<a href="postconf.5.html#virtual_mailbox_domains">$&</a>;g;
+    s;\bvir[-</bB>]*\n*[ <bB>]*tual_mail[-</bB>]*\n* *[<bB>]*box_limit\b;<a href="postconf.5.html#virtual_mailbox_limit">$&</a>;g;
+    s;\bvir[-</bB>]*\n*[ <bB>]*tual_mail[-</bB>]*\n* *[<bB>]*box_lock\b;<a href="postconf.5.html#virtual_mailbox_lock">$&</a>;g;
+    s;\bvir[-</bB>]*\n*[ <bB>]*tual_mail[-</bB>]*\n* *[<bB>]*box_maps\b;<a href="postconf.5.html#virtual_mailbox_maps">$&</a>;g;
+    s;\bvir[-</bB>]*\n*[ <bB>]*tual_minimum_uid\b;<a href="postconf.5.html#virtual_minimum_uid">$&</a>;g;
+    s;\bvir[-</bB>]*\n*[ <bB>]*tual_transport\b;<a href="postconf.5.html#virtual_transport">$&</a>;g;
+    s;\bvir[-</bB>]*\n*[ <bB>]*tual_uid_maps\b;<a href="postconf.5.html#virtual_uid_maps">$&</a>;g;
+
+    # Undo hyperlinks of manual pages with the same name as parameters.
+
+    s/<a href="[^"]*">([^<]*)<\/a>\(/$1(/g;
+
+    # Undo hyperlinks of pathnames thay collide with parameter names.
+
+    s/\/<a href="[^"]*">([^<]*)<\/a>/\/$1/g;
+
+    # Hyperlink Postfix manual page references.
+
+    s/[<bB>]*anvil[<\/bB>]*\(8\)/<a href="anvil.8.html">$&<\/a>/g;
+    s/[<bB>]*bounce[<\/bB>]*\(8\)/<a href="bounce.8.html">$&<\/a>/g;
+    s/[<bB>]*cleanup[<\/bB>]*\(8\)/<a href="cleanup.8.html">$&<\/a>/g;
+    s/[<bB>]*defer[<\/bB>]*\(8\)/<a href="defer.8.html">$&<\/a>/g;
+    s/[<bB>]*error[<\/bB>]*\(8\)/<a href="error.8.html">$&<\/a>/g;
+    s/[<bB>]*flush[<\/bB>]*\(8\)/<a href="flush.8.html">$&<\/a>/g;
+    s/[<bB>]*lmtp[<\/bB>]*\(8\)/<a href="lmtp.8.html">$&<\/a>/g;
+    s/[<bB>]*local[<\/bB>]*\(8\)/<a href="local.8.html">$&<\/a>/g;
+    s/[<bB>]*mas[-<\/bB>]*\n* *[<bB>]*ter[<\/bB>]*\(8\)/<a href="master.8.html">$&<\/a>/g;
+    s/[<bB>]*pickup[<\/bB>]*\(8\)/<a href="pickup.8.html">$&<\/a>/g;
+    s/[<bB>]*pipe[<\/bB>]*\(8\)/<a href="pipe.8.html">$&<\/a>/g;
+    s/[<bB>]*oqmgr[<\/bB>]*\(8\)/<a href="qmgr.8.html">$&<\/a>/g;
+    s/[<bB>]*\bqmgr[<\/bB>]*\(8\)/<a href="qmgr.8.html">$&<\/a>/g;
+    s/[<bB>]*qmqpd[<\/bB>]*\(8\)/<a href="qmqpd.8.html">$&<\/a>/g;
+    s/[<bB>]*showq[<\/bB>]*\(8\)/<a href="showq.8.html">$&<\/a>/g;
+    s/[<bB>]*smtp[<\/bB>]*\(8\)/<a href="smtp.8.html">$&<\/a>/g;
+    s/[<bB>]*smtpd[<\/bB>]*\(8\)/<a href="smtpd.8.html">$&<\/a>/g;
+    s/[<bB>]*spawn[<\/bB>]*\(8\)/<a href="spawn.8.html">$&<\/a>/g;
+    s/[<bB>]*trace[<\/bB>]*\(8\)/<a href="trace.8.html">$&<\/a>/g;
+    s/[<bB>]*trivial- *<br> *rewrite[<\/bB>]*\(8\)/<a href="trivial-rewrite.8.html">$&<\/a>/g;
+    s/[<bB>]*triv[-<\/bB>]*\n* *[<bB>]*ial-[<\/bB>]*\n* *[<bB>]*rewrite[<\/bB>]*\(8\)/<a href="trivial-rewrite.8.html">$&<\/a>/g;
+    s/[<bB>]*mailq[<\/bB>]*\(1\)/<a href="mailq.1.html">$&<\/a>/g;
+    s/[<bB>]*newaliases[<\/bB>]*\(1\)/<a href="newaliases.1.html">$&<\/a>/g;
+    s/[<bB>]*postalias[<\/bB>]*\(1\)/<a href="postalias.1.html">$&<\/a>/g;
+    s/[<bB>]*postcat[<\/bB>]*\(1\)/<a href="postcat.1.html">$&<\/a>/g;
+    s/[<bB>]*postconf[<\/bB>]*\(1\)/<a href="postconf.1.html">$&<\/a>/g;
+    s/[<bB>]*postdrop[<\/bB>]*\(1\)/<a href="postdrop.1.html">$&<\/a>/g;
+    s/[<bB>]*postfix[<\/bB>]*\(1\)/<a href="postfix.1.html">$&<\/a>/g;
+    s/[<bB>]*postkick[<\/bB>]*\(1\)/<a href="postkick.1.html">$&<\/a>/g;
+    s/[<bB>]*postlock[<\/bB>]*\(1\)/<a href="postlock.1.html">$&<\/a>/g;
+    s/[<bB>]*postlog[<\/bB>]*\(1\)/<a href="postlog.1.html">$&<\/a>/g;
+    s/[<bB>]*postmap[<\/bB>]*\(1\)/<a href="postmap.1.html">$&<\/a>/g;
+    s/[<bB>]*postqueue[<\/bB>]*\(1\)/<a href="postqueue.1.html">$&<\/a>/g;
+    s/[<bB>]*postsuper[<\/bB>]*\(1\)/<a href="postsuper.1.html">$&<\/a>/g;
+    s/[<bB>]*send[-<\/bB>]*\n*[ <bB>]*mail[<\/bB>]*\(1\)/<a href="sendmail.1.html">$&<\/a>/g;
+    s/[<bB>]*smtp-[<\/bB>]*\n* *[<bB>]*source[<\/bB>]*\(1\)/<a href="smtp-source.1.html">$&<\/a>/g;
+    s/[<bB>]*smtp-[<\/bB>]*\n* *[<bB>]*sink[<\/bB>]*\(1\)/<a href="smtp-sink.1.html">$&<\/a>/g;
+    s/[<bB>]*qmqp-[<\/bB>]*\n* *[<bB>]*source[<\/bB>]*\(1\)/<a href="qmqp-source.1.html">$&<\/a>/g;
+    s/[<bB>]*qmqp-[<\/bB>]*\n* *[<bB>]*sink[<\/bB>]*\(1\)/<a href="qmqp-sink.1.html">$&<\/a>/g;
+    s/[<bB>]*qshape[<\/bB>]*\(1\)/<a href="qshape.1.html">$&<\/a>/g;
+    s/[<bB>]*access[<\/bB>]*\(5\)/<a href="access.5.html">$&<\/a>/g;
+    s/[<bB>]*aliases[<\/bB>]*\(5\)/<a href="aliases.5.html">$&<\/a>/g;
+    s/[<bB>]*canonical[<\/bB>]*\(5\)/<a href="canonical.5.html">$&<\/a>/g;
+    s/[<bB>]*etrn[<\/bB>]*\(5\)/<a href="etrn.5.html">$&<\/a>/g;
+    s/[<bB>]*ldap[<\/bBiI>]*_[<\/iIbB>]*table[<\/bB>]*\(5\)/<a href="ldap_table.5.html">$&<\/a>/g;
+    s/[<bB>]*mysql[<\/bBiI>]*_[<\/iIbB>]*table[<\/bB>]*\(5\)/<a href="mysql_table.5.html">$&<\/a>/g;
+    s/[<bB>]*pcre[<\/bBiI>]*_[<\/iIbB>]*table[<\/bB>]*\(5\)/<a href="pcre_table.5.html">$&<\/a>/g;
+    s/[<bB>]*pgsql[<\/bBiI>]*_[<\/iIbB>]*table[<\/bB>]*\(5\)/<a href="pgsql_table.5.html">$&<\/a>/g;
+    s/[<bB>]*postconf[<\/bB>]*\(5\)/<a href="postconf.5.html">$&<\/a>/g;
+    s/[<bB>]*proxymap[<\/bB>]*\(8\)/<a href="proxymap.8.html">$&<\/a>/g;
+    s/[<bB>]*reg[-<\/bB>]*\n*[ <bB>]*exp[<\/bBiI>]*_[<\/iIbB>]*table[<\/bB>]*\(5\)/<a href="regexp_table.5.html">$&<\/a>/g;
+    s/[<bB>]*relocated[<\/bB>]*\(5\)/<a href="relocated.5.html">$&<\/a>/g;
+    s/[<bB>]*trans[-<\/bB>]*\n*[ <bB>]*port[<\/bB>]*\(5\)/<a href="transport.5.html">$&<\/a>/g;
+    s/[<bB>]*verify[<\/bB>]*\(8\)/<a href="verify.8.html">$&<\/a>/g;
+    s/[<bB>]*virtual[<\/bB>]*\(5\)/<a href="virtual.5.html">$&<\/a>/g;
+    s/[<bB>]*virtual[<\/bB>]*\(8\)/<a href="virtual.8.html">$&<\/a>/g;
+    s/[<bB>]*cidr_table[<\/bB>]*\(5\)/<a href="cidr_table.5.html">$&<\/a>/g;
+    s/[<bB>]*tcp_table[<\/bB>]*\(5\)/<a href="tcp_table.5.html">$&<\/a>/g;
+    s/[<bB>]*body_checks[<\/bB>]*\(5\)/<a href="header_checks.5.html">$&<\/a>/g;
+    s/[<bB>]*header_checks[<\/bB>]*\(5\)/<a href="header_checks.5.html">$&<\/a>/g;
+
+    # Hyperlink README document names
+
+    s/\b[A-Z_]*_README\b/<a href="$&.html">$&<\/a>/g;
+    s/\bINSTALL\b/<a href="$&.html">$&<\/a>/g;
+    s/\bOVERVIEW\b/<a href="$&.html">$&<\/a>/g;
+    s/"type:table"/"<a href="DATABASE_README.html">type:table<\/a>"/g;
+
+    # Split manual page hyperlinks across newlines
+
+    s/(<a href="[^"]*">)([<bB>]*[-a-z0-9_]*[-<\/bB>]*)(\n *)([<bB>]*[-a-z0-9_]*[<\/bB>]*\(\d\))(<\/a>)/$1$2$5$3$1$4$5/;
+
+    # Access restrictions - generic
+
+    s;\bcheck_policy_service\b;<a href="postconf.5.html#check_policy_service">$&</a>;g;
+    s;\bdefer_if_permit\b;<a href="postconf.5.html#defer_if_permit">$&</a>;g;
+    s;\bdefer_if_reject\b;<a href="postconf.5.html#defer_if_reject">$&</a>;g;
+    s;\breject_multi_recip[-</bB>]*\n* *[<bB>]*ient_bounce\b;<a href="postconf.5.html#reject_multi_recipient_bounce">$&</a>;g;
+    s;\breject_unauth_pipelining\b;<a href="postconf.5.html#reject_unauth_pipelining">$&</a>;g;
+    s;\bwarn_if_reject\b;<a href="postconf.5.html#warn_if_reject">$&</a>;g;
+
+    # Access restrictions - client
+
+    s;\bcheck_client_access\b;<a href="postconf.5.html#check_client_access">$&</a>;g;
+    s;\bpermit_mynetworks\b;<a href="postconf.5.html#permit_mynetworks">$&</a>;g;
+    s;\breject_unknown_client\b;<a href="postconf.5.html#reject_unknown_client">$&</a>;g;
+    s;\breject_rbl_client\b;<a href="postconf.5.html#reject_rbl_client">$&</a>;g;
+    s;\breject_rhsbl_client\b;<a href="postconf.5.html#reject_rhsbl_client">$&</a>;g;
+
+    # Access restrictions - helo
+
+    s;\bcheck_helo_access\b;<a href="postconf.5.html#check_helo_access">$&</a>;g;
+    s;\breject_invalid_hostname\b;<a href="postconf.5.html#reject_invalid_hostname">$&</a>;g;
+    s;\breject_non_fqdn_hostname\b;<a href="postconf.5.html#reject_non_fqdn_hostname">$&</a>;g;
+    s;\breject_unknown_hostname\b;<a href="postconf.5.html#reject_unknown_hostname">$&</a>;g;
+
+    # Access restrictions - sender
+
+    s;\bcheck_sender_access\b;<a href="postconf.5.html#check_sender_access">$&</a>;g;
+    s;\b(reject_authenti)([-</bB>]*\n*[ <bB>]*)(cated_sender_login_mismatch)\b;<a href="postconf.5.html#reject_authenticated_sender_login_mismatch">$1<\/a>$2<a href="postconf.5.html#reject_authenticated_sender_login_mismatch">$3</a>;g;
+    s;\breject_non_fqdn_sender\b;<a href="postconf.5.html#reject_non_fqdn_sender">$&</a>;g;
+    s;\breject_rhsbl_sender\b;<a href="postconf.5.html#reject_rhsbl_sender">$&</a>;g;
+    s;\breject_sender_login_mis[-</bB>]*\n*[ <bB>]*match\b;<a href="postconf.5.html#reject_sender_login_mismatch">$&</a>;g;
+    s;\breject_unauthenticated_sender_login_mismatch\b;<a href="postconf.5.html#reject_unauthenticated_sender_login_mismatch">$&</a>;g;
+    s;\breject_unknown_sender_domain\b;<a href="postconf.5.html#reject_unknown_sender_domain">$&</a>;g;
+    s;\breject_unlisted_sender\b;<a href="postconf.5.html#reject_unlisted_sender">$&</a>;g;
+    s;\breject_unveri[-</bB>]*\n*[ <bB>]*fied_sender\b;<a href="postconf.5.html#reject_unverified_sender">$&</a>;g;
+
+    # Access restrictions - recipient
+
+    s;\bcheck_recip[-</bB>]*\n* *[<bB>]*ient_access\b;<a href="postconf.5.html#check_recipient_access">$&</a>;g;
+    s;\bcheck_recip[-</bB>]*\n* *[<bB>]*ient_mx_access\b;<a href="postconf.5.html#check_recipient_mx_access">$&</a>;g;
+    s;\bcheck_recip[-</bB>]*\n* *[<bB>]*ient_ns_access\b;<a href="postconf.5.html#check_recipient_ns_access">$&</a>;g;
+    s;\bpermit_auth_destination\b;<a href="postconf.5.html#permit_auth_destination">$&</a>;g;
+    s;\bpermit_mx_backup\b;<a href="postconf.5.html#permit_mx_backup">$&</a>;g;
+    s;\breject_non_fqdn_recip[-</bB>]*\n* *[<bB>]*ient\b;<a href="postconf.5.html#reject_non_fqdn_recipient">$&</a>;g;
+    s;\breject_rhsbl_recip[-</bB>]*\n* *[<bB>]*ient\b;<a href="postconf.5.html#reject_rhsbl_recipient">$&</a>;g;
+    s;\breject_unauth_destination\b;<a href="postconf.5.html#reject_unauth_destination">$&</a>;g;
+    s;\breject_unknown_recipi[-</bB>]*\n*[ <bB>]*ent_domain\b;<a href="postconf.5.html#reject_unknown_recipient_domain">$&</a>;g;
+    s;\breject_unlisted_recip[-</bB>]*\n* *[<bB>]*ient\b;<a href="postconf.5.html#reject_unlisted_recipient">$&</a>;g;
+    s;\breject_unveri[-</bB>]*\n*[ <bB>]*fied_recip[-</bB>]*\n* *[<bB>]*ient\b;<a href="postconf.5.html#reject_unverified_recipient">$&</a>;g;
+
+    # Access restrictions - etrn
+
+    s;\bcheck_etrn_access\b;<a href="postconf.5.html#check_etrn_access">$&</a>;g;
+
+    # Split parameter or restriction hyperlinks across line breaks
+
+    s/(<a href="[^"]*">)([-a-z0-9_]*)\b([-<\/bB>]*\n *[<bB>]*)\b([-a-z0-9_]*)(<\/a>)/$1$2$5$3$1$4$5/;
+
+    # Glue manual/parameter/restriction hyperlinks without line breaks.
+
+    s/(<a href="[^"]*">)([<bB>]*[-a-zA-Z0-9._]*[<bB>]*)<\/a>\1/$1$2/g;
+    s/(<a href="[^"]*">)([<bB>]*[-a-zA-Z0-9._]*[<bB>]*)<\/a>\1/$1$2/g;
+
+    # Hyperlink URLs and RFC documents
+
+    s/(http:\/\/[^ ,"\(\)]*[^ ,"\(\):;!?.])/<a href="$1">$1<\/a>/;
+    s/(ftp:\/\/[^ ,"\(\)]*[^ ,"\(\):;!?.])/<a href="$1">$1<\/a>/;
+    s/\bRFC *([1-9]\d*)/<a href="http:\/\/www.faqs.org\/rfcs\/rfc$1.html">$&<\/a>/;
+
+    # Hyperlink phrases not in headers.
+
+    if (/<\/*h\d>/) {
+       print;
+       $printit = 0;
+       next LINE;
+    }
+    s/canonical domains*/<a href="VIRTUAL_README.html#canonical">$&<\/a>/;
+    s/hosted domains*/<a href="VIRTUAL_README.html#canonical">$&<\/a>/;
+    #s/other domains*/<a href="VIRTUAL_README.html#canonical">&<\/a>/
+    s/virtual alias example/<a href="VIRTUAL_README.html#virtual_alias">$&<\/a>/;
+    s/virtual mailbox example/<a href="VIRTUAL_README.html#virtual_mailbox">$&<\/a>/;
+    s/local domains*/<a href="ADDRESS_CLASS_README.html#local_domain_class">$&<\/a>/;
+    s/virtual alias domains*/<a href="ADDRESS_CLASS_README.html#virtual_alias_class">$&<\/a>/;
+    s/virtual ALIAS domains*/<a href="ADDRESS_CLASS_README.html#virtual_alias_class">$&<\/a>/;
+    s/virtual mailbox domains*/<a href="ADDRESS_CLASS_README.html#virtual_mailbox_class">$&<\/a>/;
+    s/virtual MAILBOX domains*/<a href="ADDRESS_CLASS_README.html#virtual_mailbox_class">$&<\/a>/;
+    s/relay domains*/<a href="ADDRESS_CLASS_README.html#relay_domain_class">$&<\/a>/;
+    s/default domains*/<a href="ADDRESS_CLASS_README.html#default_domain_class">$&<\/a>/;
+    s/mydestination domains*/<a href="ADDRESS_CLASS_README.html#local_domain_class">$&<\/a>/;
+    s/\b"*maildrop"* *queues*\b/<a href="QSHAPE_README.html#maildrop_queue">$&<\/a>/;
+    s/\b("*maildrop"*),/<a href="QSHAPE_README.html#maildrop_queue">$1<\/a>,/;
+    s/\b("*incoming"*) and\b/<a href="QSHAPE_README.html#incoming_queue">$1<\/a> and/;
+    s/\b("*incoming"*) or\b/<a href="QSHAPE_README.html#incoming_queue">$1<\/a> or/;
+    s/\b"*incoming"* *queues*\b/<a href="QSHAPE_README.html#incoming_queue">$&<\/a>/;
+    s/<b> *incoming *<\/b> *queues*\b/<a href="QSHAPE_README.html#incoming_queue">$&<\/a>/;
+    s/\b"*active"* *queues*\b/<a href="QSHAPE_README.html#active_queue">$&<\/a>/;
+    s/\b"*deferred"* *queues*\b/<a href="QSHAPE_README.html#deferred_queue">$&<\/a>/;
+    s/\b"*hold"* *queues*\b/<a href="QSHAPE_README.html#hold_queue">$&<\/a>/;
+    s/\b("*hold"*),/<a href="QSHAPE_README.html#hold_queue">$1<\/a>,/;
+
+    # Hyperlink map types.
+
+    s/\b(cidr):/<a href="cidr_table.5.html">$1<\/a>:/g;
+    s/\b(pcre):/<a href="pcre_table.5.html">$1<\/a>:/g;
+    s/\b(proxy):/<a href="proxymap.8.html">$1<\/a>:/g;
+    s/\b(pgsql):/<a href="pgsql_table.5.html">$1<\/a>:/g;
+    s/\b(mysql):/<a href="mysql_table.5.html">$1<\/a>:/g;
+    s/\b(ldap):/<a href="ldap_table.5.html">$1<\/a>:/g;
+    s/\b(regexp):/<a href="regexp_table.5.html">$1<\/a>:/g;
+    s/\b(tcp):/<a href="tcp_table.5.html">$1<\/a>:/g;
+
+    # Do nice links for smtp:host:port etc.
+
+    s/\b(error):/<a href="error.8.html">$1<\/a>:/g;
+    s/\b(smtp):/<a href="smtp.8.html">$1<\/a>:/g;
+    s/\b(lmtp):/<a href="lmtp.8.html">$1<\/a>:/g;
+}
+continue {
+    if ($printit)
+       { print; }
+    else
+       { $printit++ unless $nflag; }
+}
 
 ' "$@"
diff --git a/postfix/mantools/postlink.sed b/postfix/mantools/postlink.sed
new file mode 100755 (executable)
index 0000000..c6bef2e
--- /dev/null
@@ -0,0 +1,603 @@
+#!/bin/sh
+
+# Crude script to make formatted Postfix man pages clickable.
+
+# If you use a sed(1) command that does not understand POSIX,
+# do s/\[\[:<:\]\]/\\</g; s/\[\[:>:\]\]/\\>/g on this script.
+
+exec sed '
+
+       # Glue together words that were broken across line breaks.
+
+    :again
+       /-[</bB>]*$/{
+           N
+           b again
+       }
+
+       /<[Aa] *[HhNn][RrAa][EeMm][FfEe] *=/{
+               p
+               d
+       }
+       /<\/[Aa]>/{
+               p
+               d
+       }
+       /"[Hh][Tt][Tt][Pp]:/{
+               p
+               d
+       }
+       /<[Tt][Ii][Tt][Ll][Ee]>/{
+               p
+               d
+       }
+
+       # Following block was generated with "makepostconflinks"
+       # but hyphenation was added manually.
+
+       /<\/*[Hh][0-9]*>/{
+               p
+               d
+               }
+       /<[Aa] [Nm][Aa][Mm][Ee]=/{
+               p
+               d
+               }
+       /<[D][T]>/{
+               p
+               d
+               }
+       s;[[:<:]]autho[-</bB>]*\n*[ <bB>]*rized_verp_clients[[:>:]];<a href="postconf.5.html#authorized_verp_clients">&</a>;g
+       s;[[:<:]]debugger_command[[:>:]];<a href="postconf.5.html#debugger_command">&</a>;g
+       s;[[:<:]]2bounce_notice_recipi[-</bB>]*\n*[ <bB>]*ent[[:>:]];<a href="postconf.5.html#2bounce_notice_recipient">&</a>;g
+       s;[[:<:]]access_map_reject_code[[:>:]];<a href="postconf.5.html#access_map_reject_code">&</a>;g
+       s;[[:<:]]address_verify_default_transport[[:>:]];<a href="postconf.5.html#address_verify_default_transport">&</a>;g
+       s;[[:<:]]address_verify_local_transport[[:>:]];<a href="postconf.5.html#address_verify_local_transport">&</a>;g
+       s;[[:<:]]address_verify_map[[:>:]];<a href="postconf.5.html#address_verify_map">&</a>;g
+       s;[[:<:]]address_verify_negative_cache[[:>:]];<a href="postconf.5.html#address_verify_negative_cache">&</a>;g
+       s;[[:<:]]address_verify_negative_expire_time[[:>:]];<a href="postconf.5.html#address_verify_negative_expire_time">&</a>;g
+       s;[[:<:]]address_verify_negative_refresh_time[[:>:]];<a href="postconf.5.html#address_verify_negative_refresh_time">&</a>;g
+       s;[[:<:]]address_verify_poll_count[[:>:]];<a href="postconf.5.html#address_verify_poll_count">&</a>;g
+       s;[[:<:]]address_verify_poll_delay[[:>:]];<a href="postconf.5.html#address_verify_poll_delay">&</a>;g
+       s;[[:<:]]address_verify_positive_expire_time[[:>:]];<a href="postconf.5.html#address_verify_positive_expire_time">&</a>;g
+       s;[[:<:]]address_verify_positive_refresh_time[[:>:]];<a href="postconf.5.html#address_verify_positive_refresh_time">&</a>;g
+       s;[[:<:]]address_verify_relay_transport[[:>:]];<a href="postconf.5.html#address_verify_relay_transport">&</a>;g
+       s;[[:<:]]address_verify_relayhost[[:>:]];<a href="postconf.5.html#address_verify_relayhost">&</a>;g
+       s;[[:<:]]address_verify_sender[[:>:]];<a href="postconf.5.html#address_verify_sender">&</a>;g
+       s;[[:<:]]address_verify_service_name[[:>:]];<a href="postconf.5.html#address_verify_service_name">&</a>;g
+       s;[[:<:]]address_verify_transport_maps[[:>:]];<a href="postconf.5.html#address_verify_transport_maps">&</a>;g
+       s;[[:<:]]address_verify_virtual_transport[[:>:]];<a href="postconf.5.html#address_verify_virtual_transport">&</a>;g
+       s;[[:<:]]alias_database[[:>:]];<a href="postconf.5.html#alias_database">&</a>;g
+       s;[[:<:]]alias_maps[[:>:]];<a href="postconf.5.html#alias_maps">&</a>;g
+       s;[[:<:]]allow_mail_to_commands[[:>:]];<a href="postconf.5.html#allow_mail_to_commands">&</a>;g
+       s;[[:<:]]allow_mail_to_files[[:>:]];<a href="postconf.5.html#allow_mail_to_files">&</a>;g
+       s;[[:<:]]allow_min_user[[:>:]];<a href="postconf.5.html#allow_min_user">&</a>;g
+       s;[[:<:]]allow_percent_hack[[:>:]];<a href="postconf.5.html#allow_percent_hack">&</a>;g
+       s;[[:<:]]allow_untrusted_routing[[:>:]];<a href="postconf.5.html#allow_untrusted_routing">&</a>;g
+       s;[[:<:]]alternate_config_directories[[:>:]];<a href="postconf.5.html#alternate_config_directories">&</a>;g
+       s;[[:<:]]always_bcc[[:>:]];<a href="postconf.5.html#always_bcc">&</a>;g
+       s;[[:<:]]anvil_rate_time_unit[[:>:]];<a href="postconf.5.html#anvil_rate_time_unit">&</a>;g
+       s;[[:<:]]append_at_myorigin[[:>:]];<a href="postconf.5.html#append_at_myorigin">&</a>;g
+       s;[[:<:]]append_dot_mydomain[[:>:]];<a href="postconf.5.html#append_dot_mydomain">&</a>;g
+       s;[[:<:]]application_event_drain_time[[:>:]];<a href="postconf.5.html#application_event_drain_time">&</a>;g
+       s;[[:<:]]backwards_bounce_logfile_compatibility[[:>:]];<a href="postconf.5.html#backwards_bounce_logfile_compatibility">&</a>;g
+       s;[[:<:]]berkeley_db_create_buffer_size[[:>:]];<a href="postconf.5.html#berkeley_db_create_buffer_size">&</a>;g
+       s;[[:<:]]berkeley_db_read_buffer_size[[:>:]];<a href="postconf.5.html#berkeley_db_read_buffer_size">&</a>;g
+       s;[[:<:]]best_mx_transport[[:>:]];<a href="postconf.5.html#best_mx_transport">&</a>;g
+       s;[[:<:]]biff[[:>:]];<a href="postconf.5.html#biff">&</a>;g
+       s;[[:<:]]body_checks[[:>:]];<a href="postconf.5.html#body_checks">&</a>;g
+       s;[[:<:]]body_checks_size_limit[[:>:]];<a href="postconf.5.html#body_checks_size_limit">&</a>;g
+       s;[[:<:]]bounce_notice_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#bounce_notice_recipient">&</a>;g
+       s;[[:<:]]bounce_queue_lifetime[[:>:]];<a href="postconf.5.html#bounce_queue_lifetime">&</a>;g
+       s;[[:<:]]bounce_service_name[[:>:]];<a href="postconf.5.html#bounce_service_name">&</a>;g
+       s;[[:<:]]bounce_size_limit[[:>:]];<a href="postconf.5.html#bounce_size_limit">&</a>;g
+       s;[[:<:]]broken_sasl_auth_clients[[:>:]];<a href="postconf.5.html#broken_sasl_auth_clients">&</a>;g
+       s;[[:<:]]canonical_maps[[:>:]];<a href="postconf.5.html#canonical_maps">&</a>;g
+       s;[[:<:]]cleanup_service_name[[:>:]];<a href="postconf.5.html#cleanup_service_name">&</a>;g
+       s;[[:<:]]anvil_status_update_time[[:>:]];<a href="postconf.5.html#anvil_status_update_time">&</a>;g
+       s;[[:<:]]command_directory[[:>:]];<a href="postconf.5.html#command_directory">&</a>;g
+       s;[[:<:]]command_expan[-</bB>]*\n* *[<bB>]*sion_filter[[:>:]];<a href="postconf.5.html#command_expansion_filter">&</a>;g
+       s;[[:<:]]command_time_limit[[:>:]];<a href="postconf.5.html#command_time_limit">&</a>;g
+       s;[[:<:]]config_direc[-</bB>]*\n*[ <bB>]*tory[[:>:]];<a href="postconf.5.html#config_directory">&</a>;g
+       s;[[:<:]]con[-</bB>]*\n*[ <bB>]*tent_filter[[:>:]];<a href="postconf.5.html#content_filter">&</a>;g
+       s;[[:<:]]daemon_directory[[:>:]];<a href="postconf.5.html#daemon_directory">&</a>;g
+       s;[[:<:]]daemon_timeout[[:>:]];<a href="postconf.5.html#daemon_timeout">&</a>;g
+       s;[[:<:]]debug_peer_level[[:>:]];<a href="postconf.5.html#debug_peer_level">&</a>;g
+       s;[[:<:]]debug_peer_list[[:>:]];<a href="postconf.5.html#debug_peer_list">&</a>;g
+       s;[[:<:]]default_database_type[[:>:]];<a href="postconf.5.html#default_database_type">&</a>;g
+       s;[[:<:]]default_deliv[-</Bb>]*\n* *[<Bb>]*ery_slot_cost[[:>:]];<a href="postconf.5.html#default_delivery_slot_cost">&</a>;g
+       s;[[:<:]]default_deliv[-</Bb>]*\n* *[<Bb>]*ery_slot_discount[[:>:]];<a href="postconf.5.html#default_delivery_slot_discount">&</a>;g
+       s;[[:<:]]default_deliv[-</Bb>]*\n* *[<Bb>]*ery_slot_loan[[:>:]];<a href="postconf.5.html#default_delivery_slot_loan">&</a>;g
+       s;[[:<:]]default_destina[-</Bb>]*\n* *[<Bb>]*tion_concurrency_limit[[:>:]];<a href="postconf.5.html#default_destination_concurrency_limit">&</a>;g
+       s;[[:<:]]default_destina[-</Bb>]*\n* *[<Bb>]*tion_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#default_destination_recipient_limit">&</a>;g
+       s;[[:<:]]default_extra_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#default_extra_recipient_limit">&</a>;g
+       s;[[:<:]]default_minimum_deliv[-</Bb>]*\n* *[<Bb>]*ery_slots[[:>:]];<a href="postconf.5.html#default_minimum_delivery_slots">&</a>;g
+       s;[[:<:]]default_privs[[:>:]];<a href="postconf.5.html#default_privs">&</a>;g
+       s;[[:<:]]default_process_limit[[:>:]];<a href="postconf.5.html#default_process_limit">&</a>;g
+       s;[[:<:]]default_rbl_reply[[:>:]];<a href="postconf.5.html#default_rbl_reply">&</a>;g
+       s;[[:<:]]default_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#default_recipient_limit">&</a>;g
+       s;[[:<:]]default_transport[[:>:]];<a href="postconf.5.html#default_transport">&</a>;g
+       s;[[:<:]]default_verp_delimiters[[:>:]];<a href="postconf.5.html#default_verp_delimiters">&</a>;g
+       s;[[:<:]]defer_code[[:>:]];<a href="postconf.5.html#defer_code">&</a>;g
+       s;[[:<:]]defer_service_name[[:>:]];<a href="postconf.5.html#defer_service_name">&</a>;g
+       s;[[:<:]]defer_transports[[:>:]];<a href="postconf.5.html#defer_transports">&</a>;g
+       s;[[:<:]]delay_notice_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#delay_notice_recipient">&</a>;g
+       s;[[:<:]]delay_warning_time[[:>:]];<a href="postconf.5.html#delay_warning_time">&</a>;g
+       s;[[:<:]]deliver_lock_attempts[[:>:]];<a href="postconf.5.html#deliver_lock_attempts">&</a>;g
+       s;[[:<:]]deliver_lock_delay[[:>:]];<a href="postconf.5.html#deliver_lock_delay">&</a>;g
+       s;[[:<:]]disable_dns_lookups[[:>:]];<a href="postconf.5.html#disable_dns_lookups">&</a>;g
+       s;[[:<:]]disable_mime_input_processing[[:>:]];<a href="postconf.5.html#disable_mime_input_processing">&</a>;g
+       s;[[:<:]]disable_mime_output_conversion[[:>:]];<a href="postconf.5.html#disable_mime_output_conversion">&</a>;g
+       s;[[:<:]]disable_verp_bounces[[:>:]];<a href="postconf.5.html#disable_verp_bounces">&</a>;g
+       s;[[:<:]]disable_vrfy_command[[:>:]];<a href="postconf.5.html#disable_vrfy_command">&</a>;g
+       s;[[:<:]]dont_remove[[:>:]];<a href="postconf.5.html#dont_remove">&</a>;g
+       s;[[:<:]]double_bounce_sender[[:>:]];<a href="postconf.5.html#double_bounce_sender">&</a>;g
+       s;[[:<:]]dupli[-</bB>]*\n* *[<bB>]*cate_filter_limit[[:>:]];<a href="postconf.5.html#duplicate_filter_limit">&</a>;g
+       s;[[:<:]]empty_address_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#empty_address_recipient">&</a>;g
+       s;[[:<:]]enable_original_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#enable_original_recipient">&</a>;g
+       s;[[:<:]]error_notice_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#error_notice_recipient">&</a>;g
+       s;[[:<:]]error_service_name[[:>:]];<a href="postconf.5.html#error_service_name">&</a>;g
+       s;[[:<:]]expand_owner_alias[[:>:]];<a href="postconf.5.html#expand_owner_alias">&</a>;g
+       s;[[:<:]]export_environment[[:>:]];<a href="postconf.5.html#export_environment">&</a>;g
+       s;[[:<:]]fallback_relay[[:>:]];<a href="postconf.5.html#fallback_relay">&</a>;g
+       s;[[:<:]]fallback_transport[[:>:]];<a href="postconf.5.html#fallback_transport">&</a>;g
+       s;[[:<:]]fast_flush_domains[[:>:]];<a href="postconf.5.html#fast_flush_domains">&</a>;g
+       s;[[:<:]]fast_flush_purge_time[[:>:]];<a href="postconf.5.html#fast_flush_purge_time">&</a>;g
+       s;[[:<:]]fast_flush_refresh_time[[:>:]];<a href="postconf.5.html#fast_flush_refresh_time">&</a>;g
+       s;[[:<:]]fault_injection_code[[:>:]];<a href="postconf.5.html#fault_injection_code">&</a>;g
+       s;[[:<:]]flush_service_name[[:>:]];<a href="postconf.5.html#flush_service_name">&</a>;g
+       s;[[:<:]]fork_attempts[[:>:]];<a href="postconf.5.html#fork_attempts">&</a>;g
+       s;[[:<:]]fork_delay[[:>:]];<a href="postconf.5.html#fork_delay">&</a>;g
+       s;[[:<:]]forward_expan[-</bB>]*\n* *[<bB>]*sion_filter[[:>:]];<a href="postconf.5.html#forward_expansion_filter">&</a>;g
+       s;[[:<:]]for[-</bB>]*\n* *[<bB>]*ward_path[[:>:]];<a href="postconf.5.html#forward_path">&</a>;g
+       s;[[:<:]]hash_queue_depth[[:>:]];<a href="postconf.5.html#hash_queue_depth">&</a>;g
+       s;[[:<:]]hash_queue_names[[:>:]];<a href="postconf.5.html#hash_queue_names">&</a>;g
+       s;[[:<:]]header_address_token_limit[[:>:]];<a href="postconf.5.html#header_address_token_limit">&</a>;g
+       s;[[:<:]]header_checks[[:>:]];<a href="postconf.5.html#header_checks">&</a>;g
+       s;[[:<:]]header_size_limit[[:>:]];<a href="postconf.5.html#header_size_limit">&</a>;g
+       s;[[:<:]]helpful_warnings[[:>:]];<a href="postconf.5.html#helpful_warnings">&</a>;g
+       s;[[:<:]]home_mailbox[[:>:]];<a href="postconf.5.html#home_mailbox">&</a>;g
+       s;[[:<:]]hopcount_limit[[:>:]];<a href="postconf.5.html#hopcount_limit">&</a>;g
+       s;[[:<:]]html_direc[-</bB>]*\n*[ <bB>]*tory[[:>:]];<a href="postconf.5.html#html_directory">&</a>;g
+       s;[[:<:]]ignore_mx_lookup_error[[:>:]];<a href="postconf.5.html#ignore_mx_lookup_error">&</a>;g
+       s;[[:<:]]import_environment[[:>:]];<a href="postconf.5.html#import_environment">&</a>;g
+       s;[[:<:]]in_flow_delay[[:>:]];<a href="postconf.5.html#in_flow_delay">&</a>;g
+       s;[[:<:]]inet_interfaces[[:>:]];<a href="postconf.5.html#inet_interfaces">&</a>;g
+       s;[[:<:]]initial_destination_concurrency[[:>:]];<a href="postconf.5.html#initial_destination_concurrency">&</a>;g
+       s;[[:<:]]invalid_hostname_reject_code[[:>:]];<a href="postconf.5.html#invalid_hostname_reject_code">&</a>;g
+       s;[[:<:]]ipc_idle[[:>:]];<a href="postconf.5.html#ipc_idle">&</a>;g
+       s;[[:<:]]ipc_timeout[[:>:]];<a href="postconf.5.html#ipc_timeout">&</a>;g
+       s;[[:<:]]ipc_ttl[[:>:]];<a href="postconf.5.html#ipc_ttl">&</a>;g
+       s;[[:<:]]line_length_limit[[:>:]];<a href="postconf.5.html#line_length_limit">&</a>;g
+       s;[[:<:]]lmtp_cache_connection[[:>:]];<a href="postconf.5.html#lmtp_cache_connection">&</a>;g
+       s;[[:<:]]lmtp_connect_timeout[[:>:]];<a href="postconf.5.html#lmtp_connect_timeout">&</a>;g
+       s;[[:<:]]lmtp_data_done_timeout[[:>:]];<a href="postconf.5.html#lmtp_data_done_timeout">&</a>;g
+       s;[[:<:]]lmtp_data_init_timeout[[:>:]];<a href="postconf.5.html#lmtp_data_init_timeout">&</a>;g
+       s;[[:<:]]lmtp_data_xfer_timeout[[:>:]];<a href="postconf.5.html#lmtp_data_xfer_timeout">&</a>;g
+       s;[[:<:]]lmtp_lhlo_timeout[[:>:]];<a href="postconf.5.html#lmtp_lhlo_timeout">&</a>;g
+       s;[[:<:]]lmtp_mail_timeout[[:>:]];<a href="postconf.5.html#lmtp_mail_timeout">&</a>;g
+       s;[[:<:]]lmtp_quit_timeout[[:>:]];<a href="postconf.5.html#lmtp_quit_timeout">&</a>;g
+       s;[[:<:]]lmtp_rcpt_timeout[[:>:]];<a href="postconf.5.html#lmtp_rcpt_timeout">&</a>;g
+       s;[[:<:]]lmtp_rset_timeout[[:>:]];<a href="postconf.5.html#lmtp_rset_timeout">&</a>;g
+       s;[[:<:]]lmtp_sasl_auth_enable[[:>:]];<a href="postconf.5.html#lmtp_sasl_auth_enable">&</a>;g
+       s;[[:<:]]lmtp_sasl_password_maps[[:>:]];<a href="postconf.5.html#lmtp_sasl_password_maps">&</a>;g
+       s;[[:<:]]lmtp_sasl_security_options[[:>:]];<a href="postconf.5.html#lmtp_sasl_security_options">&</a>;g
+       s;[[:<:]]lmtp_send_xforward_command[[:>:]];<a href="postconf.5.html#lmtp_send_xforward_command">&</a>;g
+       s;[[:<:]]lmtp_skip_quit_response[[:>:]];<a href="postconf.5.html#lmtp_skip_quit_response">&</a>;g
+       s;[[:<:]]lmtp_tcp_port[[:>:]];<a href="postconf.5.html#lmtp_tcp_port">&</a>;g
+       s;[[:<:]]lmtp_xforward_timeout[[:>:]];<a href="postconf.5.html#lmtp_xforward_timeout">&</a>;g
+       s;[[:<:]]local_command_shell[[:>:]];<a href="postconf.5.html#local_command_shell">&</a>;g
+       s;[[:<:]]local_destination_concurrency_limit[[:>:]];<a href="postconf.5.html#local_destination_concurrency_limit">&</a>;g
+       s;[[:<:]]local_destination_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#local_destination_recipient_limit">&</a>;g
+       s;[[:<:]]local_recip[-</bB>]*\n* *[<bB>]*ient_maps[[:>:]];<a href="postconf.5.html#local_recipient_maps">&</a>;g
+       s;[[:<:]]local_transport[[:>:]];<a href="postconf.5.html#local_transport">&</a>;g
+       s;[[:<:]]luser_relay[[:>:]];<a href="postconf.5.html#luser_relay">&</a>;g
+       s;[[:<:]]mail_name[[:>:]];<a href="postconf.5.html#mail_name">&</a>;g
+       s;[[:<:]]mail_owner[[:>:]];<a href="postconf.5.html#mail_owner">&</a>;g
+       s;[[:<:]]mail_release_date[[:>:]];<a href="postconf.5.html#mail_release_date">&</a>;g
+       s;[[:<:]]mail_spool_direc[-</bB>]*\n* *[<bB>]*tory[[:>:]];<a href="postconf.5.html#mail_spool_directory">&</a>;g
+       s;[[:<:]]mail_version[[:>:]];<a href="postconf.5.html#mail_version">&</a>;g
+       s;[[:<:]]mail[-</bB>]*\n* *[<bB>]*box_command[[:>:]];<a href="postconf.5.html#mailbox_command">&</a>;g
+       s;[[:<:]]mail[-</bB>]*\n* *[<bB>]*box_command_maps[[:>:]];<a href="postconf.5.html#mailbox_command_maps">&</a>;g
+       s;[[:<:]]mail[-</bB>]*\n* *[<bB>]*box_deliv[-</Bb>]*\n* *[<Bb>]*ery_lock[[:>:]];<a href="postconf.5.html#mailbox_delivery_lock">&</a>;g
+       s;[[:<:]]mail[-</bB>]*\n* *[<bB>]*box_size_limit[[:>:]];<a href="postconf.5.html#mailbox_size_limit">&</a>;g
+       s;[[:<:]]mail[-</bB>]*\n* *[<bB>]*box_transport[[:>:]];<a href="postconf.5.html#mailbox_transport">&</a>;g
+       s;[[:<:]]mailq_path[[:>:]];<a href="postconf.5.html#mailq_path">&</a>;g
+       s;[[:<:]]manpage_directory[[:>:]];<a href="postconf.5.html#manpage_directory">&</a>;g
+       s;[[:<:]]maps_rbl_domains[[:>:]];<a href="postconf.5.html#maps_rbl_domains">&</a>;g
+       s;[[:<:]]maps_rbl_reject_code[[:>:]];<a href="postconf.5.html#maps_rbl_reject_code">&</a>;g
+       s;[[:<:]]masquerade_classes[[:>:]];<a href="postconf.5.html#masquerade_classes">&</a>;g
+       s;[[:<:]]masquerade_domains[[:>:]];<a href="postconf.5.html#masquerade_domains">&</a>;g
+       s;[[:<:]]masquerade_exceptions[[:>:]];<a href="postconf.5.html#masquerade_exceptions">&</a>;g
+       s;[[:<:]]max_idle[[:>:]];<a href="postconf.5.html#max_idle">&</a>;g
+       s;[[:<:]]max_use[[:>:]];<a href="postconf.5.html#max_use">&</a>;g
+       s;[[:<:]]maxi[-</bB>]*\n*[ <bB>]*mal_backoff_time[[:>:]];<a href="postconf.5.html#maximal_backoff_time">&</a>;g
+       s;[[:<:]]maxi[-</bB>]*\n*[ <bB>]*mal_queue_lifetime[[:>:]];<a href="postconf.5.html#maximal_queue_lifetime">&</a>;g
+       s;[[:<:]]message_size_limit[[:>:]];<a href="postconf.5.html#message_size_limit">&</a>;g
+       s;[[:<:]]mime_boundary_length_limit[[:>:]];<a href="postconf.5.html#mime_boundary_length_limit">&</a>;g
+       s;[[:<:]]mime_header_checks[[:>:]];<a href="postconf.5.html#mime_header_checks">&</a>;g
+       s;[[:<:]]mime_nesting_limit[[:>:]];<a href="postconf.5.html#mime_nesting_limit">&</a>;g
+       s;[[:<:]]minimal_backoff_time[[:>:]];<a href="postconf.5.html#minimal_backoff_time">&</a>;g
+       s;[[:<:]]multi_recip[-</bB>]*\n* *[<bB>]*ient_bounce_reject_code[[:>:]];<a href="postconf.5.html#multi_recipient_bounce_reject_code">&</a>;g
+       s;[[:<:]]mydes[-</bB>]*\n*[ <bB>]*tina[-</bB>]*\n*[ <bB>]*tion[[:>:]];<a href="postconf.5.html#mydestination">&</a>;g
+       s;[[:<:]]mydomain[[:>:]];<a href="postconf.5.html#mydomain">&</a>;g
+       s;[[:<:]]myhostname[[:>:]];<a href="postconf.5.html#myhostname">&</a>;g
+       s;[[:<:]]mynetworks[[:>:]];<a href="postconf.5.html#mynetworks">&</a>;g
+       s;[[:<:]]mynetworks_style[[:>:]];<a href="postconf.5.html#mynetworks_style">&</a>;g
+       s;[[:<:]]myorigin[[:>:]];<a href="postconf.5.html#myorigin">&</a>;g
+       s;[[:<:]]nested_header_checks[[:>:]];<a href="postconf.5.html#nested_header_checks">&</a>;g
+       s;[[:<:]]newaliases_path[[:>:]];<a href="postconf.5.html#newaliases_path">&</a>;g
+       s;[[:<:]]non_fqdn_reject_code[[:>:]];<a href="postconf.5.html#non_fqdn_reject_code">&</a>;g
+       s;[[:<:]]notify_classes[[:>:]];<a href="postconf.5.html#notify_classes">&</a>;g
+       s;[[:<:]]owner_request_special[[:>:]];<a href="postconf.5.html#owner_request_special">&</a>;g
+       s;[[:<:]]parent_domain_matches_subdomains[[:>:]];<a href="postconf.5.html#parent_domain_matches_subdomains">&</a>;g
+       s;[[:<:]]permit_mx_backup_networks[[:>:]];<a href="postconf.5.html#permit_mx_backup_networks">&</a>;g
+       s;[[:<:]]pickup_service_name[[:>:]];<a href="postconf.5.html#pickup_service_name">&</a>;g
+       s;[[:<:]]prepend_delivered_header[[:>:]];<a href="postconf.5.html#prepend_delivered_header">&</a>;g
+       s;[[:<:]]process_id[[:>:]];<a href="postconf.5.html#process_id">&</a>;g
+       s;[[:<:]]process_id_directory[[:>:]];<a href="postconf.5.html#process_id_directory">&</a>;g
+       s;[[:<:]]process_name[[:>:]];<a href="postconf.5.html#process_name">&</a>;g
+       s;[[:<:]]propagate_unmatched_extensions[[:>:]];<a href="postconf.5.html#propagate_unmatched_extensions">&</a>;g
+       s;[[:<:]]proxy_interfaces[[:>:]];<a href="postconf.5.html#proxy_interfaces">&</a>;g
+       s;[[:<:]]proxy_read_maps[[:>:]];<a href="postconf.5.html#proxy_read_maps">&</a>;g
+       s;[[:<:]]qmgr_clog_warn_time[[:>:]];<a href="postconf.5.html#qmgr_clog_warn_time">&</a>;g
+       s;[[:<:]]qmgr_fudge_factor[[:>:]];<a href="postconf.5.html#qmgr_fudge_factor">&</a>;g
+       s;[[:<:]]qmgr_message_active_limit[[:>:]];<a href="postconf.5.html#qmgr_message_active_limit">&</a>;g
+       s;[[:<:]]qmgr_message_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#qmgr_message_recipient_limit">&</a>;g
+       s;[[:<:]]qmgr_message_recip[-</bB>]*\n* *[<bB>]*ient_minimum[[:>:]];<a href="postconf.5.html#qmgr_message_recipient_minimum">&</a>;g
+       s;[[:<:]]qmqpd_authorized_clients[[:>:]];<a href="postconf.5.html#qmqpd_authorized_clients">&</a>;g
+       s;[[:<:]]qmqpd_error_delay[[:>:]];<a href="postconf.5.html#qmqpd_error_delay">&</a>;g
+       s;[[:<:]]qmqpd_timeout[[:>:]];<a href="postconf.5.html#qmqpd_timeout">&</a>;g
+       s;[[:<:]]queue_directory[[:>:]];<a href="postconf.5.html#queue_directory">&</a>;g
+       s;[[:<:]]queue_file_attribute_count_limit[[:>:]];<a href="postconf.5.html#queue_file_attribute_count_limit">&</a>;g
+       s;[[:<:]]queue_minfree[[:>:]];<a href="postconf.5.html#queue_minfree">&</a>;g
+       s;[[:<:]]queue_run_delay[[:>:]];<a href="postconf.5.html#queue_run_delay">&</a>;g
+       s;[[:<:]]queue_service_name[[:>:]];<a href="postconf.5.html#queue_service_name">&</a>;g
+       s;[[:<:]]rbl_reply_maps[[:>:]];<a href="postconf.5.html#rbl_reply_maps">&</a>;g
+       s;[[:<:]]readme_directory[[:>:]];<a href="postconf.5.html#readme_directory">&</a>;g
+       s;[[:<:]]receive_override_options[[:>:]];<a href="postconf.5.html#receive_override_options">&</a>;g
+       s;[[:<:]]no_unknown_recip[-</bB>]*\n* *[<bB>]*ient_checks[[:>:]];<a href="postconf.5.html#no_unknown_recipient_checks">&</a>;g
+       s;[[:<:]]no_address_mappings[[:>:]];<a href="postconf.5.html#no_address_mappings">&</a>;g
+       s;[[:<:]]no_header_body_checks[[:>:]];<a href="postconf.5.html#no_header_body_checks">&</a>;g
+       s;[[:<:]]recip[-</bB>]*\n* *[<bB>]*ient_bcc_maps[[:>:]];<a href="postconf.5.html#recipient_bcc_maps">&</a>;g
+       s;[[:<:]]recip[-</bB>]*\n* *[<bB>]*ient_canonical_maps[[:>:]];<a href="postconf.5.html#recipient_canonical_maps">&</a>;g
+       s;[[:<:]]recip[-</bB>]*\n* *[<bB>]*ient_delim[-</bB>]*\n* *[<bB>]*iter[[:>:]];<a href="postconf.5.html#recipient_delimiter">&<\/a>;g
+       s;[[:<:]]reject_code[[:>:]];<a href="postconf.5.html#reject_code">&</a>;g
+       s;[[:<:]]relay_domains[[:>:]];<a href="postconf.5.html#relay_domains">&</a>;g
+       s;[[:<:]]relay_domains_reject_code[[:>:]];<a href="postconf.5.html#relay_domains_reject_code">&</a>;g
+       s;[[:<:]]relay_recipi[-</bB>]*\n*[ <bB>]*ent_maps[[:>:]];<a href="postconf.5.html#relay_recipient_maps">&</a>;g
+       s;[[:<:]]relay_transport[[:>:]];<a href="postconf.5.html#relay_transport">&</a>;g
+       s;[[:<:]]relayhost[[:>:]];<a href="postconf.5.html#relayhost">&</a>;g
+       s;[[:<:]]relocated_maps[[:>:]];<a href="postconf.5.html#relocated_maps">&</a>;g
+       s;[[:<:]]require_home_directory[[:>:]];<a href="postconf.5.html#require_home_directory">&</a>;g
+       s;[[:<:]]resolve_dequoted_address[[:>:]];<a href="postconf.5.html#resolve_dequoted_address">&</a>;g
+       s;[[:<:]]rewrite_service_name[[:>:]];<a href="postconf.5.html#rewrite_service_name">&</a>;g
+       s;[[:<:]]sample_directory[[:>:]];<a href="postconf.5.html#sample_directory">&</a>;g
+       s;[[:<:]]sender_based_routing[[:>:]];<a href="postconf.5.html#sender_based_routing">&</a>;g
+       s;[[:<:]]sender_bcc_maps[[:>:]];<a href="postconf.5.html#sender_bcc_maps">&</a>;g
+       s;[[:<:]]sender_canonical_maps[[:>:]];<a href="postconf.5.html#sender_canonical_maps">&</a>;g
+       s;[[:<:]]sendmail_path[[:>:]];<a href="postconf.5.html#sendmail_path">&</a>;g
+       s;[[:<:]]service_throttle_time[[:>:]];<a href="postconf.5.html#service_throttle_time">&</a>;g
+       s;[[:<:]]setgid_group[[:>:]];<a href="postconf.5.html#setgid_group">&</a>;g
+       s;[[:<:]]show_user_unknown_table_name[[:>:]];<a href="postconf.5.html#show_user_unknown_table_name">&</a>;g
+       s;[[:<:]]showq_service_name[[:>:]];<a href="postconf.5.html#showq_service_name">&</a>;g
+       s;[[:<:]]smtp_always_send_ehlo[[:>:]];<a href="postconf.5.html#smtp_always_send_ehlo">&</a>;g
+       s;[[:<:]]smtp_bind_address[[:>:]];<a href="postconf.5.html#smtp_bind_address">&</a>;g
+       s;[[:<:]]smtp_connect_timeout[[:>:]];<a href="postconf.5.html#smtp_connect_timeout">&</a>;g
+       s;[[:<:]]smtp_data_done_timeout[[:>:]];<a href="postconf.5.html#smtp_data_done_timeout">&</a>;g
+       s;[[:<:]]smtp_data_init_timeout[[:>:]];<a href="postconf.5.html#smtp_data_init_timeout">&</a>;g
+       s;[[:<:]]smtp_data_xfer_timeout[[:>:]];<a href="postconf.5.html#smtp_data_xfer_timeout">&</a>;g
+       s;[[:<:]]smtp_defer_if_no_mx_address_found[[:>:]];<a href="postconf.5.html#smtp_defer_if_no_mx_address_found">&</a>;g
+       s;[[:<:]]lmtp_destination_concurrency_limit[[:>:]];<a href="postconf.5.html#lmtp_destination_concurrency_limit">&</a>;g
+       s;[[:<:]]lmtp_destination_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#lmtp_destination_recipient_limit">&</a>;g
+       s;[[:<:]]relay_destination_concurrency_limit[[:>:]];<a href="postconf.5.html#relay_destination_concurrency_limit">&</a>;g
+       s;[[:<:]]relay_destination_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#relay_destination_recipient_limit">&</a>;g
+       s;[[:<:]]resolve_null_domain[[:>:]];<a href="postconf.5.html#resolve_null_domain">&</a>;g
+       s;[[:<:]]smtp_destination_concurrency_limit[[:>:]];<a href="postconf.5.html#smtp_destination_concurrency_limit">&</a>;g
+       s;[[:<:]]smtp_destination_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#smtp_destination_recipient_limit">&</a>;g
+       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_destination_concurrency_limit[[:>:]];<a href="postconf.5.html#virtual_destination_concurrency_limit">&</a>;g
+       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_destination_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#virtual_destination_recipient_limit">&</a>;g
+       s;[[:<:]]smtp_helo_name[[:>:]];<a href="postconf.5.html#smtp_helo_name">&</a>;g
+       s;[[:<:]]smtp_helo_timeout[[:>:]];<a href="postconf.5.html#smtp_helo_timeout">&</a>;g
+       s;[[:<:]]smtp_host_lookup[[:>:]];<a href="postconf.5.html#smtp_host_lookup">&</a>;g
+       s;[[:<:]]smtp_line_length_limit[[:>:]];<a href="postconf.5.html#smtp_line_length_limit">&</a>;g
+       s;[[:<:]]smtp_mail_timeout[[:>:]];<a href="postconf.5.html#smtp_mail_timeout">&</a>;g
+       s;[[:<:]]smtp_mx_address_limit[[:>:]];<a href="postconf.5.html#smtp_mx_address_limit">&</a>;g
+       s;[[:<:]]smtp_mx_session_limit[[:>:]];<a href="postconf.5.html#smtp_mx_session_limit">&</a>;g
+       s;[[:<:]]smtp_never_send_ehlo[[:>:]];<a href="postconf.5.html#smtp_never_send_ehlo">&</a>;g
+       s;[[:<:]]smtp_pix_workaround_delay_time[[:>:]];<a href="postconf.5.html#smtp_pix_workaround_delay_time">&</a>;g
+       s;[[:<:]]smtp_pix_workaround_threshold_time[[:>:]];<a href="postconf.5.html#smtp_pix_workaround_threshold_time">&</a>;g
+       s;[[:<:]]smtp_quit_timeout[[:>:]];<a href="postconf.5.html#smtp_quit_timeout">&</a>;g
+       s;[[:<:]]smtp_quote_rfc821_envelope[[:>:]];<a href="postconf.5.html#smtp_quote_rfc821_envelope">&</a>;g
+       s;[[:<:]]smtp_randomize_addresses[[:>:]];<a href="postconf.5.html#smtp_randomize_addresses">&</a>;g
+       s;[[:<:]]smtp_rcpt_timeout[[:>:]];<a href="postconf.5.html#smtp_rcpt_timeout">&</a>;g
+       s;[[:<:]]smtp_rset_timeout[[:>:]];<a href="postconf.5.html#smtp_rset_timeout">&</a>;g
+       s;[[:<:]]smtp_sasl_auth_enable[[:>:]];<a href="postconf.5.html#smtp_sasl_auth_enable">&</a>;g
+       s;[[:<:]]smtp_sasl_password_maps[[:>:]];<a href="postconf.5.html#smtp_sasl_password_maps">&</a>;g
+       s;[[:<:]]smtp_sasl_security_options[[:>:]];<a href="postconf.5.html#smtp_sasl_security_options">&</a>;g
+       s;[[:<:]]smtp_send_xforward_command[[:>:]];<a href="postconf.5.html#smtp_send_xforward_command">&</a>;g
+       s;[[:<:]]smtp_skip_4xx_greeting[[:>:]];<a href="postconf.5.html#smtp_skip_4xx_greeting">&</a>;g
+       s;[[:<:]]smtp_skip_5xx_greeting[[:>:]];<a href="postconf.5.html#smtp_skip_5xx_greeting">&</a>;g
+       s;[[:<:]]smtp_skip_quit_response[[:>:]];<a href="postconf.5.html#smtp_skip_quit_response">&</a>;g
+       s;[[:<:]]smtp_xforward_timeout[[:>:]];<a href="postconf.5.html#smtp_xforward_timeout">&</a>;g
+       s;[[:<:]]smtpd_autho[-</bB>]*\n*[ <bB>]*rized_verp_clients[[:>:]];<a href="postconf.5.html#smtpd_authorized_verp_clients">&</a>;g
+       s;[[:<:]]smtpd_autho[-</bB>]*\n*[ <bB>]*rized_xclient_hosts[[:>:]];<a href="postconf.5.html#smtpd_authorized_xclient_hosts">&</a>;g
+       s;[[:<:]]smtpd_autho[-</bB>]*\n*[ <bB>]*rized_xforward_hosts[[:>:]];<a href="postconf.5.html#smtpd_authorized_xforward_hosts">&</a>;g
+       s;[[:<:]]smtpd_banner[[:>:]];<a href="postconf.5.html#smtpd_banner">&</a>;g
+       s;[[:<:]]smtpd_client_connection_count_limit[[:>:]];<a href="postconf.5.html#smtpd_client_connection_count_limit">&</a>;g
+       s;[[:<:]]smtpd_client_connection_limit_exceptions[[:>:]];<a href="postconf.5.html#smtpd_client_connection_limit_exceptions">&</a>;g
+       s;[[:<:]]smtpd_client_connection_rate_limit[[:>:]];<a href="postconf.5.html#smtpd_client_connection_rate_limit">&</a>;g
+       s;[[:<:]]smtpd_client_restrictions[[:>:]];<a href="postconf.5.html#smtpd_client_restrictions">&</a>;g
+       s;[[:<:]]smtpd_data_restrictions[[:>:]];<a href="postconf.5.html#smtpd_data_restrictions">&</a>;g
+       s;[[:<:]]smtpd_delay_reject[[:>:]];<a href="postconf.5.html#smtpd_delay_reject">&</a>;g
+       s;[[:<:]]smtpd_error_sleep_time[[:>:]];<a href="postconf.5.html#smtpd_error_sleep_time">&</a>;g
+       s;[[:<:]]smtpd_etrn_restrictions[[:>:]];<a href="postconf.5.html#smtpd_etrn_restrictions">&</a>;g
+       s;[[:<:]]smtpd_expansion_filter[[:>:]];<a href="postconf.5.html#smtpd_expansion_filter">&</a>;g
+       s;[[:<:]]smtpd_hard_error_limit[[:>:]];<a href="postconf.5.html#smtpd_hard_error_limit">&</a>;g
+       s;[[:<:]]smtpd_helo_required[[:>:]];<a href="postconf.5.html#smtpd_helo_required">&</a>;g
+       s;[[:<:]]smtpd_helo_restrictions[[:>:]];<a href="postconf.5.html#smtpd_helo_restrictions">&</a>;g
+       s;[[:<:]]smtpd_history_flush_threshold[[:>:]];<a href="postconf.5.html#smtpd_history_flush_threshold">&</a>;g
+       s;[[:<:]]smtpd_junk_command_limit[[:>:]];<a href="postconf.5.html#smtpd_junk_command_limit">&</a>;g
+       s;[[:<:]]smtpd_noop_commands[[:>:]];<a href="postconf.5.html#smtpd_noop_commands">&</a>;g
+       s;[[:<:]]smtpd_null_access_lookup_key[[:>:]];<a href="postconf.5.html#smtpd_null_access_lookup_key">&</a>;g
+       s;[[:<:]]smtpd_recipient_overshoot_limit[[:>:]];<a href="postconf.5.html#smtpd_recipient_overshoot_limit">&</a>;g
+       s;[[:<:]]smtpd_policy_service_max_idle[[:>:]];<a href="postconf.5.html#smtpd_policy_service_max_idle">&</a>;g
+       s;[[:<:]]smtpd_policy_service_max_ttl[[:>:]];<a href="postconf.5.html#smtpd_policy_service_max_ttl">&</a>;g
+       s;[[:<:]]smtpd_policy_service_timeout[[:>:]];<a href="postconf.5.html#smtpd_policy_service_timeout">&</a>;g
+       s;[[:<:]]smtpd_proxy_ehlo[[:>:]];<a href="postconf.5.html#smtpd_proxy_ehlo">&</a>;g
+       s;[[:<:]]smtpd_proxy_filter[[:>:]];<a href="postconf.5.html#smtpd_proxy_filter">&</a>;g
+       s;[[:<:]]smtpd_proxy_timeout[[:>:]];<a href="postconf.5.html#smtpd_proxy_timeout">&</a>;g
+       s;[[:<:]]smtpd_recip[-</bB>]*\n* *[<bB>]*ient_limit[[:>:]];<a href="postconf.5.html#smtpd_recipient_limit">&</a>;g
+       s;[[:<:]]smtpd_recip[-</bB>]*\n* *[<bB>]*ient_restrictions[[:>:]];<a href="postconf.5.html#smtpd_recipient_restrictions">&</a>;g
+       s;[[:<:]]smtpd_reject_unlisted_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#smtpd_reject_unlisted_recipient">&</a>;g
+       s;[[:<:]]smtpd_reject_unlisted_sender[[:>:]];<a href="postconf.5.html#smtpd_reject_unlisted_sender">&</a>;g
+       s;[[:<:]]smtpd_restriction_classes[[:>:]];<a href="postconf.5.html#smtpd_restriction_classes">&</a>;g
+       s;[[:<:]]smtpd_sasl_application_name[[:>:]];<a href="postconf.5.html#smtpd_sasl_application_name">&</a>;g
+       s;[[:<:]]smtpd_sasl_auth_enable[[:>:]];<a href="postconf.5.html#smtpd_sasl_auth_enable">&</a>;g
+       s;[[:<:]]smtpd_sasl_exceptions_networks[[:>:]];<a href="postconf.5.html#smtpd_sasl_exceptions_networks">&</a>;g
+       s;[[:<:]]smtpd_sasl_local_domain[[:>:]];<a href="postconf.5.html#smtpd_sasl_local_domain">&</a>;g
+       s;[[:<:]]smtpd_sasl_security_options[[:>:]];<a href="postconf.5.html#smtpd_sasl_security_options">&</a>;g
+       s;[[:<:]]smtpd_sender_login_maps[[:>:]];<a href="postconf.5.html#smtpd_sender_login_maps">&</a>;g
+       s;[[:<:]]smtpd_sender_restrictions[[:>:]];<a href="postconf.5.html#smtpd_sender_restrictions">&</a>;g
+       s;[[:<:]]smtpd_soft_error_limit[[:>:]];<a href="postconf.5.html#smtpd_soft_error_limit">&</a>;g
+       s;[[:<:]]smtpd_timeout[[:>:]];<a href="postconf.5.html#smtpd_timeout">&</a>;g
+       s;[[:<:]]soft_bounce[[:>:]];<a href="postconf.5.html#soft_bounce">&</a>;g
+       s;[[:<:]]stale_lock_time[[:>:]];<a href="postconf.5.html#stale_lock_time">&</a>;g
+       s;[[:<:]]strict_7bit_headers[[:>:]];<a href="postconf.5.html#strict_7bit_headers">&</a>;g
+       s;[[:<:]]strict_8bitmime[[:>:]];<a href="postconf.5.html#strict_8bitmime">&</a>;g
+       s;[[:<:]]strict_8bitmime_body[[:>:]];<a href="postconf.5.html#strict_8bitmime_body">&</a>;g
+       s;[[:<:]]strict_mime_encoding_domain[[:>:]];<a href="postconf.5.html#strict_mime_encoding_domain">&</a>;g
+       s;[[:<:]]strict_rfc821_envelopes[[:>:]];<a href="postconf.5.html#strict_rfc821_envelopes">&</a>;g
+       s;[[:<:]]sun_mailtool_compatibility[[:>:]];<a href="postconf.5.html#sun_mailtool_compatibility">&</a>;g
+       s;[[:<:]]swap_bangpath[[:>:]];<a href="postconf.5.html#swap_bangpath">&</a>;g
+       s;[[:<:]]syslog_facility[[:>:]];<a href="postconf.5.html#syslog_facility">&</a>;g
+       s;[[:<:]]syslog_name[[:>:]];<a href="postconf.5.html#syslog_name">&</a>;g
+       s;[[:<:]]trace_service_name[[:>:]];<a href="postconf.5.html#trace_service_name">&</a>;g
+       s;[[:<:]]transport_maps[[:>:]];<a href="postconf.5.html#transport_maps">&</a>;g
+       s;[[:<:]]transport_retry_time[[:>:]];<a href="postconf.5.html#transport_retry_time">&</a>;g
+       s;[[:<:]]trigger_timeout[[:>:]];<a href="postconf.5.html#trigger_timeout">&</a>;g
+       s;[[:<:]]undisclosed_recip[-</bB>]*\n* *[<bB>]*ients_header[[:>:]];<a href="postconf.5.html#undisclosed_recipients_header">&</a>;g
+       s;[[:<:]]unknown_address_reject_code[[:>:]];<a href="postconf.5.html#unknown_address_reject_code">&</a>;g
+       s;[[:<:]]unknown_client_reject_code[[:>:]];<a href="postconf.5.html#unknown_client_reject_code">&</a>;g
+       s;[[:<:]]unknown_hostname_reject_code[[:>:]];<a href="postconf.5.html#unknown_hostname_reject_code">&</a>;g
+       s;[[:<:]]unknown_local_recip[-</bB>]*\n* *[<bB>]*ient_reject_code[[:>:]];<a href="postconf.5.html#unknown_local_recipient_reject_code">&</a>;g
+       s;[[:<:]]unknown_relay_recipi[-</bB>]*\n*[ <bB>]*ent_reject_code[[:>:]];<a href="postconf.5.html#unknown_relay_recipient_reject_code">&</a>;g
+       s;[[:<:]]unknown_virtual_alias_reject_code[[:>:]];<a href="postconf.5.html#unknown_virtual_alias_reject_code">&</a>;g
+       s;[[:<:]]unknown_virtual_mail[-</bB>]*\n* *[<bB>]*box_reject_code[[:>:]];<a href="postconf.5.html#unknown_virtual_mailbox_reject_code">&</a>;g
+       s;[[:<:]]unverified_recip[-</bB>]*\n* *[<bB>]*ient_reject_code[[:>:]];<a href="postconf.5.html#unverified_recipient_reject_code">&</a>;g
+       s;[[:<:]]unverified_sender_reject_code[[:>:]];<a href="postconf.5.html#unverified_sender_reject_code">&</a>;g
+       s;[[:<:]]verp_delimiter_filter[[:>:]];<a href="postconf.5.html#verp_delimiter_filter">&</a>;g
+       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_alias_domains[[:>:]];<a href="postconf.5.html#virtual_alias_domains">&</a>;g
+       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_alias_expansion_limit[[:>:]];<a href="postconf.5.html#virtual_alias_expansion_limit">&</a>;g
+       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_alias_maps[[:>:]];<a href="postconf.5.html#virtual_alias_maps">&</a>;g
+       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_maps[[:>:]];<a href="postconf.5.html#virtual_maps">&</a>;g
+       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_alias_recursion_limit[[:>:]];<a href="postconf.5.html#virtual_alias_recursion_limit">&</a>;g
+       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_gid_maps[[:>:]];<a href="postconf.5.html#virtual_gid_maps">&</a>;g
+       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_mail[-</bB>]*\n* *[<bB>]*box_base[[:>:]];<a href="postconf.5.html#virtual_mailbox_base">&</a>;g
+       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_mail[-</bB>]*\n* *[<bB>]*box_domains[[:>:]];<a href="postconf.5.html#virtual_mailbox_domains">&</a>;g
+       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_mail[-</bB>]*\n* *[<bB>]*box_limit[[:>:]];<a href="postconf.5.html#virtual_mailbox_limit">&</a>;g
+       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_mail[-</bB>]*\n* *[<bB>]*box_lock[[:>:]];<a href="postconf.5.html#virtual_mailbox_lock">&</a>;g
+       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_mail[-</bB>]*\n* *[<bB>]*box_maps[[:>:]];<a href="postconf.5.html#virtual_mailbox_maps">&</a>;g
+       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_minimum_uid[[:>:]];<a href="postconf.5.html#virtual_minimum_uid">&</a>;g
+       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_transport[[:>:]];<a href="postconf.5.html#virtual_transport">&</a>;g
+       s;[[:<:]]vir[-</bB>]*\n*[ <bB>]*tual_uid_maps[[:>:]];<a href="postconf.5.html#virtual_uid_maps">&</a>;g
+
+       # Undo hyperlinks of manual pages with the same name as parameters.
+
+       s/<a href="[^"]*">\([^<]*\)<\/a>(/\1(/g
+
+       # Undo hyperlinks of pathnames thay collide with parameter names.
+
+       s/\/<a href="[^"]*">\([^<]*\)<\/a>/\/\1/g
+
+       # Hyperlink Postfix manual page references.
+
+       s/[<bB>]*anvil[</bB>]*(8)/<a href="anvil.8.html">&<\/a>/g
+       s/[<bB>]*bounce[</bB>]*(8)/<a href="bounce.8.html">&<\/a>/g
+       s/[<bB>]*cleanup[</bB>]*(8)/<a href="cleanup.8.html">&<\/a>/g
+       s/[<bB>]*defer[</bB>]*(8)/<a href="defer.8.html">&<\/a>/g
+       s/[<bB>]*error[</bB>]*(8)/<a href="error.8.html">&<\/a>/g
+       s/[<bB>]*flush[</bB>]*(8)/<a href="flush.8.html">&<\/a>/g
+       s/[<bB>]*lmtp[</bB>]*(8)/<a href="lmtp.8.html">&<\/a>/g
+       s/[<bB>]*local[</bB>]*(8)/<a href="local.8.html">&<\/a>/g
+       s/[<bB>]*mas[-</bB>]*\n* *[<bB>]*ter[</bB>]*(8)/<a href="master.8.html">&<\/a>/g
+       s/[<bB>]*pickup[</bB>]*(8)/<a href="pickup.8.html">&<\/a>/g
+       s/[<bB>]*pipe[</bB>]*(8)/<a href="pipe.8.html">&<\/a>/g
+       s/[<bB>]*oqmgr[</bB>]*(8)/<a href="qmgr.8.html">&<\/a>/g
+       s/[<bB>]*[[:<:]]qmgr[</bB>]*(8)/<a href="qmgr.8.html">&<\/a>/g
+       s/[<bB>]*qmqpd[</bB>]*(8)/<a href="qmqpd.8.html">&<\/a>/g
+       s/[<bB>]*showq[</bB>]*(8)/<a href="showq.8.html">&<\/a>/g
+       s/[<bB>]*smtp[</bB>]*(8)/<a href="smtp.8.html">&<\/a>/g
+       s/[<bB>]*smtpd[</bB>]*(8)/<a href="smtpd.8.html">&<\/a>/g
+       s/[<bB>]*spawn[</bB>]*(8)/<a href="spawn.8.html">&<\/a>/g
+       s/[<bB>]*trace[</bB>]*(8)/<a href="trace.8.html">&<\/a>/g
+       s/[<bB>]*trivial- *<br> *rewrite[</bB>]*(8)/<a href="trivial-rewrite.8.html">&<\/a>/g
+       s/[<bB>]*triv[-</bB>]*\n* *[<bB>]*ial-[</bB>]*\n* *[<bB>]*rewrite[</bB>]*(8)/<a href="trivial-rewrite.8.html">&<\/a>/g
+       s/[<bB>]*mailq[</bB>]*(1)/<a href="mailq.1.html">&<\/a>/g
+       s/[<bB>]*newaliases[</bB>]*(1)/<a href="newaliases.1.html">&<\/a>/g
+       s/[<bB>]*postalias[</bB>]*(1)/<a href="postalias.1.html">&<\/a>/g
+       s/[<bB>]*postcat[</bB>]*(1)/<a href="postcat.1.html">&<\/a>/g
+       s/[<bB>]*postconf[</bB>]*(1)/<a href="postconf.1.html">&<\/a>/g
+       s/[<bB>]*postdrop[</bB>]*(1)/<a href="postdrop.1.html">&<\/a>/g
+       s/[<bB>]*postfix[</bB>]*(1)/<a href="postfix.1.html">&<\/a>/g
+       s/[<bB>]*postkick[</bB>]*(1)/<a href="postkick.1.html">&<\/a>/g
+       s/[<bB>]*postlock[</bB>]*(1)/<a href="postlock.1.html">&<\/a>/g
+       s/[<bB>]*postlog[</bB>]*(1)/<a href="postlog.1.html">&<\/a>/g
+       s/[<bB>]*postmap[</bB>]*(1)/<a href="postmap.1.html">&<\/a>/g
+       s/[<bB>]*postqueue[</bB>]*(1)/<a href="postqueue.1.html">&<\/a>/g
+       s/[<bB>]*postsuper[</bB>]*(1)/<a href="postsuper.1.html">&<\/a>/g
+       s/[<bB>]*send[-</bB>]*\n*[ <bB>]*mail[</bB>]*(1)/<a href="sendmail.1.html">&<\/a>/g
+       s/[<bB>]*smtp-[</bB>]*\n* *[<bB>]*source[</bB>]*(1)/<a href="smtp-source.1.html">&<\/a>/g
+       s/[<bB>]*smtp-[</bB>]*\n* *[<bB>]*sink[</bB>]*(1)/<a href="smtp-sink.1.html">&<\/a>/g
+       s/[<bB>]*qmqp-[</bB>]*\n* *[<bB>]*source[</bB>]*(1)/<a href="qmqp-source.1.html">&<\/a>/g
+       s/[<bB>]*qmqp-[</bB>]*\n* *[<bB>]*sink[</bB>]*(1)/<a href="qmqp-sink.1.html">&<\/a>/g
+       s/[<bB>]*qshape[</bB>]*(1)/<a href="qshape.1.html">&<\/a>/g
+       s/[<bB>]*access[</bB>]*(5)/<a href="access.5.html">&<\/a>/g
+       s/[<bB>]*aliases[</bB>]*(5)/<a href="aliases.5.html">&<\/a>/g
+       s/[<bB>]*canonical[</bB>]*(5)/<a href="canonical.5.html">&<\/a>/g
+       s/[<bB>]*etrn[</bB>]*(5)/<a href="etrn.5.html">&<\/a>/g
+       s/[<bB>]*ldap[</bBiI>]*_[</iIbB>]*table[</bB>]*(5)/<a href="ldap_table.5.html">&<\/a>/g
+       s/[<bB>]*mysql[</bBiI>]*_[</iIbB>]*table[</bB>]*(5)/<a href="mysql_table.5.html">&<\/a>/g
+       s/[<bB>]*pcre[</bBiI>]*_[</iIbB>]*table[</bB>]*(5)/<a href="pcre_table.5.html">&<\/a>/g
+       s/[<bB>]*pgsql[</bBiI>]*_[</iIbB>]*table[</bB>]*(5)/<a href="pgsql_table.5.html">&<\/a>/g
+       s/[<bB>]*postconf[</bB>]*(5)/<a href="postconf.5.html">&<\/a>/g
+       s/[<bB>]*proxymap[</bB>]*(8)/<a href="proxymap.8.html">&<\/a>/g
+       s/[<bB>]*reg[-</bB>]*\n*[ <bB>]*exp[</bBiI>]*_[</iIbB>]*table[</bB>]*(5)/<a href="regexp_table.5.html">&<\/a>/g
+       s/[<bB>]*relocated[</bB>]*(5)/<a href="relocated.5.html">&<\/a>/g
+       s/[<bB>]*trans[-</bB>]*\n*[ <bB>]*port[</bB>]*(5)/<a href="transport.5.html">&<\/a>/g
+       s/[<bB>]*verify[</bB>]*(8)/<a href="verify.8.html">&<\/a>/g
+       s/[<bB>]*virtual[</bB>]*(5)/<a href="virtual.5.html">&<\/a>/g
+       s/[<bB>]*virtual[</bB>]*(8)/<a href="virtual.8.html">&<\/a>/g
+       s/[<bB>]*cidr_table[</bB>]*(5)/<a href="cidr_table.5.html">&<\/a>/g
+       s/[<bB>]*tcp_table[</bB>]*(5)/<a href="tcp_table.5.html">&<\/a>/g
+       s/[<bB>]*body_checks[</bB>]*(5)/<a href="header_checks.5.html">&<\/a>/g
+       s/[<bB>]*header_checks[</bB>]*(5)/<a href="header_checks.5.html">&<\/a>/g
+
+       # Hyperlink README document names
+
+       s/[[:<:]][A-Z_]*_README[[:>:]]/<a href="&.html">&<\/a>/g
+       s/[[:<:]]INSTALL[[:>:]]/<a href="&.html">&<\/a>/g
+       s/[[:<:]]OVERVIEW[[:>:]]/<a href="&.html">&<\/a>/g
+       s/"type:table"/"<a href="DATABASE_README.html">type:table<\/a>"/g
+
+       # Split manual page hyperlinks across newlines
+
+       s/\(<a href="[^"]*">\)\([<bB>]*[-a-z0-9_]*[-</bB>]*\)\(\n *\)\([<bB>]*[-a-z0-9_]*[</bB>]*([0-9])\)\(<\/a>\)/\1\2\5\3\1\4\5/
+
+       # Access restrictions - generic
+
+       s;[[:<:]]check_policy_service[[:>:]];<a href="postconf.5.html#check_policy_service">&</a>;g
+       s;[[:<:]]defer_if_permit[[:>:]];<a href="postconf.5.html#defer_if_permit">&</a>;g
+       s;[[:<:]]defer_if_reject[[:>:]];<a href="postconf.5.html#defer_if_reject">&</a>;g
+       s;[[:<:]]reject_multi_recip[-</bB>]*\n* *[<bB>]*ient_bounce[[:>:]];<a href="postconf.5.html#reject_multi_recipient_bounce">&</a>;g
+       s;[[:<:]]reject_unauth_pipelining[[:>:]];<a href="postconf.5.html#reject_unauth_pipelining">&</a>;g
+       s;[[:<:]]warn_if_reject[[:>:]];<a href="postconf.5.html#warn_if_reject">&</a>;g
+
+       # Access restrictions - client
+
+       s;[[:<:]]check_client_access[[:>:]];<a href="postconf.5.html#check_client_access">&</a>;g
+       s;[[:<:]]permit_mynetworks[[:>:]];<a href="postconf.5.html#permit_mynetworks">&</a>;g
+       s;[[:<:]]reject_unknown_client[[:>:]];<a href="postconf.5.html#reject_unknown_client">&</a>;g
+       s;[[:<:]]reject_rbl_client[[:>:]];<a href="postconf.5.html#reject_rbl_client">&</a>;g
+       s;[[:<:]]reject_rhsbl_client[[:>:]];<a href="postconf.5.html#reject_rhsbl_client">&</a>;g
+
+       # Access restrictions - helo
+
+       s;[[:<:]]check_helo_access[[:>:]];<a href="postconf.5.html#check_helo_access">&</a>;g
+       s;[[:<:]]reject_invalid_hostname[[:>:]];<a href="postconf.5.html#reject_invalid_hostname">&</a>;g
+       s;[[:<:]]reject_non_fqdn_hostname[[:>:]];<a href="postconf.5.html#reject_non_fqdn_hostname">&</a>;g
+       s;[[:<:]]reject_unknown_hostname[[:>:]];<a href="postconf.5.html#reject_unknown_hostname">&</a>;g
+
+       # Access restrictions - sender
+
+       s;[[:<:]]check_sender_access[[:>:]];<a href="postconf.5.html#check_sender_access">&</a>;g
+       s;[[:<:]]\(reject_authenti\)\([-</bB>]*\n*[ <bB>]*\)\(cated_sender_login_mismatch\)[[:>:]];<a href="postconf.5.html#reject_authenticated_sender_login_mismatch">\1<\/a>\2<a href="postconf.5.html#reject_authenticated_sender_login_mismatch">\3</a>;g
+       s;[[:<:]]reject_non_fqdn_sender[[:>:]];<a href="postconf.5.html#reject_non_fqdn_sender">&</a>;g
+       s;[[:<:]]reject_rhsbl_sender[[:>:]];<a href="postconf.5.html#reject_rhsbl_sender">&</a>;g
+       s;[[:<:]]reject_sender_login_mis[-</bB>]*\n*[ <bB>]*match[[:>:]];<a href="postconf.5.html#reject_sender_login_mismatch">&</a>;g
+       s;[[:<:]]reject_unauthenticated_sender_login_mismatch[[:>:]];<a href="postconf.5.html#reject_unauthenticated_sender_login_mismatch">&</a>;g
+       s;[[:<:]]reject_unknown_sender_domain[[:>:]];<a href="postconf.5.html#reject_unknown_sender_domain">&</a>;g
+       s;[[:<:]]reject_unlisted_sender[[:>:]];<a href="postconf.5.html#reject_unlisted_sender">&</a>;g
+       s;[[:<:]]reject_unveri[-</bB>]*\n*[ <bB>]*fied_sender[[:>:]];<a href="postconf.5.html#reject_unverified_sender">&</a>;g
+
+       # Access restrictions - recip[-</bB>]*\n* *[<bB>]*ient
+
+       s;[[:<:]]check_recip[-</bB>]*\n* *[<bB>]*ient_access[[:>:]];<a href="postconf.5.html#check_recipient_access">&</a>;g
+       s;[[:<:]]check_recip[-</bB>]*\n* *[<bB>]*ient_mx_access[[:>:]];<a href="postconf.5.html#check_recipient_mx_access">&</a>;g
+       s;[[:<:]]check_recip[-</bB>]*\n* *[<bB>]*ient_ns_access[[:>:]];<a href="postconf.5.html#check_recipient_ns_access">&</a>;g
+       s;[[:<:]]permit_auth_destination[[:>:]];<a href="postconf.5.html#permit_auth_destination">&</a>;g
+       s;[[:<:]]permit_mx_backup[[:>:]];<a href="postconf.5.html#permit_mx_backup">&</a>;g
+       s;[[:<:]]reject_non_fqdn_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#reject_non_fqdn_recipient">&</a>;g
+       s;[[:<:]]reject_rhsbl_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#reject_rhsbl_recipient">&</a>;g
+       s;[[:<:]]reject_unauth_destination[[:>:]];<a href="postconf.5.html#reject_unauth_destination">&</a>;g
+       s;[[:<:]]reject_unknown_recipi[-</bB>]*\n*[ <bB>]*ent_domain[[:>:]];<a href="postconf.5.html#reject_unknown_recipient_domain">&</a>;g
+       s;[[:<:]]reject_unlisted_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#reject_unlisted_recipient">&</a>;g
+       s;[[:<:]]reject_unveri[-</bB>]*\n*[ <bB>]*fied_recip[-</bB>]*\n* *[<bB>]*ient[[:>:]];<a href="postconf.5.html#reject_unverified_recipient">&</a>;g
+
+       # Access restrictions - etrn
+
+       s;[[:<:]]check_etrn_access[[:>:]];<a href="postconf.5.html#check_etrn_access">&</a>;g
+
+       # Split parameter or restriction hyperlinks across line breaks
+
+       s/\(<a href="[^"]*">\)\([-a-z0-9_]*\)[[:>:]]\([-</bB>]*\n *[<bB>]*\)[[:<:]]\([-a-z0-9_]*\)\(<\/a>\)/\1\2\5\3\1\4\5/
+
+       # Glue manual/parameter/restriction hyperlinks without line breaks.
+
+       s/\(<a href="[^"]*">\)\([<bB>]*[-a-zA-Z0-9._]*[<bB>]*\)<\/a>\1/\1\2/g
+       s/\(<a href="[^"]*">\)\([<bB>]*[-a-zA-Z0-9._]*[<bB>]*\)<\/a>\1/\1\2/g
+
+       # Hyperlink URLs and RFC documents
+
+       s/\(http:\/\/[^ ,"()]*[^ ,"():;!?.]\)/<a href="\1">\1<\/a>/
+       s/\(ftp:\/\/[^ ,"()]*[^ ,"():;!?.]\)/<a href="\1">\1<\/a>/
+       s/[[:<:]]RFC *\([1-9][0-9]*\)/<a href="http:\/\/www.faqs.org\/rfcs\/rfc\1.html">&<\/a>/
+
+       # Hyperlink phrases not in headers.
+
+       /<\/*h[0-9]>/{
+               p
+               d
+       }
+       s/canonical domains*/<a href="VIRTUAL_README.html#canonical">&<\/a>/
+       s/hosted domains*/<a href="VIRTUAL_README.html#canonical">&<\/a>/
+       #s/other domains*/<a href="VIRTUAL_README.html#canonical">&<\/a>/
+       s/virtual alias example/<a href="VIRTUAL_README.html#virtual_alias">&<\/a>/
+       s/virtual mailbox example/<a href="VIRTUAL_README.html#virtual_mailbox">&<\/a>/
+       s/local domains*/<a href="ADDRESS_CLASS_README.html#local_domain_class">&<\/a>/
+       s/virtual alias domains*/<a href="ADDRESS_CLASS_README.html#virtual_alias_class">&<\/a>/
+       s/virtual ALIAS domains*/<a href="ADDRESS_CLASS_README.html#virtual_alias_class">&<\/a>/
+       s/virtual mailbox domains*/<a href="ADDRESS_CLASS_README.html#virtual_mailbox_class">&<\/a>/
+       s/virtual MAILBOX domains*/<a href="ADDRESS_CLASS_README.html#virtual_mailbox_class">&<\/a>/
+       s/relay domains*/<a href="ADDRESS_CLASS_README.html#relay_domain_class">&<\/a>/
+       s/default domains*/<a href="ADDRESS_CLASS_README.html#default_domain_class">&<\/a>/
+       s/mydestination domains*/<a href="ADDRESS_CLASS_README.html#local_domain_class">&<\/a>/
+       s/[[:<:]]"*maildrop"* *queues*[[:>:]]/<a href="QSHAPE_README.html#maildrop_queue">&<\/a>/
+       s/[[:<:]]\("*maildrop"*\),/<a href="QSHAPE_README.html#maildrop_queue">\1<\/a>,/
+       s/[[:<:]]\("*incoming"*\) and[[:>:]]/<a href="QSHAPE_README.html#incoming_queue">\1<\/a> and/
+       s/[[:<:]]\("*incoming"*\) or[[:>:]]/<a href="QSHAPE_README.html#incoming_queue">\1<\/a> or/
+       s/[[:<:]]"*incoming"* *queues*[[:>:]]/<a href="QSHAPE_README.html#incoming_queue">&<\/a>/
+       s/<b> *incoming *<\/b> *queues*[[:>:]]/<a href="QSHAPE_README.html#incoming_queue">&<\/a>/
+       s/[[:<:]]"*active"* *queues*[[:>:]]/<a href="QSHAPE_README.html#active_queue">&<\/a>/
+       s/[[:<:]]"*deferred"* *queues*[[:>:]]/<a href="QSHAPE_README.html#deferred_queue">&<\/a>/
+       s/[[:<:]]"*hold"* *queues*[[:>:]]/<a href="QSHAPE_README.html#hold_queue">&<\/a>/
+       s/[[:<:]]\("*hold"*\),/<a href="QSHAPE_README.html#hold_queue">\1<\/a>,/
+
+       # Hyperlink map types.
+
+       s/[[:<:]]\(cidr\):/<a href="cidr_table.5.html">\1<\/a>:/g
+       s/[[:<:]]\(pcre\):/<a href="pcre_table.5.html">\1<\/a>:/g
+       s/[[:<:]]\(proxy\):/<a href="proxymap.8.html">\1<\/a>:/g
+       s/[[:<:]]\(pgsql\):/<a href="pgsql_table.5.html">\1<\/a>:/g
+       s/[[:<:]]\(mysql\):/<a href="mysql_table.5.html">\1<\/a>:/g
+       s/[[:<:]]\(ldap\):/<a href="ldap_table.5.html">\1<\/a>:/g
+       s/[[:<:]]\(regexp\):/<a href="regexp_table.5.html">\1<\/a>:/g
+       s/[[:<:]]\(tcp\):/<a href="tcp_table.5.html">\1<\/a>:/g
+
+       # Do nice links for smtp:host:port etc.
+
+       s/[[:<:]]\(error\):/<a href="error.8.html">\1<\/a>:/g
+       s/[[:<:]]\(smtp\):/<a href="smtp.8.html">\1<\/a>:/g
+       s/[[:<:]]\(lmtp\):/<a href="lmtp.8.html">\1<\/a>:/g
+
+' "$@"
index 1b93c39e2f5720b5f5581c38b2a8d600280f790e..803e7107218538c09e95b07045a240106690e7f8 100644 (file)
@@ -377,8 +377,9 @@ so that it invokes the <b>gdb</b> debugger: </p>
 <pre>
 /etc/postfix/main.cf:
     debugger_command =
-        PATH=/bin:/usr/bin:/usr/local/bin; export PATH; (echo cont;
-        echo where) | gdb $daemon_directory/$process_name $process_id 2&gt&amp;1
+        PATH=/bin:/usr/bin:/usr/local/bin; export PATH; (echo cont; echo
+        where; sleep 8640000) | gdb $daemon_directory/$process_name 
+        $process_id 2&gt&amp;1
         &gt;$config_directory/$process_name.$process_id.log &amp; sleep 5
 </pre>
 </blockquote>
index f3a7f835924b52320f117a0ac11d589a0363ab31..6c46afe8cf485e754f87f9cee12c2cb50cddb690 100644 (file)
 # .nf
 #      /etc/postfix/main.cf:
 # .ti +4
-#      header_checks = regexp:/etc/postfix/header_checks
+#      body_checks = regexp:/etc/postfix/body_checks
 #
-#      /etc/postfix/header_checks:
+#      /etc/postfix/body_checks:
 # .ti +4
 #      /^<iframe src=(3D)?cid:.* height=(3D)?0 width=(3D)?0>$/
 # .ti +8
index b25b1fb704de2ddc8f2865d1148ceba5f41dfb3c..25de6729666ead6ef377fdd76a4061d042142684 100644 (file)
@@ -1010,7 +1010,7 @@ Do not change this unless you have a complete understanding of RFC 821.
 The names of message delivery transports that should not be delivered
 to unless someone issues "<b>sendmail -q</b>" or equivalent. Specify zero
 or more names of mail delivery transports names that appear in the
-first field of master.cf).
+first field of master.cf.
 </p>
 
 <p>
@@ -2370,7 +2370,7 @@ mynetworks = hash:/etc/postfix/network_table
 %PARAM myorigin $myhostname
 
 <p>
-The default domain name that locally-posted mail appears to come
+The domain name that locally-posted mail appears to come
 from, and that locally posted mail is delivered to. The default,
 $myhostname, is adequate for small sites.  If you run a domain with
 multiple machines, you should (1) change this to $mydomain and (2)
@@ -2406,7 +2406,7 @@ The error classes are:
 <dd>Send the postmaster copies of the headers of bounced mail, and
 send transcripts of SMTP sessions when Postfix rejects mail. The
 notification is sent to the address specified with the
-bounce_notice_recipient configuration parameter (default: postmaster)
+bounce_notice_recipient configuration parameter (default: postmaster).
 </dd>
 
 <dt><b>2bounce</b></dt>
@@ -2829,13 +2829,6 @@ recipient addresses with $relay_recipient_maps and rejects non-existent
 recipients. See also the relay domains address class in the
 ADDRESS_CLASS_README file.  </p>
 
-<p> The list of domains that are by default delivered via the
-$local_transport mail delivery transport. By default this is the
-Postfix local(8) delivery agent which looks up all recipients in
-/etc/passwd and /etc/aliases. The SMTP server validates recipient
-addresses with $local_recipient_maps. See also the local domain
-address class in the ADDRESS_CLASS_README file.  </p>
-
 <p> NOTE: Postfix will not automatically forward mail for domains
 that list this system as their primary or backup MX host. See the
 permit_mx_backup restriction in the postconf(5) manual page.  </p>
@@ -3327,7 +3320,7 @@ This feature is available in Postfix 2.1 and later.
 
 <p>
 The maximal length of message header and body lines that Postfix
-will send via SMTP.  Longer lines are longer are broken by inserting
+will send via SMTP.  Longer lines are broken by inserting
 "&lt;CR&gt;&lt;LF&gt;&lt;SPACE&gt;". This minimizes the damage to
 MIME formatted mail.
 </p>
@@ -3611,6 +3604,7 @@ below it),  "/file/name" or "type:table" patterns.  A "/file/name"
 pattern is replaced by its contents; a "type:table" lookup table
 is matched when a table entry matches a lookup string (the lookup
 result is ignored).  Continue long lines by starting the next line
+with whitespace. </p>
 
 %PARAM smtpd_authorized_verp_clients $authorized_verp_clients
 
@@ -3742,7 +3736,7 @@ restrictions.
 <p>
 By default, clients in trusted networks are excluded. Specify a
 list of network blocks, hostnames or .domain names (the initial
-initial dot causes the domain to match any name below it).
+dot causes the domain to match any name below it).
 </p>
 
 <p>
@@ -4268,7 +4262,7 @@ supposed to give the result to another Postfix SMTP server process.
 </p>
 
 <p> Specify host:port. The host can be specified as an IP address
-or was a symbolic name; no MX lookups are done. When no host or
+or as a symbolic name; no MX lookups are done. When no host or
 host:  are specified, the local machine is assumed.  </p>
 
 <p> This feature is available in Postfix 2.1 and later.  </p>
@@ -4444,8 +4438,7 @@ address. <br> The unknown_address_reject_code parameter specifies
 the response code for rejected requests (default: 450).  The response
 is always 450 in case of a temporary DNS error.</dd>
 
-<dt><b><a name="reject_unlisted_recipient">reject_unlisted_recipient</a></b>
-(Postfix 2.0 name: check_recipient_maps)</dt>
+<dt><b><a name="reject_unlisted_recipient">reject_unlisted_recipient</a></b> (Postfix 2.0 name: check_recipient_maps)</dt>
 
 <dd> Reject the request when the RCPT TO address is not listed in
 the list of valid recipients for its domain class. See the
index 2f6395a3d23ec30cb94ac638b25c3f7614a7e93d..97de4cf6662c2873d5b46cace23d6f57df685248 100644 (file)
 /* .IP "\fBmyhostname (see 'postconf -d' output)\fR"
 /*     The internet hostname of this mail system.
 /* .IP "\fBmyorigin ($myhostname)\fR"
-/*     The default domain name that locally-posted mail appears to come
+/*     The domain name that locally-posted mail appears to come
 /*     from, and that locally posted mail is delivered to.
 /* .IP "\fBprocess_id (read-only)\fR"
 /*     The process ID of a Postfix command or daemon process.
index cef3694efb75d5bba26ca0e04317faa16624b7b2..0161cef1c3bdf85781eeae2aab79527c72992188 100644 (file)
@@ -512,7 +512,7 @@ int     dns_lookup(const char *name, unsigned type, unsigned flags,
            vstring_sprintf(why,
                   "Name service error for %s: invalid host or domain name",
                            name);
-       h_errno = HOST_NOT_FOUND;
+       SET_H_ERRNO(HOST_NOT_FOUND);
        return (DNS_NOTFOUND);
     }
 
@@ -524,7 +524,7 @@ int     dns_lookup(const char *name, unsigned type, unsigned flags,
            vstring_sprintf(why,
                   "Name service error for %s: invalid host or domain name",
                            name);
-       h_errno = HOST_NOT_FOUND;
+       SET_H_ERRNO(HOST_NOT_FOUND);
        return (DNS_NOTFOUND);
     }
 
index 2df58b6dcd5ce6f9f1a92d2223060cdc6760ba5f..6b121cedb493856d4cfcc9484ea1e66ca1d243d1 100644 (file)
@@ -257,10 +257,11 @@ int     vbounce_append(int flags, const char *id, const char *orig_rcpt,
                             ATTR_TYPE_STR, MAIL_ATTR_WHY, vstring_str(why),
                                ATTR_TYPE_END) == 0
            && ((flags & DEL_REQ_FLAG_RECORD) == 0
-               || vtrace_append(flags, id, orig_rcpt, recipient, relay,
-                             entry, dsn_code, dsn_action, fmt, ap) == 0)) {
-           vlog_adhoc(id, orig_rcpt, recipient, relay,
-                      entry, log_status, fmt, ap);
+               || trace_append(flags, id, orig_rcpt, recipient, relay,
+                               entry, dsn_code, dsn_action,
+                               "%s", vstring_str(why)) == 0)) {
+           log_adhoc(id, orig_rcpt, recipient, relay,
+                     entry, log_status, "%s", vstring_str(why));
            status = (var_soft_bounce ? -1 : 0);
        } else if ((flags & BOUNCE_FLAG_CLEAN) == 0) {
            status = defer_append(flags, id, orig_rcpt, recipient, offset,
@@ -384,10 +385,11 @@ int     vbounce_one(int flags, const char *queue, const char *id,
                             ATTR_TYPE_STR, MAIL_ATTR_WHY, vstring_str(why),
                                ATTR_TYPE_END) == 0
            && ((flags & DEL_REQ_FLAG_RECORD) == 0
-               || vtrace_append(flags, id, orig_rcpt, recipient, relay,
-                                entry, "5.0.0", "failed", fmt, ap) == 0)) {
-           vlog_adhoc(id, orig_rcpt, recipient, relay,
-                      entry, "bounced", fmt, ap);
+               || trace_append(flags, id, orig_rcpt, recipient, relay,
+                               entry, "5.0.0", "failed",
+                               "%s", vstring_str(why)) == 0)) {
+           log_adhoc(id, orig_rcpt, recipient, relay,
+                     entry, "bounced", "%s", vstring_str(why));
            status = 0;
        } else if ((flags & BOUNCE_FLAG_CLEAN) == 0) {
            status = defer_append(flags, id, orig_rcpt, recipient, offset,
index 5954ab215bb7543200b67a14b93a468f1a60c448..f710d20b24c02e460f59853d35c4ce38c911cb33 100644 (file)
@@ -224,14 +224,16 @@ int     vdefer_append(int flags, const char *id, const char *orig_rcpt,
                             ATTR_TYPE_STR, MAIL_ATTR_WHY, vstring_str(why),
                                ATTR_TYPE_END) != 0)
            msg_warn("%s: %s service failure", id, var_defer_service);
-       vlog_adhoc(id, orig_rcpt, recipient, relay, entry, "deferred", fmt, ap);
+       log_adhoc(id, orig_rcpt, recipient, relay, entry, "deferred",
+                 "%s", vstring_str(why));
 
        /*
         * Traced delivery.
         */
        if (flags & DEL_REQ_FLAG_RECORD)
-           if (vtrace_append(flags, id, orig_rcpt, recipient, relay,
-                             entry, "4.0.0", "deferred", fmt, ap) != 0)
+           if (trace_append(flags, id, orig_rcpt, recipient, relay,
+                            entry, "4.0.0", "deferred",
+                            "%s", vstring_str(why)) != 0)
                msg_warn("%s: %s service failure", id, var_trace_service);
 
        /*
index 519f99e2c2366ca70625839241ec328a20e8f9ff..952acb0c9b79bfd508a79bd9179d32abf9093ef7 100644 (file)
@@ -20,7 +20,7 @@
   * Patches change the patchlevel and the release date. Snapshots change the
   * release date only.
   */
-#define MAIL_RELEASE_DATE      "20040504"
+#define MAIL_RELEASE_DATE      "20040615"
 #define MAIL_VERSION_NUMBER    "2.2"
 
 #define VAR_MAIL_VERSION       "mail_version"
index 15695ede2e21fbac0229f1443b47ea5bdd1afade..4f845ed78b97c0ee5ea08208e75d88f4e16a2c9a 100644 (file)
@@ -161,17 +161,22 @@ int     vsent(int flags, const char *id, const char *orig_rcpt,
      * Normal mail delivery. May also send a delivery record to the user.
      */
     else {
+       VSTRING *text = vstring_alloc(10);
+
+       vstring_vsprintf(text, fmt, ap);
        if ((flags & DEL_REQ_FLAG_RECORD) == 0
-           || vtrace_append(flags, id, orig_rcpt, recipient, relay,
-                            entry, "2.0.0", "delivered", fmt, ap) == 0) {
-           vlog_adhoc(id, orig_rcpt, recipient, relay,
-                      entry, "sent", fmt, ap);
+           || trace_append(flags, id, orig_rcpt, recipient, relay,
+                           entry, "2.0.0", "delivered",
+                           "%s", vstring_str(text)) == 0) {
+           log_adhoc(id, orig_rcpt, recipient, relay,
+                     entry, "sent", "%s", vstring_str(text));
            status = 0;
        } else {
            status = defer_append(flags, id, orig_rcpt, recipient, offset,
                                  relay, entry, "%s: %s service failed",
                                  id, var_trace_service);
        }
+       vstring_free(text);
        return (status);
     }
 }
index 3ee21dbd099fddad9cabedf511ea29fdab2fb7a7..cd9710c6531263f21f92954cc2d7c64f5389a96f 100644 (file)
@@ -172,8 +172,8 @@ int     vtrace_append(int flags, const char *queue_id,
        req_stat = -1;
     } else {
        if (flags & DEL_REQ_FLAG_EXPAND)
-           vlog_adhoc(queue_id, orig_rcpt, recipient, relay,
-                      entry, dsn_action, fmt, ap);
+           log_adhoc(queue_id, orig_rcpt, recipient, relay,
+                     entry, dsn_action, "%s", vstring_str(why));
        req_stat = 0;
     }
     vstring_free(why);
index 6effb49d6af4198e96dd0861b2dab6df075042dd..e2829406f0f463e33e879a7ed6e92e99ea1f0652 100644 (file)
@@ -134,26 +134,30 @@ int     vverify_append(const char *queue_id, const char *orig_rcpt,
                              time_t entry, const char *status,
                              int rcpt_stat, const char *fmt, va_list ap)
 {
+    VSTRING *text = vstring_alloc(10);
     int     req_stat;
 
     /*
      * Impedance adaptor between bounce/defer/sent and verify_clnt.
      */
+    vstring_vsprintf(text, fmt, ap);
     if (var_verify_neg_cache || rcpt_stat == DEL_RCPT_STAT_OK) {
        req_stat = verify_clnt_vupdate(orig_rcpt, rcpt_stat, fmt, ap);
        if (req_stat == VRFY_STAT_OK && strcasecmp(recipient, orig_rcpt) != 0)
-           req_stat = verify_clnt_vupdate(recipient, rcpt_stat, fmt, ap);
+           req_stat = verify_clnt_update(recipient, rcpt_stat,
+                                         "%s", vstring_str(text));
     } else {
        status = "undeliverable-but-not-cached";
        req_stat = VRFY_STAT_OK;
     }
     if (req_stat == VRFY_STAT_OK) {
-       vlog_adhoc(queue_id, orig_rcpt, recipient, relay,
-                  entry, status, fmt, ap);
+       log_adhoc(queue_id, orig_rcpt, recipient, relay,
+                 entry, status, "%s", vstring_str(text));
        req_stat = 0;
     } else {
        msg_warn("%s: %s service failure", queue_id, var_verify_service);
        req_stat = -1;
     }
+    vstring_free(text);
     return (req_stat);
 }
index cf4c3dc7c92e23c87a8b8c78145aff351308e456..5bacd3cb3a718e09b869ffd6d6c547a52bca1245 100644 (file)
@@ -330,7 +330,7 @@ static int deliver_message(DELIVER_REQUEST *request, char **unused_argv)
      * Note: `state' was made global (to this file) so that we can cache
      * connections and so that we can close a cached connection via the
      * MAIL_SERVER_EXIT function (cleanup). The alloc for `state' is
-     * performed in the MAIL_SERVER_PRE_INIT function (pre_init).
+     * performed in the MAIL_SERVER_POST_INIT function (post_init).
      * 
      */
     why = vstring_alloc(100);
index 445eb697a743bcd62122bf8777e2f318b2cf0c1b..69eb905a8ac7cd942cc1ce8b5ce8603d6fc83b47 100644 (file)
 /*     The system administrator can specify a comma/space separated list
 /*     of ~\fR/.\fBforward\fR like files through the \fBforward_path\fR
 /*     configuration parameter. Upon delivery, the local delivery agent
-/*     tries each pathname in the list until a file is found.
+/*     tries each pathname in the list until a file is found. 
+/*
+/*     Delivery via ~/.\fB.forward\fR files is done with the privileges 
+/*     of the recipient.
+/*     Thus, ~/.\fBforward\fR like files must be readable by the
+/*     recipient, and their parent directory needs to have "execute"
+/*     permission for the recipient.
+/*
 /*     The \fBforward_path\fR parameter is subject to interpolation of
 /*     \fB$user\fR (recipient username), \fB$home\fR (recipient home
 /*     directory), \fB$shell\fR (recipient shell), \fB$recipient\fR
index d1f3427a2e3c7a0b3893e5656c5af29623671307..a876c6193744e1f02d5ef046a8f901162e126cca 100644 (file)
@@ -35,7 +35,7 @@
 /* CONFIGURATION PARAMETERS
 /* .ad
 /* .fi
-/*     As the pickup daemon is a relatively long-running process, up
+/*     As the pickup(8) daemon is a relatively long-running process, up
 /*     to an hour may pass before a \fBmain.cf\fR change takes effect.
 /*     Use the command "\fBpostfix reload\fR" command to speed up a change.
 /*
index 6eb2224928d15000cccd02b676e922f3175b375e..e0f670e3adfeb94a889ee797d84a587f76efd9fc 100644 (file)
@@ -36,8 +36,8 @@
 /* .IP "\fBopen\fR \fImaptype:mapname flags\fR"
 /*     Open the table with type \fImaptype\fR and name \fImapname\fR,
 /*     as controlled by \fIflags\fR. The reply includes the \fImaptype\fR
-/*     dependent flags (to distinguish a fixed string table from regular
-/*     expression table).
+/*     dependent flags (to distinguish a fixed string table from regular
+/*     expression table).
 /* .IP "\fBlookup\fR \fImaptype:mapname flags key\fR"
 /*     Look up the data stored under the requested key.
 /*     The reply is the request completion status code (below) and
index 2ee829e6285ebca23fe0006ed0b148d4852fa377..49c8bfd7902980730cad1b6b44577f4ea34ab3c9 100644 (file)
@@ -50,7 +50,7 @@
 /*     These files are maintained by the \fBdefer\fR(8) daemon.
 /* .IP \fBtrace\fR
 /*     Per-recipient status information as requested with the
-/*     Postfix "\fBsendmail -v\fR" or "\fBsendmail -bv" command\fR.
+/*     Postfix "\fBsendmail -v\fR" or "\fBsendmail -bv\fR" command.
 /*     These files are maintained by the \fBtrace\fR(8) daemon.
 /* .PP
 /*     The \fBqmgr\fR daemon is responsible for asking the
 /* SEE ALSO
 /*     trivial-rewrite(8), address routing
 /*     bounce(8), delivery status reports
-/*     postconf(5) configuration parameters
+/*     postconf(5), configuration parameters
 /*     master(8), process manager
 /*     syslogd(8) system logging
 /* README FILES
index 2458bc3d093b0a6a9df260da16881db573f7d1ff..604c90c64b52475e8fbd59440ebcb25fa9c841a9 100644 (file)
@@ -349,6 +349,7 @@ int     smtp_connect(SMTP_STATE *state)
            if (++addr_count == var_smtp_mxaddr_limit)
                next = 0;
            if ((state->session = smtp_connect_addr(addr, port, why)) != 0) {
+               state->features = 0;            /* XXX should be SESSION info */
                if (++sess_count == var_smtp_mxsess_limit)
                    next = 0;
                state->final_server = (cpp[1] == 0 && next == 0);
@@ -356,13 +357,18 @@ int     smtp_connect(SMTP_STATE *state)
                debug_peer_check(state->session->host, state->session->addr);
                if (smtp_helo(state, misc_flags) == 0)
                    smtp_xfer(state);
-               if (state->history != 0
-                   && (state->error_mask & name_mask(VAR_NOTIFY_CLASSES,
-                                    mail_error_masks, var_notify_classes)))
-                   smtp_chat_notify(state);
+               if (state->history != 0) {
+                   if (state->error_mask & name_mask(VAR_NOTIFY_CLASSES,
+                                     mail_error_masks, var_notify_classes))
+                       smtp_chat_notify(state);
+                   smtp_chat_reset(state);
+               }
                /* XXX smtp_xfer() may abort in the middle of DATA. */
                smtp_session_free(state->session);
                state->session = 0;
+#ifdef USE_SASL_AUTH
+               smtp_sasl_cleanup(state);
+#endif
                debug_peer_restore();
                smtp_rcpt_cleanup(state);
            } else {
index 2770f3fb6272f123089fe903d45986b8ec7fad3c..b9e61f542ae02adcd1f31cd0dfbeeb0b2a684645 100644 (file)
 /*     Parameters concerning known/unknown recipients in virtual alias
 /*     domains:
 /* .IP "\fBvirtual_alias_domains ($virtual_alias_maps)\fR"
-/*     Optional list of names of virtual alias domains, that is,
-/*     domains for which all addresses are aliased to addresses in other
-/*     local or remote domains.
+/*     Postfix is final destination for the specified list of virtual
+/*     alias domains, that is, domains for which all addresses are aliased
+/*     to addresses in other local or remote domains.
 /* .IP "\fBvirtual_alias_maps ($virtual_maps)\fR"
 /*     Optional lookup tables that alias specific mail addresses or domains
 /*     to other local or remote address.
 /*     Parameters concerning known/unknown recipients in virtual mailbox
 /*     domains:
 /* .IP "\fBvirtual_mailbox_domains ($virtual_mailbox_maps)\fR"
-/*     The list of domains that are delivered via the $virtual_transport
-/*     mail delivery transport.
+/*     Postfix is final destination for the specified list of domains;
+/*     mail is delivered via the $virtual_transport mail delivery transport.
 /* .IP "\fBvirtual_mailbox_maps (empty)\fR"
 /*     Optional lookup tables with all valid addresses in the domains that
 /*     match $virtual_mailbox_domains.
 /*     As of version 2.1, Postfix can be configured to delegate access
 /*     policy decisions to an external server that runs outside Postfix.
 /*     See the file SMTPD_POLICY_README for more information.
-/* .IP "\fBsmtpd_policy_service_timeout (100s)\fR"
-/*     The time limit for connecting to, writing to or receiving from a
-/*     delegated SMTPD policy server.
 /* .IP "\fBsmtpd_policy_service_max_idle (300s)\fR"
 /*     The time after which an idle SMTPD policy service connection is
 /*     closed.
 /* SENDER AND RECIPIENT ADDRESS VERIFICATION CONTROLS
 /* .ad
 /* .fi
-/*     Postfix version 2.1 introduces sender and address verification.
+/*     Postfix version 2.1 introduces sender and recipient address verification.
 /*     This feature is implemented by sending probe email messages that
 /*     are not actually delivered.
 /*     This feature is requested via the reject_unverified_sender and
 /*     The list of "trusted" SMTP clients that have more privileges than
 /*     "strangers".
 /* .IP "\fBmyorigin ($myhostname)\fR"
-/*     The default domain name that locally-posted mail appears to come
+/*     The domain name that locally-posted mail appears to come
 /*     from, and that locally posted mail is delivered to.
 /* .IP "\fBprocess_id (read-only)\fR"
 /*     The process ID of a Postfix command or daemon process.
index a55fe75ea0e7f56988e5c65ecb91259f19f37c2d..e91543117229d8d38024172092301421813935da 100644 (file)
@@ -24,9 +24,9 @@
 #define SMTPD_PROX_WANT_MORE   '3'     /* Expect 3XX reply */
 
 extern int smtpd_proxy_open(SMTPD_STATE *, const char *, int, const char *, const char *);
-extern int smtpd_proxy_cmd(SMTPD_STATE *, int, const char *,...);
+extern int PRINTFLIKE(3, 4) smtpd_proxy_cmd(SMTPD_STATE *, int, const char *,...);
 extern int smtpd_proxy_rec_put(VSTREAM *, int, const char *, int);
-extern int smtpd_proxy_rec_fprintf(VSTREAM *, int, const char *,...);
+extern int PRINTFLIKE(3, 4) smtpd_proxy_rec_fprintf(VSTREAM *, int, const char *,...);
 extern void smtpd_proxy_close(SMTPD_STATE *);
 
 /* LICENSE
index d8dbd5ceb2b7e7bd8da0c01cf39502f306af669e..18951700643094cd85abda8bd83ecbaba49c057e 100644 (file)
@@ -33,7 +33,8 @@ test: $(TESTPROG)
 
 tests: test
 
-update: ../../bin/smtp-source ../../bin/smtp-sink ../../bin/qmqp-source
+update: ../../bin/smtp-source ../../bin/smtp-sink ../../bin/qmqp-source \
+       ../../bin/qmqp-sink
 
 ../../bin/smtp-source: smtp-source
        cp $? $@
index b945b670fa595059a104edc85f8d97c318f276d9..ae0a501aba64b06193f965dafbf970e4d0ce87ce 100644 (file)
@@ -53,7 +53,7 @@
 /* CONFIGURATION PARAMETERS
 /* .ad
 /* .fi
-/*     Changes to \fBmain.cf\fR are picked up automatically as smtpd(8)
+/*     Changes to \fBmain.cf\fR are picked up automatically as spawn(8)
 /*     processes run for only a limited amount of time. Use the command
 /*     "\fBpostfix reload\fR" to speed up a change.
 /*
index 13d86f0304d68dd0bccedc2a5ed86b42502f2b5a..5d0728702487b2fc1640f741cbf453a49f22ae6a 100644 (file)
@@ -74,7 +74,7 @@
 /* .ad
 /* .fi
 /* .IP "\fBmyorigin ($myhostname)\fR"
-/*     The default domain name that locally-posted mail appears to come
+/*     The domain name that locally-posted mail appears to come
 /*     from, and that locally posted mail is delivered to.
 /* .IP "\fBallow_percent_hack (yes)\fR"
 /*     Enable the rewriting of the form "user%domain" to "user@domain".
 /* ADDRESS VERIFICATION CONTROLS
 /* .ad
 /* .fi
-/*     Postfix version 2.1 introduces sender and address verification.
+/*     Postfix version 2.1 introduces sender and recipient address verification.
 /*     This feature is implemented by sending probe email messages that
 /*     are not actually delivered.
 /*     By default, address verification probes use the same route
index 247da856a0214593c53f301b19b1601b138fbed9..93fcc44c35bd538f24fb138088e3a43ae0a882c0 100644 (file)
 static int attr_scan64_string(VSTREAM *fp, VSTRING *plain_buf, const char *context)
 {
     static VSTRING *base64_buf = 0;
-    extern int var_line_limit;         /* XXX */
 #if 0
+    extern int var_line_limit;         /* XXX */
     int     limit = var_line_limit * 4;
 #endif
     int     ch;
index 0c3a953704107b6e0369f6e4af524f2a14264525..06f6c219c522b83b421a904449d39334eb85f4b3 100644 (file)
@@ -102,10 +102,10 @@ VSTRING *base64_decode(VSTRING *result, const char *in, int len)
     static unsigned char *un_b64 = 0;
     const unsigned char *cp;
     int     count;
-    int     ch0;
-    int     ch1;
-    int     ch2;
-    int     ch3;
+    unsigned int ch0;
+    unsigned int ch1;
+    unsigned int ch2;
+    unsigned int ch3;
 
 #define CHARS_PER_BYTE (UCHAR_MAX + 1)
 #define INVALID                0xff
index 8c9ca7dab224faa16b5f330746ec2c3b76d3ff2a..8e9a8e60865cf51bb696ff6d2c205b153669efce 100644 (file)
@@ -146,11 +146,11 @@ static unsigned binhash_hash(const char *key, int len, unsigned size)
 /* binhash_link - insert element into table */
 
 #define binhash_link(table, elm) { \
-    BINHASH_INFO **h = table->data + binhash_hash(elm->key, elm->key_len, table->size);\
+    BINHASH_INFO **_h = table->data + binhash_hash(elm->key, elm->key_len, table->size);\
     elm->prev = 0; \
-    if ((elm->next = *h) != 0) \
-       (*h)->prev = elm; \
-    *h = elm; \
+    if ((elm->next = *_h) != 0) \
+       (*_h)->prev = elm; \
+    *_h = elm; \
     table->used++; \
 }
 
index 49f1beb7a727e325d713188f3bb95b7ffe8ff5f9..f3595517f3101f1dedecda1b31dd4d7e50d26317 100644 (file)
@@ -35,6 +35,8 @@
 /*     Warning: a continuation line that does not continue preceding text.
 /*     The invalid input is ignored, to avoid complicating caller code.
 /* SECURITY
+/* .ad
+/* .fi
 /*     readlline() imposes no logical line length limit therefore it
 /*     should be used for reading trusted information only.
 /* LICENSE
index 4ca12a32889760fd130f6fefe67a1ba5e2bd311b..264467cfb15fc6733b89b86c2f32275a56c164d2 100644 (file)
 #endif
 #define GETTIMEOFDAY(t)        gettimeofday(t,(struct timezone *) 0)
 #define ROOT_PATH      "/bin:/usr/bin:/sbin:/usr/sbin"
-#define USE_STATFS
-#define STATFS_IN_SYS_MOUNT_H
+#if (defined(__NetBSD_Version__) && __NetBSD_Version__ > 200040000)
+# define USE_STATVFS
+# define STATVFS_IN_SYS_STATVFS_H
+#else
+# define USE_STATFS
+# define STATFS_IN_SYS_MOUNT_H
+#endif
 #define HAS_POSIX_REGEXP
 #define HAS_ST_GEN     /* struct stat contains inode generation number */
 #define NATIVE_SENDMAIL_PATH "/usr/sbin/sendmail"
@@ -333,6 +338,7 @@ extern int opterr;
 #define USE_STATVFS
 #define STATVFS_IN_SYS_STATVFS_H
 #define UNIX_DOMAIN_CONNECT_BLOCKS_FOR_ACCEPT
+#define STRCASECMP_IN_STRINGS_H
 #endif
 
 #ifdef UW21                            /* UnixWare 2.1.x */
@@ -1119,7 +1125,7 @@ typedef int pid_t;
   * sections above.
   */
 #ifndef PRINTFLIKE
-#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7
+#if (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) || __GNUC__ == 3
 #define PRINTFLIKE(x,y) __attribute__ ((format (printf, (x), (y))))
 #else
 #define PRINTFLIKE(x,y)
@@ -1127,7 +1133,7 @@ typedef int pid_t;
 #endif
 
 #ifndef SCANFLIKE
-#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7
+#if (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) || __GNUC__ == 3
 #define SCANFLIKE(x,y) __attribute__ ((format (scanf, (x), (y))))
 #else
 #define SCANFLIKE(x,y)
@@ -1151,6 +1157,14 @@ typedef int pid_t;
 #define __MAXINT__(T) ((T) (((((T) 1) << ((sizeof(T) * CHAR_BIT) - 1)) ^ ((T) -1))))
 #ifndef OFF_T_MAX
 #define OFF_T_MAX __MAXINT__(off_t)
+#endif
+
+ /*
+  * Setting globals like h_errno can be problematic when Postfix is linked
+  * with multi-threaded libraries.
+  */
+#ifndef SET_H_ERRNO
+#define SET_H_ERRNO(err) (h_errno = (err))
 #endif
 
  /*
index 216e2e2f972a20307db643519a7873ead6f379bf..c7281db08248fa90f406f62f8d5d78ea6204e58b 100644 (file)
@@ -42,6 +42,7 @@
 #include <stdio.h>                     /* sprintf() prototype */
 #include <float.h>                     /* range of doubles */
 #include <errno.h>
+#include <limits.h>                    /* CHAR_BIT */
 
 /* Application-specific. */
 
@@ -74,9 +75,9 @@
   * floating-point numbers, use a similar estimate, and add DBL_MAX_10_EXP
   * just to be sure.
   */
-#define INT_SPACE      (4 * sizeof(long))
-#define DBL_SPACE      (4 * sizeof(double) + DBL_MAX_10_EXP)
-#define PTR_SPACE      (4 * sizeof(char *))
+#define INT_SPACE      ((CHAR_BIT * sizeof(long)) / 2)
+#define DBL_SPACE      ((CHAR_BIT * sizeof(double)) / 2 + DBL_MAX_10_EXP)
+#define PTR_SPACE      ((CHAR_BIT * sizeof(char *)) / 2)
 
  /*
   * Helper macros... Note that there is no need to check the result from
index 50ae34c479ae4338583301d126a982bc26f50b6b..ca023fbb8554bbcb7de610fe37940688611d9350 100644 (file)
 /* .PP
 /*     Available in Postfix version 2.0 and later:
 /* .IP "\fBvirtual_mailbox_domains ($virtual_mailbox_maps)\fR"
-/*     The list of domains that are delivered via the $virtual_transport
-/*     mail delivery transport.
+/*     Postfix is final destination for the specified list of domains;
+/*     mail is delivered via the $virtual_transport mail delivery transport.
 /* .IP "\fBvirtual_transport (virtual)\fR"
 /*     The default mail delivery transport for domains that match the
 /*     $virtual_mailbox_domains parameter value.