]> git.ipfire.org Git - thirdparty/postfix.git/commitdiff
postfix-2.7-20100117
authorWietse Venema <wietse@porcupine.org>
Sun, 17 Jan 2010 05:00:00 +0000 (00:00 -0500)
committerViktor Dukhovni <viktor@dukhovni.org>
Tue, 5 Feb 2013 06:36:01 +0000 (06:36 +0000)
36 files changed:
postfix/HISTORY
postfix/README_FILES/FILTER_README
postfix/RELEASE_NOTES
postfix/conf/access
postfix/conf/header_checks
postfix/html/FILTER_README.html
postfix/html/access.5.html
postfix/html/header_checks.5.html
postfix/html/oqmgr.8.html
postfix/html/pickup.8.html
postfix/html/postconf.5.html
postfix/html/qmgr.8.html
postfix/html/qmqpd.8.html
postfix/html/smtpd.8.html
postfix/man/man5/access.5
postfix/man/man5/header_checks.5
postfix/man/man5/postconf.5
postfix/man/man8/oqmgr.8
postfix/man/man8/pickup.8
postfix/man/man8/qmgr.8
postfix/man/man8/qmqpd.8
postfix/man/man8/smtpd.8
postfix/mantools/postlink
postfix/proto/FILTER_README.html
postfix/proto/access
postfix/proto/header_checks
postfix/proto/postconf.proto
postfix/src/global/mail_params.h
postfix/src/global/mail_version.h
postfix/src/oqmgr/qmgr.c
postfix/src/oqmgr/qmgr_message.c
postfix/src/pickup/pickup.c
postfix/src/qmgr/qmgr.c
postfix/src/qmgr/qmgr_message.c
postfix/src/qmqpd/qmqpd.c
postfix/src/smtpd/smtpd.c

index 983f1ca4791257aa5f2331a67a2bdb353836086c..4c0e836772afcf87d27027846717ba10c4445c9f 100644 (file)
@@ -15648,21 +15648,30 @@ Apologies for any names omitted.
        Cleanup: don't supply the "-o stress" command-line option
        with a single-process service. File: master/master_ent.c.
 
-20100116
+20100115
 
        Bugfix: the valid_hostname() fuction did not set the
        "non-numeric" flag after encountering the '-' character.
        Reported by Jan Schampera.  File: util/valid_hostname.c.
 
-       Cleanup: when a content_filter parameter or FILTER command
-       specifies an empty next-hop destination, the queue manager
-       now uses the recipient domain instead of $myhostname. Specify
-       "legacy_filter_nexthop = yes" for backwards compatibility
-       with Postfix 2.6 and earlier, or specify a non-empty next-hop
-       destination.  Files: *qmgr/qmgr_message.c proto/access,
-       proto/header_checks, proto/postconf.proto, proto/FILTER_README.
+20100116
 
        Documentation: the content_filter and FILTER features never
        supported the special cases of transport_maps. References
        to transport_maps syntax are now removed from content filter
        discussions.  Files: proto/postconf.proto, proto/FILTER_README.
+
+       Workaround: as of Postfix 2.3 the VRFY command did not allow
+       a mailbox address inside <>, which broke expectations.  RFC
+       2821 (and 5321) is vague about the VRFY request format, but
+       spends lots of text on the reply format.  File: smtpd/smtpd.c.
+
+20010117
+
+       Cleanup: when a content_filter parameter or FILTER command
+       specifies an empty next-hop destination, the queue manager
+       now uses the recipient domain instead of $myhostname. Specify
+       "default_filter_nexthop = $myhostname" for compatibility
+       with Postfix 2.6 and earlier, or specify a non-empty next-hop
+       filter destination.  Files: *qmgr/qmgr_message.c proto/access,
+       proto/header_checks, proto/postconf.proto, proto/FILTER_README.
index 87274151505ff6e5b0ae38185a28ce872da31e2b..abee2a52691e23273ae86ee635b18ec75298c87e 100644 (file)
@@ -221,17 +221,18 @@ Once you're satisfied with the content filtering script:
 
     The content_filter configuration parameter expects a value of the form
     transport:destination. The transport name specifies the first field of a
-    mail delivery agent definition in master.cf; the syntax of destination is
-    described in the manual page of the corresponding delivery agent.
+    mail delivery agent definition in master.cf; the syntax of the next-hop
+    destination is described in the manual page of the corresponding delivery
+    agent.
 
-    The meaning of an empty filter destination is version dependent. Postfix
-    2.7 and later will use the recipient domain; earlier versions will use
-    $myhostname. Specify "legacy_filter_nexthop = yes" for compatibility with
-    Postfix 2.6 or earlier, or specify a non-empty filter destination.
+    The meaning of an empty next-hop filter destination is version dependent.
+    Postfix 2.7 and later will use the recipient domain; earlier versions will
+    use $myhostname. Specify "default_filter_nexthop = $myhostname" for
+    compatibility with Postfix 2.6 or earlier, or specify a non-empty next-hop
+    filter destination.
 
-    The content_filter setting has a lower precedence than a content filter
-    that is specified with an access(5) table or in a header_checks(5) or
-    body_checks(5) table.
+    The content_filter setting has lower precedence than a FILTER action that
+    is specified in an access(5), header_checks(5) or body_checks(5) table.
 
   * Execute "p\bpo\bos\bst\btf\bfi\bix\bx r\bre\bel\blo\boa\bad\bd" to complete the change.
 
@@ -340,17 +341,18 @@ To enable the advanced content filter method for all mail, specify in main.cf:
 
   * The content_filter configuration parameter expects a value of the form
     transport:destination. The transport name specifies the first field of a
-    mail delivery agent definition in master.cf; the syntax of destination is
-    described in the manual page of the corresponding delivery agent.
-
-  * The meaning of an empty filter destination is version dependent. Postfix
-    2.7 and later will use the recipient domain; earlier versions will use
-    $myhostname. Specify "legacy_filter_nexthop = yes" for compatibility with
-    Postfix 2.6 or earlier, or specify a non-empty filter destination.
-
-  * The content_filter setting has a lower precedence than a content filter
-    that is specified with an access(5) table or in a header_checks(5) or
-    body_checks(5) table.
+    mail delivery agent definition in master.cf; the syntax of the next-hop
+    destination is described in the manual page of the corresponding delivery
+    agent.
+
+  * The meaning of an empty next-hop filter destination is version dependent.
+    Postfix 2.7 and later will use the recipient domain; earlier versions will
+    use $myhostname. Specify "default_filter_nexthop = $myhostname" for
+    compatibility with Postfix 2.6 or earlier, or specify a non-empty next-hop
+    filter destination.
+
+  * The content_filter setting has lower precedence than a FILTER action that
+    is specified in an access(5), header_checks(5) or body_checks(5) table.
 
 A\bAd\bdv\bva\ban\bnc\bce\bed\bd c\bco\bon\bnt\bte\ben\bnt\bt f\bfi\bil\blt\bte\ber\br:\b: s\bse\ben\bnd\bdi\bin\bng\bg u\bun\bnf\bfi\bil\blt\bte\ber\bre\bed\bd m\bma\bai\bil\bl t\bto\bo t\bth\bhe\be c\bco\bon\bnt\bte\ben\bnt\bt f\bfi\bil\blt\bte\ber\br
 
index 337050ac0df0494ca2d4274ca6d02a960166a3c8..db765d560136baeca450464a1ea97397fbec95b7 100644 (file)
@@ -14,23 +14,27 @@ specifies the release date of a stable release or snapshot release.
 If you upgrade from Postfix 2.5 or earlier, read RELEASE_NOTES-2.6
 before proceeding.
 
-Incompatibility with snapshot 20100116
+Incompatibility with snapshot 20100117
 ======================================
 
 The meaning of an empty content filter next-hop destination has
 changed.  Postfix now uses the recipient domain, instead of using
 $myhostname as in Postfix 2.6 and earlier.  To get the old behavior
-use "legacy_filter_nexthop = yes", or specify a non-empty next-hop
-filter destination.
+use "default_filter_nexthop = $myhostname", or specify a non-empty
+next-hop content filter destination.
 
-Major changes with snapshot 20100116
+Major changes with snapshot 20100117
 ====================================
 
-The FILTER command can now be used to implement sender reputation
-schemes that dynamically choose the SMTP source IP address.  This
-is implemented by specifying a FILTER with an empty next-hop
-destination, and by configuring SMTP transports in master.cf with
-appropriate "-o myhostname" and "-o smtp_bind_address" settings.
+The FILTER action in access maps or header/body_checks now supports
+sender reputation schemes that dynamically choose the SMTP source
+IP address.
+
+This is implemented by specifying FILTER actions with empty next-hop
+destinations in access maps or header/body_checks, and by configuring
+in master.cf one Postfix SMTP client for each SMTP source IP address,
+where each client has its own "-o myhostname" and "-o smtp_bind_address"
+settings.
 
 Incompatibility with snapshot 20100101
 ======================================
index e7691e5c8807c6f319ee683b772959a6fcc6d7b2..e52790472f87d536330c7ec1a6d99149281ca903 100644 (file)
 #               sage through the specified external content filter.
 #               The  transport  name specifies the first field of a
 #               mail delivery agent definition  in  master.cf;  the
-#               syntax  of  destination  is described in the manual
-#               page of the  corresponding  delivery  agent.   More
-#               information  about  external  content filters is in
-#               the Postfix FILTER_README file.
+#               syntax  of the next-hop destination is described in
+#               the  manual  page  of  the  corresponding  delivery
+#               agent.   More  information  about  external content
+#               filters is in the Postfix FILTER_README file.
 # 
 #               Note 1: do not use $number regular expression  sub-
 #               stitutions  for transport or destination unless you
 # 
 #               Note  3:  the  purpose  of the FILTER command is to
 #               override message routing.  To override the  recipi-
-#               ent's  transport  but  not  destination, specify an
-#               empty destination (Postfix 2.7 and later), or spec-
-#               ify a transport:destination that delivers through a
-#               different Postfix instance (Postfix  2.6  and  ear-
-#               lier). Other options are using the recipient-depen-
-#               dent transport_maps or the sender-dependent sender-
-#               _dependent_default_transport_maps features.
+#               ent's  transport  but not the next-hop destination,
+#               specify an empty filter  destination  (Postfix  2.7
+#               and later), or specify a transport:destination that
+#               delivers  through  a  different  Postfix   instance
+#               (Postfix  2.6 and earlier). Other options are using
+#               the recipient-dependent transport_maps or the  sen-
+#               der-dependent   sender_dependent_default_transport-
+#               _maps features.
 # 
 #               This feature is available in Postfix 2.0 and later.
 # 
 #        HOLD optional text...
-#               Place the message on the hold queue, where it  will
-#               sit  until someone either deletes it or releases it
-#               for delivery.  Log the optional text if  specified,
+#               Place  the message on the hold queue, where it will
+#               sit until someone either deletes it or releases  it
+#               for  delivery.  Log the optional text if specified,
 #               otherwise log a generic message.
 # 
-#               Mail  that  is  placed on hold can be examined with
-#               the postcat(1) command, and  can  be  destroyed  or
+#               Mail that is placed on hold can  be  examined  with
+#               the  postcat(1)  command,  and  can be destroyed or
 #               released with the postsuper(1) command.
 # 
-#               Note:  use  "postsuper -r" to release mail that was
-#               kept on hold for a significant fraction  of  $maxi-
+#               Note: use "postsuper -r" to release mail  that  was
+#               kept  on  hold for a significant fraction of $maxi-
 #               mal_queue_lifetime  or  $bounce_queue_lifetime,  or
-#               longer. Use "postsuper -H" only for mail that  will
+#               longer.  Use "postsuper -H" only for mail that will
 #               not expire within a few delivery attempts.
 # 
-#               Note:  this action currently affects all recipients
+#               Note: this action currently affects all  recipients
 #               of the message.
 # 
 #               This feature is available in Postfix 2.0 and later.
 # 
 #        PREPEND headername: headervalue
-#               Prepend  the  specified  message header to the mes-
-#               sage.  When more than one PREPEND action  executes,
-#               the  first prepended header appears before the sec-
+#               Prepend the specified message header  to  the  mes-
+#               sage.   When more than one PREPEND action executes,
+#               the first prepended header appears before the  sec-
 #               ond etc. prepended header.
 # 
-#               Note: this action must execute before  the  message
-#               content  is received; it cannot execute in the con-
+#               Note:  this  action must execute before the message
+#               content is received; it cannot execute in the  con-
 #               text of smtpd_end_of_data_restrictions.
 # 
 #               This feature is available in Postfix 2.1 and later.
 # 
 #        REDIRECT user@domain
-#               After  the  message  is queued, send the message to
+#               After the message is queued, send  the  message  to
 #               the  specified  address  instead  of  the  intended
 #               recipient(s).
 # 
-#               Note:  this action overrides the FILTER action, and
+#               Note: this action overrides the FILTER action,  and
 #               currently affects all recipients of the message.
 # 
 #               This feature is available in Postfix 2.1 and later.
 # 
 #        WARN optional text...
 #               Log a warning with the optional text, together with
-#               client information and  if  available,  with  helo,
+#               client  information  and  if  available, with helo,
 #               sender, recipient and protocol information.
 # 
 #               This feature is available in Postfix 2.1 and later.
 # 
 # ENHANCED STATUS CODES
-#        Postfix version 2.3  and  later  support  enhanced  status
-#        codes  as  defined  in  RFC 3463.  When an enhanced status
-#        code is specified in an access table,  it  is  subject  to
-#        modification.  The  following  transformations  are needed
-#        when the same access  table  is  used  for  client,  helo,
-#        sender,  or  recipient  access  restrictions;  they happen
+#        Postfix  version  2.3  and  later  support enhanced status
+#        codes as defined in RFC 3463.   When  an  enhanced  status
+#        code  is  specified  in  an access table, it is subject to
+#        modification. The  following  transformations  are  needed
+#        when  the  same  access  table  is  used for client, helo,
+#        sender, or  recipient  access  restrictions;  they  happen
 #        regardless of whether Postfix replies to a MAIL FROM, RCPT
 #        TO or other SMTP command.
 # 
-#        o      When  a sender address matches a REJECT action, the
-#               Postfix SMTP server will transform a recipient  DSN
-#               status  (e.g.,  4.1.1-4.1.6) into the corresponding
+#        o      When a sender address matches a REJECT action,  the
+#               Postfix  SMTP server will transform a recipient DSN
+#               status (e.g., 4.1.1-4.1.6) into  the  corresponding
 #               sender DSN status, and vice versa.
 # 
-#        o      When  non-address  information  matches  a   REJECT
-#               action  (such  as  the HELO command argument or the
-#               client hostname/address), the Postfix  SMTP  server
-#               will  transform  a  sender  or recipient DSN status
-#               into  a  generic  non-address  DSN  status   (e.g.,
+#        o      When   non-address  information  matches  a  REJECT
+#               action (such as the HELO command  argument  or  the
+#               client  hostname/address),  the Postfix SMTP server
+#               will transform a sender  or  recipient  DSN  status
+#               into   a  generic  non-address  DSN  status  (e.g.,
 #               4.0.0).
 # 
 # REGULAR EXPRESSION TABLES
-#        This  section  describes how the table lookups change when
+#        This section describes how the table lookups  change  when
 #        the table is given in the form of regular expressions. For
-#        a  description  of regular expression lookup table syntax,
+#        a description of regular expression lookup  table  syntax,
 #        see regexp_table(5) or pcre_table(5).
 # 
-#        Each pattern is a regular expression that  is  applied  to
+#        Each  pattern  is  a regular expression that is applied to
 #        the entire string being looked up. Depending on the appli-
-#        cation, that string  is  an  entire  client  hostname,  an
+#        cation,  that  string  is  an  entire  client hostname, an
 #        entire client IP address, or an entire mail address. Thus,
 #        no  parent  domain  or  parent  network  search  is  done,
-#        user@domain  mail  addresses  are not broken up into their
+#        user@domain mail addresses are not broken  up  into  their
 #        user@ and domain constituent parts, nor is user+foo broken
 #        up into user and foo.
 # 
-#        Patterns  are applied in the order as specified in the ta-
-#        ble, until a pattern is  found  that  matches  the  search
+#        Patterns are applied in the order as specified in the  ta-
+#        ble,  until  a  pattern  is  found that matches the search
 #        string.
 # 
-#        Actions  are  the  same as with indexed file lookups, with
-#        the additional feature that parenthesized substrings  from
+#        Actions are the same as with indexed  file  lookups,  with
+#        the  additional feature that parenthesized substrings from
 #        the pattern can be interpolated as $1, $2 and so on.
 # 
 # TCP-BASED TABLES
-#        This  section  describes how the table lookups change when
+#        This section describes how the table lookups  change  when
 #        lookups are directed to a TCP-based server. For a descrip-
 #        tion of the TCP client/server lookup protocol, see tcp_ta-
 #        ble(5).  This feature is not available up to and including
 #        Postfix version 2.4.
 # 
-#        Each  lookup  operation uses the entire query string once.
-#        Depending on the application, that  string  is  an  entire
+#        Each lookup operation uses the entire query  string  once.
+#        Depending  on  the  application,  that string is an entire
 #        client hostname, an entire client IP address, or an entire
-#        mail address.  Thus, no parent domain  or  parent  network
-#        search  is done, user@domain mail addresses are not broken
-#        up into their user@ and domain constituent parts,  nor  is
+#        mail  address.   Thus,  no parent domain or parent network
+#        search is done, user@domain mail addresses are not  broken
+#        up  into  their user@ and domain constituent parts, nor is
 #        user+foo broken up into user and foo.
 # 
 #        Actions are the same as with indexed file lookups.
 # 
 # EXAMPLE
-#        The  following  example  uses an indexed file, so that the
-#        order of table entries does not matter. The  example  per-
-#        mits  access  by the client at address 1.2.3.4 but rejects
-#        all other clients in 1.2.3.0/24. Instead  of  hash  lookup
-#        tables,  some  systems use dbm.  Use the command "postconf
-#        -m" to find out what lookup  tables  Postfix  supports  on
+#        The following example uses an indexed file,  so  that  the
+#        order  of  table entries does not matter. The example per-
+#        mits access by the client at address 1.2.3.4  but  rejects
+#        all  other  clients  in 1.2.3.0/24. Instead of hash lookup
+#        tables, some systems use dbm.  Use the  command  "postconf
+#        -m"  to  find  out  what lookup tables Postfix supports on
 #        your system.
 # 
 #        /etc/postfix/main.cf:
 #            1.2.3   REJECT
 #            1.2.3.4 OK
 # 
-#        Execute  the  command  "postmap /etc/postfix/access" after
+#        Execute the command  "postmap  /etc/postfix/access"  after
 #        editing the file.
 # 
 # BUGS
-#        The table format does not understand quoting  conventions.
+#        The  table format does not understand quoting conventions.
 # 
 # SEE ALSO
 #        postmap(1), Postfix lookup table manager
 #        transport(5), transport:nexthop syntax
 # 
 # README FILES
-#        Use  "postconf  readme_directory" or "postconf html_direc-
+#        Use "postconf readme_directory" or  "postconf  html_direc-
 #        tory" to locate this information.
 #        SMTPD_ACCESS_README, built-in SMTP server access control
 #        DATABASE_README, Postfix lookup table overview
 # 
 # LICENSE
-#        The Secure Mailer license must be  distributed  with  this
+#        The  Secure  Mailer  license must be distributed with this
 #        software.
 # 
 # AUTHOR(S)
index ba355ebc851e9e5dc5e25bd2b120171fe88c79c0..23d4972cc294f356b613c0eb0b2bb4e2b5b62125 100644 (file)
 #               After the message is queued, send the  entire  mes-
 #               sage through the specified external content filter.
 #               The transport name specifies the first field  of  a
-#               mail  delivery agent definition master.cf; the syn-
-#               tax of destination is described in the manual  page
-#               of the corresponding delivery agent.  More informa-
-#               tion about external content filters is in the Post-
-#               fix FILTER_README file.
+#               mail  delivery  agent  definition in master.cf; the
+#               syntax of the next-hop destination is described  in
+#               the  manual  page  of  the  corresponding  delivery
+#               agent.  More  information  about  external  content
+#               filters is in the Postfix FILTER_README file.
 # 
 #               Note  1: do not use $number regular expression sub-
 #               stitutions for transport or destination unless  you
 # 
 #               Note 3: the purpose of the  FILTER  command  is  to
 #               override  message routing.  To override the recipi-
-#               ent's transport but  not  destination,  specify  an
-#               empty destination (Postfix 2.7 and later), or spec-
-#               ify a transport:destination that delivers through a
-#               different  Postfix  instance  (Postfix 2.6 and ear-
-#               lier). Other options are using the recipient-depen-
-#               dent transport_maps or the sender-dependent sender-
-#               _dependent_default_transport_maps features.
+#               ent's transport but not the  next-hop  destination,
+#               specify  an  empty  filter destination (Postfix 2.7
+#               and later), or specify a transport:destination that
+#               delivers   through  a  different  Postfix  instance
+#               (Postfix 2.6 and earlier). Other options are  using
+#               the  recipient-dependent transport_maps or the sen-
+#               der-dependent   sender_dependent_default_transport-
+#               _maps features.
 # 
 #               This feature is available in Postfix 2.0 and later.
 # 
 #        HOLD optional text...
-#               Arrange  for  the  message to be placed on the hold
-#               queue, and inspect the next input line.   The  mes-
-#               sage  remains  on hold until someone either deletes
-#               it or releases it for delivery.  Log  the  optional
+#               Arrange for the message to be placed  on  the  hold
+#               queue,  and  inspect the next input line.  The mes-
+#               sage remains on hold until someone  either  deletes
+#               it  or  releases it for delivery.  Log the optional
 #               text if specified, otherwise log a generic message.
 # 
-#               Mail that is placed on hold can  be  examined  with
-#               the  postcat(1)  command,  and  can be destroyed or
+#               Mail  that  is  placed on hold can be examined with
+#               the postcat(1) command, and  can  be  destroyed  or
 #               released with the postsuper(1) command.
 # 
-#               Note: use "postsuper -r" to release mail  that  was
-#               kept  on  hold for a significant fraction of $maxi-
+#               Note:  use  "postsuper -r" to release mail that was
+#               kept on hold for a significant fraction  of  $maxi-
 #               mal_queue_lifetime  or  $bounce_queue_lifetime,  or
-#               longer.  Use "postsuper -H" only for mail that will
+#               longer. Use "postsuper -H" only for mail that  will
 #               not expire within a few delivery attempts.
 # 
-#               Note: this action affects  all  recipients  of  the
+#               Note:  this  action  affects  all recipients of the
 #               message.
 # 
 #               This feature is available in Postfix 2.0 and later.
 #               the next input line.
 # 
 #        PREPEND text...
-#               Prepend  one  line  with  the  specified  text, and
+#               Prepend one  line  with  the  specified  text,  and
 #               inspect the next input line.
 # 
 #               Notes:
 # 
-#               o      The prepended text is output on  a  separate
+#               o      The  prepended  text is output on a separate
 #                      line,  immediately  before  the  input  that
 #                      triggered the PREPEND action.
 # 
 #               o      The prepended text is not considered part of
-#                      the  input  stream:  it  is  not  subject to
+#                      the input  stream:  it  is  not  subject  to
 #                      header/body checks or address rewriting, and
 #                      it does not affect the way that Postfix adds
 #                      missing message headers.
 # 
 #               o      When prepending text before a message header
-#                      line,  the  prepended text must begin with a
+#                      line, the prepended text must begin  with  a
 #                      valid message header label.
 # 
 #               o      This action cannot be used to prepend multi-
 #               This feature is available in Postfix 2.1 and later.
 # 
 #        REDIRECT user@domain
-#               Write a message redirection request  to  the  queue
-#               file,  and  inspect  the next input line. After the
+#               Write  a  message  redirection request to the queue
+#               file, and inspect the next input  line.  After  the
 #               message is queued, it will be sent to the specified
 #               address instead of the intended recipient(s).
 # 
-#               Note:  this action overrides the FILTER action, and
-#               affects all recipients of the message. If  multiple
-#               REDIRECT  actions  fire,  only the last one is exe-
+#               Note: this action overrides the FILTER action,  and
+#               affects  all recipients of the message. If multiple
+#               REDIRECT actions fire, only the last  one  is  exe-
 #               cuted.
 # 
 #               This feature is available in Postfix 2.1 and later.
 # 
 #        REPLACE text...
-#               Replace  the  current line with the specified text,
+#               Replace the current line with the  specified  text,
 #               and inspect the next input line.
 # 
 #               This feature is available in Postfix 2.2 and later.
-#               The  description below applies to Postfix 2.2.2 and
+#               The description below applies to Postfix 2.2.2  and
 #               later.
 # 
 #               Notes:
 # 
-#               o      When replacing a message  header  line,  the
-#                      replacement  text  must  begin  with a valid
+#               o      When  replacing  a  message header line, the
+#                      replacement text must  begin  with  a  valid
 #                      header label.
 # 
-#               o      The replaced text remains part of the  input
-#                      stream.  Unlike  the result from the PREPEND
-#                      action, a replaced  message  header  may  be
-#                      subject  to address rewriting and may affect
-#                      the way that Postfix  adds  missing  message
+#               o      The  replaced text remains part of the input
+#                      stream. Unlike the result from  the  PREPEND
+#                      action,  a  replaced  message  header may be
+#                      subject to address rewriting and may  affect
+#                      the  way  that  Postfix adds missing message
 #                      headers.
 # 
 #        REJECT optional text...
-#               Reject  the  entire  message.  Reply  with optional
+#               Reject the  entire  message.  Reply  with  optional
 #               text... when the optional text is specified, other-
 #               wise reply with a generic error message.
 # 
-#               Note:   this  action  disables  further  header  or
-#               body_checks inspection of the current  message  and
+#               Note:  this  action  disables  further  header   or
+#               body_checks  inspection  of the current message and
 #               affects all recipients.
 # 
 #               Postfix version 2.3 and later support enhanced sta-
 #               enhanced status code of "5.7.1".
 # 
 #        WARN optional text...
-#               Log a warning with the optional text... (or  log  a
-#               generic  message), and inspect the next input line.
+#               Log  a  warning with the optional text... (or log a
+#               generic message), and inspect the next input  line.
 #               This action is useful for debugging and for testing
 #               a pattern before applying more drastic actions.
 # 
 # BUGS
 #        Empty lines never match, because some map types mis-behave
-#        when given a zero-length search string.   This  limitation
-#        may  be  removed for regular expression tables in a future
+#        when  given  a zero-length search string.  This limitation
+#        may be removed for regular expression tables in  a  future
 #        release.
 # 
-#        Many people overlook the main limitations  of  header  and
+#        Many  people  overlook  the main limitations of header and
 #        body_checks rules.
 # 
-#        o      These  rules  operate on one logical message header
+#        o      These rules operate on one logical  message  header
 #               or one body line at a time. A decision made for one
 #               line is not carried over to the next line.
 # 
-#        o      If  text  in the message body is encoded (RFC 2045)
+#        o      If text in the message body is encoded  (RFC  2045)
 #               then the rules need to be specified for the encoded
 #               form.
 # 
-#        o      Likewise,  when  message  headers  are encoded (RFC
-#               2047) then the rules need to be specified  for  the
+#        o      Likewise, when message  headers  are  encoded  (RFC
+#               2047)  then  the rules need to be specified for the
 #               encoded form.
 # 
-#        Message  headers added by the cleanup(8) daemon itself are
+#        Message headers added by the cleanup(8) daemon itself  are
 #        excluded from inspection. Examples of such message headers
 #        are From:, To:, Message-ID:, Date:.
 # 
-#        Message  headers  deleted by the cleanup(8) daemon will be
+#        Message headers deleted by the cleanup(8) daemon  will  be
 #        examined before they are deleted. Examples are: Bcc:, Con-
 #        tent-Length:, Return-Path:.
 # 
 #        body_checks
 #               Lookup tables with content filter rules for message
 #               body lines.  These filters see one physical line at
-#               a  time,  in  chunks  of at most $line_length_limit
+#               a time, in chunks  of  at  most  $line_length_limit
 #               bytes.
 # 
 #        body_checks_size_limit
-#               The amount of  content  per  message  body  segment
+#               The  amount  of  content  per  message body segment
 #               (attachment) that is subjected to $body_checks fil-
 #               tering.
 # 
 # 
 #        nested_header_checks (default: $header_checks)
 #               Lookup tables with content filter rules for message
-#               header  lines:  respectively,  these are applied to
-#               the initial message  headers  (not  including  MIME
-#               headers),  to the MIME headers anywhere in the mes-
-#               sage, and to the initial headers of  attached  mes-
+#               header lines: respectively, these  are  applied  to
+#               the  initial  message  headers  (not including MIME
+#               headers), to the MIME headers anywhere in the  mes-
+#               sage,  and  to the initial headers of attached mes-
 #               sages.
 # 
-#               Note:  these filters see one logical message header
-#               at a time, even when a message header spans  multi-
-#               ple  lines.  Message  headers  that are longer than
+#               Note: these filters see one logical message  header
+#               at  a time, even when a message header spans multi-
+#               ple lines. Message headers  that  are  longer  than
 #               $header_size_limit characters are truncated.
 # 
 #        disable_mime_input_processing
-#               While receiving mail, give no special treatment  to
-#               MIME  related  message  headers; all text after the
+#               While  receiving mail, give no special treatment to
+#               MIME related message headers; all  text  after  the
 #               initial message headers is considered to be part of
-#               the  message body. This means that header_checks is
-#               applied to all the  initial  message  headers,  and
+#               the message body. This means that header_checks  is
+#               applied  to  all  the  initial message headers, and
 #               that body_checks is applied to the remainder of the
 #               message.
 # 
-#               Note: when used in this  manner,  body_checks  will
-#               process  a  multi-line message header one line at a
+#               Note:  when  used  in this manner, body_checks will
+#               process a multi-line message header one line  at  a
 #               time.
 # 
 # EXAMPLES
-#        Header pattern to block attachments  with  bad  file  name
-#        extensions.   For  convenience, the PCRE /x flag is speci-
-#        fied, so that there is no need  to  collapse  the  pattern
-#        into   a   single  line  of  text.   The  purpose  of  the
+#        Header  pattern  to  block  attachments with bad file name
+#        extensions.  For convenience, the PCRE /x flag  is  speci-
+#        fied,  so  that  there  is no need to collapse the pattern
+#        into  a  single  line  of  text.   The  purpose   of   the
 #        [[:xdigit:]] sub-expressions is to recognize Windows CLSID
 #        strings.
 # 
 #        RFC 2047, message header encoding for non-ASCII text
 # 
 # README FILES
-#        Use "postconf readme_directory" or  "postconf  html_direc-
+#        Use  "postconf  readme_directory" or "postconf html_direc-
 #        tory" to locate this information.
 #        DATABASE_README, Postfix lookup table overview
 #        CONTENT_INSPECTION_README, Postfix content inspection overview
 #        BACKSCATTER_README, blocking returned forged mail
 # 
 # LICENSE
-#        The  Secure  Mailer  license must be distributed with this
+#        The Secure Mailer license must be  distributed  with  this
 #        software.
 # 
 # AUTHOR(S)
index 5052c65ab7a158f6973dd1163dcb7363ee36c3c2..85ca1f8885050fc90ad87f4999ccffb8ab5aa0b3 100644 (file)
@@ -399,18 +399,19 @@ and causes mail to be given to the content filter instead. </p>
 <p> The <a href="postconf.5.html#content_filter">content_filter</a> configuration parameter expects a value of
 the form <i>transport:destination</i>. The <i>transport</i> name
 specifies the first field of a mail delivery agent definition in
-<a href="master.5.html">master.cf</a>; the syntax of <i>destination</i> is described in the
-manual page of the corresponding delivery agent. </p>
-
-<p> The meaning of an empty filter <i>destination</i> is version
-dependent.  Postfix 2.7 and later will use the recipient domain;
-earlier versions will use $<a href="postconf.5.html#myhostname">myhostname</a>.  Specify "<a href="postconf.5.html#legacy_filter_nexthop">legacy_filter_nexthop</a>
-= yes" for compatibility with Postfix 2.6 or earlier, or specify a
-non-empty filter destination.  </p>
+<a href="master.5.html">master.cf</a>; the syntax of the next-hop <i>destination</i> is described
+in the manual page of the corresponding delivery agent. </p>
+
+<p> The meaning of an empty next-hop filter <i>destination</i> is
+version dependent.  Postfix 2.7 and later will use the recipient
+domain; earlier versions will use $<a href="postconf.5.html#myhostname">myhostname</a>.  Specify
+"<a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> = $<a href="postconf.5.html#myhostname">myhostname</a>" for compatibility with Postfix
+2.6 or earlier, or specify a non-empty next-hop filter <i>destination</i>.
+</p>
 
-<p> The <a href="postconf.5.html#content_filter">content_filter</a> setting has a lower precedence than a content
-filter that is specified with an <a href="access.5.html">access(5)</a> table or in a <a href="header_checks.5.html">header_checks(5)</a>
-or <a href="header_checks.5.html">body_checks(5)</a> table. </p>
+<p> The <a href="postconf.5.html#content_filter">content_filter</a> setting has lower precedence than a FILTER
+action that is specified in an <a href="access.5.html">access(5)</a>, <a href="header_checks.5.html">header_checks(5)</a> or
+<a href="header_checks.5.html">body_checks(5)</a> table. </p>
 
 <li> <p> Execute "<b>postfix reload</b>" to complete the change.
 </p>
@@ -625,18 +626,18 @@ of its final destination. </p>
 <li> <p> The <a href="postconf.5.html#content_filter">content_filter</a> configuration parameter expects a value
 of the form <i>transport:destination</i>. The <i>transport</i> name
 specifies the first field of a mail delivery agent definition in
-<a href="master.5.html">master.cf</a>; the syntax of <i>destination</i> is described in the
-manual page of the corresponding delivery agent. </p>
-
-<li> <p> The meaning of an empty filter <i>destination</i> is version
-dependent.  Postfix 2.7 and later will use the recipient domain;
-earlier versions will use $<a href="postconf.5.html#myhostname">myhostname</a>.  Specify "<a href="postconf.5.html#legacy_filter_nexthop">legacy_filter_nexthop</a>
-= yes" for compatibility with Postfix 2.6 or earlier, or specify a
-non-empty filter destination.  </p>
-
-<li> <p> The <a href="postconf.5.html#content_filter">content_filter</a> setting has lower precedence than a
-content filter that is specified with an <a href="access.5.html">access(5)</a> table or in a
-<a href="header_checks.5.html">header_checks(5)</a> or <a href="header_checks.5.html">body_checks(5)</a> table. </p>
+<a href="master.5.html">master.cf</a>; the syntax of the next-hop <i>destination</i> is described
+in the manual page of the corresponding delivery agent. </p>
+
+<li> <p> The meaning of an empty next-hop filter <i>destination</i>
+is version dependent.  Postfix 2.7 and later will use the recipient
+domain; earlier versions will use $<a href="postconf.5.html#myhostname">myhostname</a>.  Specify
+"<a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> = $<a href="postconf.5.html#myhostname">myhostname</a>" for compatibility with Postfix
+2.6 or earlier, or specify a non-empty next-hop filter <i>destination</i>.
+
+<li> <p> The <a href="postconf.5.html#content_filter">content_filter</a> setting has lower precedence than a
+FILTER action that is specified in an <a href="access.5.html">access(5)</a>, <a href="header_checks.5.html">header_checks(5)</a>
+or <a href="header_checks.5.html">body_checks(5)</a> table. </p>
 
 </ul>
 
index c2c6ca74534fa20512b19ecc860df3b9c8c9aa96..c284f86a4fd9a1a609fdb604e374b01841ff9f60 100644 (file)
@@ -288,10 +288,10 @@ ACCESS(5)                                                            ACCESS(5)
               sage through the specified external content filter.
               The  <i>transport</i>  name specifies the first field of a
               mail delivery agent definition  in  <a href="master.5.html">master.cf</a>;  the
-              syntax  of  <i>destination</i>  is described in the manual
-              page of the  corresponding  delivery  agent.   More
-              information  about  external  content filters is in
-              the Postfix <a href="FILTER_README.html">FILTER_README</a> file.
+              syntax  of the next-hop <i>destination</i> is described in
+              the  manual  page  of  the  corresponding  delivery
+              agent.   More  information  about  external content
+              filters is in the Postfix <a href="FILTER_README.html">FILTER_README</a> file.
 
               Note 1: do not use $<i>number</i> regular expression  sub-
               stitutions  for <i>transport</i> or <i>destination</i> unless you
@@ -304,135 +304,136 @@ ACCESS(5)                                                            ACCESS(5)
 
               Note  3:  the  purpose  of the FILTER command is to
               override message routing.  To override the  recipi-
-              ent's  <i>transport</i>  but  not  <i>destination</i>, specify an
-              empty <i>destination</i> (Postfix 2.7 and later), or spec-
-              ify a <i>transport:destination</i> that delivers through a
-              different Postfix instance (Postfix  2.6  and  ear-
-              lier). Other options are using the recipient-depen-
-              dent <b><a href="postconf.5.html#transport_maps">transport_maps</a></b> or the sender-dependent <b><a href="postconf.5.html#sender_dependent_default_transport_maps">sender</a>-</b>
-              <b><a href="postconf.5.html#sender_dependent_default_transport_maps">_dependent_default_transport_maps</a></b> features.
+              ent's  <i>transport</i>  but not the next-hop <i>destination</i>,
+              specify an empty filter  <i>destination</i>  (Postfix  2.7
+              and later), or specify a <i>transport:destination</i> that
+              delivers  through  a  different  Postfix   instance
+              (Postfix  2.6 and earlier). Other options are using
+              the recipient-dependent <b><a href="postconf.5.html#transport_maps">transport_maps</a></b> or the  sen-
+              der-dependent   <b><a href="postconf.5.html#sender_dependent_default_transport_maps">sender_dependent_default_transport</a>-</b>
+              <b><a href="postconf.5.html#sender_dependent_default_transport_maps">_maps</a></b> features.
 
               This feature is available in Postfix 2.0 and later.
 
        <b>HOLD</b> <i>optional text...</i>
-              Place the message on the <b>hold</b> queue, where it  will
-              sit  until someone either deletes it or releases it
-              for delivery.  Log the optional text if  specified,
+              Place  the message on the <b>hold</b> queue, where it will
+              sit until someone either deletes it or releases  it
+              for  delivery.  Log the optional text if specified,
               otherwise log a generic message.
 
-              Mail  that  is  placed on hold can be examined with
-              the <a href="postcat.1.html"><b>postcat</b>(1)</a> command, and  can  be  destroyed  or
+              Mail that is placed on hold can  be  examined  with
+              the  <a href="postcat.1.html"><b>postcat</b>(1)</a>  command,  and  can be destroyed or
               released with the <a href="postsuper.1.html"><b>postsuper</b>(1)</a> command.
 
-              Note:  use  "<b>postsuper -r</b>" to release mail that was
-              kept on hold for a significant fraction  of  <b>$<a href="postconf.5.html#maximal_queue_lifetime">maxi</a>-</b>
+              Note: use "<b>postsuper -r</b>" to release mail  that  was
+              kept  on  hold for a significant fraction of <b>$<a href="postconf.5.html#maximal_queue_lifetime">maxi</a>-</b>
               <b><a href="postconf.5.html#maximal_queue_lifetime">mal_queue_lifetime</a></b>  or  <b>$<a href="postconf.5.html#bounce_queue_lifetime">bounce_queue_lifetime</a></b>,  or
-              longer. Use "<b>postsuper -H</b>" only for mail that  will
+              longer.  Use "<b>postsuper -H</b>" only for mail that will
               not expire within a few delivery attempts.
 
-              Note:  this action currently affects all recipients
+              Note: this action currently affects all  recipients
               of the message.
 
               This feature is available in Postfix 2.0 and later.
 
        <b>PREPEND</b> <i>headername: headervalue</i>
-              Prepend  the  specified  message header to the mes-
-              sage.  When more than one PREPEND action  executes,
-              the  first prepended header appears before the sec-
+              Prepend the specified message header  to  the  mes-
+              sage.   When more than one PREPEND action executes,
+              the first prepended header appears before the  sec-
               ond etc. prepended header.
 
-              Note: this action must execute before  the  message
-              content  is received; it cannot execute in the con-
+              Note:  this  action must execute before the message
+              content is received; it cannot execute in the  con-
               text of <b><a href="postconf.5.html#smtpd_end_of_data_restrictions">smtpd_end_of_data_restrictions</a></b>.
 
               This feature is available in Postfix 2.1 and later.
 
        <b>REDIRECT</b> <i>user@domain</i>
-              After  the  message  is queued, send the message to
+              After the message is queued, send  the  message  to
               the  specified  address  instead  of  the  intended
               recipient(s).
 
-              Note:  this action overrides the FILTER action, and
+              Note: this action overrides the FILTER action,  and
               currently affects all recipients of the message.
 
               This feature is available in Postfix 2.1 and later.
 
        <b>WARN</b> <i>optional text...</i>
               Log a warning with the optional text, together with
-              client information and  if  available,  with  helo,
+              client  information  and  if  available, with helo,
               sender, recipient and protocol information.
 
               This feature is available in Postfix 2.1 and later.
 
 <b>ENHANCED STATUS CODES</b>
-       Postfix version 2.3  and  later  support  enhanced  status
-       codes  as  defined  in  <a href="http://tools.ietf.org/html/rfc3463">RFC 3463</a>.  When an enhanced status
-       code is specified in an access table,  it  is  subject  to
-       modification.  The  following  transformations  are needed
-       when the same access  table  is  used  for  client,  helo,
-       sender,  or  recipient  access  restrictions;  they happen
+       Postfix  version  2.3  and  later  support enhanced status
+       codes as defined in <a href="http://tools.ietf.org/html/rfc3463">RFC 3463</a>.   When  an  enhanced  status
+       code  is  specified  in  an access table, it is subject to
+       modification. The  following  transformations  are  needed
+       when  the  same  access  table  is  used for client, helo,
+       sender, or  recipient  access  restrictions;  they  happen
        regardless of whether Postfix replies to a MAIL FROM, RCPT
        TO or other SMTP command.
 
-       <b>o</b>      When  a sender address matches a REJECT action, the
-              Postfix SMTP server will transform a recipient  DSN
-              status  (e.g.,  4.1.1-4.1.6) into the corresponding
+       <b>o</b>      When a sender address matches a REJECT action,  the
+              Postfix  SMTP server will transform a recipient DSN
+              status (e.g., 4.1.1-4.1.6) into  the  corresponding
               sender DSN status, and vice versa.
 
-       <b>o</b>      When  non-address  information  matches  a   REJECT
-              action  (such  as  the HELO command argument or the
-              client hostname/address), the Postfix  SMTP  server
-              will  transform  a  sender  or recipient DSN status
-              into  a  generic  non-address  DSN  status   (e.g.,
+       <b>o</b>      When   non-address  information  matches  a  REJECT
+              action (such as the HELO command  argument  or  the
+              client  hostname/address),  the Postfix SMTP server
+              will transform a sender  or  recipient  DSN  status
+              into   a  generic  non-address  DSN  status  (e.g.,
               4.0.0).
 
 <b>REGULAR EXPRESSION TABLES</b>
-       This  section  describes how the table lookups change when
+       This section describes how the table lookups  change  when
        the table is given in the form of regular expressions. For
-       a  description  of regular expression lookup table syntax,
+       a description of regular expression lookup  table  syntax,
        see <a href="regexp_table.5.html"><b>regexp_table</b>(5)</a> or <a href="pcre_table.5.html"><b>pcre_table</b>(5)</a>.
 
-       Each pattern is a regular expression that  is  applied  to
+       Each  pattern  is  a regular expression that is applied to
        the entire string being looked up. Depending on the appli-
-       cation, that string  is  an  entire  client  hostname,  an
+       cation,  that  string  is  an  entire  client hostname, an
        entire client IP address, or an entire mail address. Thus,
        no  parent  domain  or  parent  network  search  is  done,
-       <i>user@domain</i>  mail  addresses  are not broken up into their
+       <i>user@domain</i> mail addresses are not broken  up  into  their
        <i>user@</i> and <i>domain</i> constituent parts, nor is <i>user+foo</i> broken
        up into <i>user</i> and <i>foo</i>.
 
-       Patterns  are applied in the order as specified in the ta-
-       ble, until a pattern is  found  that  matches  the  search
+       Patterns are applied in the order as specified in the  ta-
+       ble,  until  a  pattern  is  found that matches the search
        string.
 
-       Actions  are  the  same as with indexed file lookups, with
-       the additional feature that parenthesized substrings  from
+       Actions are the same as with indexed  file  lookups,  with
+       the  additional feature that parenthesized substrings from
        the pattern can be interpolated as <b>$1</b>, <b>$2</b> and so on.
 
 <b>TCP-BASED TABLES</b>
-       This  section  describes how the table lookups change when
+       This section describes how the table lookups  change  when
        lookups are directed to a TCP-based server. For a descrip-
        tion of the TCP client/server lookup protocol, see <a href="tcp_table.5.html"><b>tcp_ta-</b></a>
        <a href="tcp_table.5.html"><b>ble</b>(5)</a>.  This feature is not available up to and including
        Postfix version 2.4.
 
-       Each  lookup  operation uses the entire query string once.
-       Depending on the application, that  string  is  an  entire
+       Each lookup operation uses the entire query  string  once.
+       Depending  on  the  application,  that string is an entire
        client hostname, an entire client IP address, or an entire
-       mail address.  Thus, no parent domain  or  parent  network
-       search  is done, <i>user@domain</i> mail addresses are not broken
-       up into their <i>user@</i> and <i>domain</i> constituent parts,  nor  is
+       mail  address.   Thus,  no parent domain or parent network
+       search is done, <i>user@domain</i> mail addresses are not  broken
+       up  into  their <i>user@</i> and <i>domain</i> constituent parts, nor is
        <i>user+foo</i> broken up into <i>user</i> and <i>foo</i>.
 
        Actions are the same as with indexed file lookups.
 
 <b>EXAMPLE</b>
-       The  following  example  uses an indexed file, so that the
-       order of table entries does not matter. The  example  per-
-       mits  access  by the client at address 1.2.3.4 but rejects
-       all other clients in 1.2.3.0/24. Instead  of  <b>hash</b>  lookup
-       tables,  some  systems use <b>dbm</b>.  Use the command "<b>postconf</b>
-       <b>-m</b>" to find out what lookup  tables  Postfix  supports  on
+       The following example uses an indexed file,  so  that  the
+       order  of  table entries does not matter. The example per-
+       mits access by the client at address 1.2.3.4  but  rejects
+       all  other  clients  in 1.2.3.0/24. Instead of <b>hash</b> lookup
+       tables, some systems use <b>dbm</b>.  Use the  command  "<b>postconf</b>
+       <b>-m</b>"  to  find  out  what lookup tables Postfix supports on
        your system.
 
        /etc/postfix/<a href="postconf.5.html">main.cf</a>:
@@ -443,11 +444,11 @@ ACCESS(5)                                                            ACCESS(5)
            1.2.3   REJECT
            1.2.3.4 OK
 
-       Execute  the  command  "<b>postmap /etc/postfix/access</b>" after
+       Execute the command  "<b>postmap  /etc/postfix/access</b>"  after
        editing the file.
 
 <b>BUGS</b>
-       The table format does not understand quoting  conventions.
+       The  table format does not understand quoting conventions.
 
 <b>SEE ALSO</b>
        <a href="postmap.1.html">postmap(1)</a>, Postfix lookup table manager
@@ -460,7 +461,7 @@ ACCESS(5)                                                            ACCESS(5)
        <a href="DATABASE_README.html">DATABASE_README</a>, Postfix lookup table overview
 
 <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 542ec29372cbd38ae9fd6bc340b7fae56681bd19..1a406ba407c2cba956f143e329b2dad7492dd1b2 100644 (file)
@@ -176,11 +176,11 @@ HEADER_CHECKS(5)                                              HEADER_CHECKS(5)
               After the message is queued, send the  entire  mes-
               sage through the specified external content filter.
               The <i>transport</i> name specifies the first field  of  a
-              mail  delivery agent definition <a href="master.5.html">master.cf</a>; the syn-
-              tax of <i>destination</i> is described in the manual  page
-              of the corresponding delivery agent.  More informa-
-              tion about external content filters is in the Post-
-              fix <a href="FILTER_README.html">FILTER_README</a> file.
+              mail  delivery  agent  definition in <a href="master.5.html">master.cf</a>; the
+              syntax of the next-hop <i>destination</i> is described  in
+              the  manual  page  of  the  corresponding  delivery
+              agent.  More  information  about  external  content
+              filters is in the Postfix <a href="FILTER_README.html">FILTER_README</a> file.
 
               Note  1: do not use $<i>number</i> regular expression sub-
               stitutions for <i>transport</i> or <i>destination</i> unless  you
@@ -193,34 +193,35 @@ HEADER_CHECKS(5)                                              HEADER_CHECKS(5)
 
               Note 3: the purpose of the  FILTER  command  is  to
               override  message routing.  To override the recipi-
-              ent's <i>transport</i> but  not  <i>destination</i>,  specify  an
-              empty <i>destination</i> (Postfix 2.7 and later), or spec-
-              ify a <i>transport:destination</i> that delivers through a
-              different  Postfix  instance  (Postfix 2.6 and ear-
-              lier). Other options are using the recipient-depen-
-              dent <b><a href="postconf.5.html#transport_maps">transport_maps</a></b> or the sender-dependent <b><a href="postconf.5.html#sender_dependent_default_transport_maps">sender</a>-</b>
-              <b><a href="postconf.5.html#sender_dependent_default_transport_maps">_dependent_default_transport_maps</a></b> features.
+              ent's <i>transport</i> but not the  next-hop  <i>destination</i>,
+              specify  an  empty  filter <i>destination</i> (Postfix 2.7
+              and later), or specify a <i>transport:destination</i> that
+              delivers   through  a  different  Postfix  instance
+              (Postfix 2.6 and earlier). Other options are  using
+              the  recipient-dependent <b><a href="postconf.5.html#transport_maps">transport_maps</a></b> or the sen-
+              der-dependent   <b><a href="postconf.5.html#sender_dependent_default_transport_maps">sender_dependent_default_transport</a>-</b>
+              <b><a href="postconf.5.html#sender_dependent_default_transport_maps">_maps</a></b> features.
 
               This feature is available in Postfix 2.0 and later.
 
        <b>HOLD</b> <i>optional text...</i>
-              Arrange  for  the  message to be placed on the <b>hold</b>
-              queue, and inspect the next input line.   The  mes-
-              sage  remains  on <b>hold</b> until someone either deletes
-              it or releases it for delivery.  Log  the  optional
+              Arrange for the message to be placed  on  the  <b>hold</b>
+              queue,  and  inspect the next input line.  The mes-
+              sage remains on <b>hold</b> until someone  either  deletes
+              it  or  releases it for delivery.  Log the optional
               text if specified, otherwise log a generic message.
 
-              Mail that is placed on hold can  be  examined  with
-              the  <a href="postcat.1.html"><b>postcat</b>(1)</a>  command,  and  can be destroyed or
+              Mail  that  is  placed on hold can be examined with
+              the <a href="postcat.1.html"><b>postcat</b>(1)</a> command, and  can  be  destroyed  or
               released with the <a href="postsuper.1.html"><b>postsuper</b>(1)</a> command.
 
-              Note: use "<b>postsuper -r</b>" to release mail  that  was
-              kept  on  hold for a significant fraction of <b>$<a href="postconf.5.html#maximal_queue_lifetime">maxi</a>-</b>
+              Note:  use  "<b>postsuper -r</b>" to release mail that was
+              kept on hold for a significant fraction  of  <b>$<a href="postconf.5.html#maximal_queue_lifetime">maxi</a>-</b>
               <b><a href="postconf.5.html#maximal_queue_lifetime">mal_queue_lifetime</a></b>  or  <b>$<a href="postconf.5.html#bounce_queue_lifetime">bounce_queue_lifetime</a></b>,  or
-              longer.  Use "<b>postsuper -H</b>" only for mail that will
+              longer. Use "<b>postsuper -H</b>" only for mail that  will
               not expire within a few delivery attempts.
 
-              Note: this action affects  all  recipients  of  the
+              Note:  this  action  affects  all recipients of the
               message.
 
               This feature is available in Postfix 2.0 and later.
@@ -229,23 +230,23 @@ HEADER_CHECKS(5)                                              HEADER_CHECKS(5)
               the next input line.
 
        <b>PREPEND</b> <i>text...</i>
-              Prepend  one  line  with  the  specified  text, and
+              Prepend one  line  with  the  specified  text,  and
               inspect the next input line.
 
               Notes:
 
-              <b>o</b>      The prepended text is output on  a  separate
+              <b>o</b>      The  prepended  text is output on a separate
                      line,  immediately  before  the  input  that
                      triggered the <b>PREPEND</b> action.
 
               <b>o</b>      The prepended text is not considered part of
-                     the  input  stream:  it  is  not  subject to
+                     the input  stream:  it  is  not  subject  to
                      header/body checks or address rewriting, and
                      it does not affect the way that Postfix adds
                      missing message headers.
 
               <b>o</b>      When prepending text before a message header
-                     line,  the  prepended text must begin with a
+                     line, the prepended text must begin  with  a
                      valid message header label.
 
               <b>o</b>      This action cannot be used to prepend multi-
@@ -254,46 +255,46 @@ HEADER_CHECKS(5)                                              HEADER_CHECKS(5)
               This feature is available in Postfix 2.1 and later.
 
        <b>REDIRECT</b> <i>user@domain</i>
-              Write a message redirection request  to  the  queue
-              file,  and  inspect  the next input line. After the
+              Write  a  message  redirection request to the queue
+              file, and inspect the next input  line.  After  the
               message is queued, it will be sent to the specified
               address instead of the intended recipient(s).
 
-              Note:  this action overrides the <b>FILTER</b> action, and
-              affects all recipients of the message. If  multiple
-              <b>REDIRECT</b>  actions  fire,  only the last one is exe-
+              Note: this action overrides the <b>FILTER</b> action,  and
+              affects  all recipients of the message. If multiple
+              <b>REDIRECT</b> actions fire, only the last  one  is  exe-
               cuted.
 
               This feature is available in Postfix 2.1 and later.
 
        <b>REPLACE</b> <i>text...</i>
-              Replace  the  current line with the specified text,
+              Replace the current line with the  specified  text,
               and inspect the next input line.
 
               This feature is available in Postfix 2.2 and later.
-              The  description below applies to Postfix 2.2.2 and
+              The description below applies to Postfix 2.2.2  and
               later.
 
               Notes:
 
-              <b>o</b>      When replacing a message  header  line,  the
-                     replacement  text  must  begin  with a valid
+              <b>o</b>      When  replacing  a  message header line, the
+                     replacement text must  begin  with  a  valid
                      header label.
 
-              <b>o</b>      The replaced text remains part of the  input
-                     stream.  Unlike  the result from the <b>PREPEND</b>
-                     action, a replaced  message  header  may  be
-                     subject  to address rewriting and may affect
-                     the way that Postfix  adds  missing  message
+              <b>o</b>      The  replaced text remains part of the input
+                     stream. Unlike the result from  the  <b>PREPEND</b>
+                     action,  a  replaced  message  header may be
+                     subject to address rewriting and may  affect
+                     the  way  that  Postfix adds missing message
                      headers.
 
        <b>REJECT</b> <i>optional text...</i>
-              Reject  the  entire  message.  Reply  with <i>optional</i>
+              Reject the  entire  message.  Reply  with  <i>optional</i>
               <i>text...</i> when the optional text is specified, other-
               wise reply with a generic error message.
 
-              Note:   this  action  disables  further  header  or
-              <a href="postconf.5.html#body_checks">body_checks</a> inspection of the current  message  and
+              Note:  this  action  disables  further  header   or
+              <a href="postconf.5.html#body_checks">body_checks</a>  inspection  of the current message and
               affects all recipients.
 
               Postfix version 2.3 and later support enhanced sta-
@@ -302,37 +303,37 @@ HEADER_CHECKS(5)                                              HEADER_CHECKS(5)
               enhanced status code of "5.7.1".
 
        <b>WARN</b> <i>optional text...</i>
-              Log a warning with the <i>optional text...</i> (or  log  a
-              generic  message), and inspect the next input line.
+              Log  a  warning with the <i>optional text...</i> (or log a
+              generic message), and inspect the next input  line.
               This action is useful for debugging and for testing
               a pattern before applying more drastic actions.
 
 <b>BUGS</b>
        Empty lines never match, because some map types mis-behave
-       when given a zero-length search string.   This  limitation
-       may  be  removed for regular expression tables in a future
+       when  given  a zero-length search string.  This limitation
+       may be removed for regular expression tables in  a  future
        release.
 
-       Many people overlook the main limitations  of  header  and
+       Many  people  overlook  the main limitations of header and
        <a href="postconf.5.html#body_checks">body_checks</a> rules.
 
-       <b>o</b>      These  rules  operate on one logical message header
+       <b>o</b>      These rules operate on one logical  message  header
               or one body line at a time. A decision made for one
               line is not carried over to the next line.
 
-       <b>o</b>      If  text  in the message body is encoded (<a href="http://tools.ietf.org/html/rfc2045">RFC 2045</a>)
+       <b>o</b>      If text in the message body is encoded  (<a href="http://tools.ietf.org/html/rfc2045">RFC  2045</a>)
               then the rules need to be specified for the encoded
               form.
 
-       <b>o</b>      Likewise,  when  message  headers  are encoded (<a href="http://tools.ietf.org/html/rfc2047">RFC</a>
-              <a href="http://tools.ietf.org/html/rfc2047">2047</a>) then the rules need to be specified  for  the
+       <b>o</b>      Likewise, when message  headers  are  encoded  (<a href="http://tools.ietf.org/html/rfc2047">RFC</a>
+              <a href="http://tools.ietf.org/html/rfc2047">2047</a>)  then  the rules need to be specified for the
               encoded form.
 
-       Message  headers added by the <a href="cleanup.8.html"><b>cleanup</b>(8)</a> daemon itself are
+       Message headers added by the <a href="cleanup.8.html"><b>cleanup</b>(8)</a> daemon itself  are
        excluded from inspection. Examples of such message headers
        are <b>From:</b>, <b>To:</b>, <b>Message-ID:</b>, <b>Date:</b>.
 
-       Message  headers  deleted by the <a href="cleanup.8.html"><b>cleanup</b>(8)</a> daemon will be
+       Message headers deleted by the <a href="cleanup.8.html"><b>cleanup</b>(8)</a> daemon  will  be
        examined before they are deleted. Examples are: <b>Bcc:, Con-</b>
        <b>tent-Length:</b>, <b>Return-Path:</b>.
 
@@ -340,11 +341,11 @@ HEADER_CHECKS(5)                                              HEADER_CHECKS(5)
        <b><a href="postconf.5.html#body_checks">body_checks</a></b>
               Lookup tables with content filter rules for message
               body lines.  These filters see one physical line at
-              a  time,  in  chunks  of at most <b>$<a href="postconf.5.html#line_length_limit">line_length_limit</a></b>
+              a time, in chunks  of  at  most  <b>$<a href="postconf.5.html#line_length_limit">line_length_limit</a></b>
               bytes.
 
        <b><a href="postconf.5.html#body_checks_size_limit">body_checks_size_limit</a></b>
-              The amount of  content  per  message  body  segment
+              The  amount  of  content  per  message body segment
               (attachment) that is subjected to <b>$<a href="postconf.5.html#body_checks">body_checks</a></b> fil-
               tering.
 
@@ -354,35 +355,35 @@ HEADER_CHECKS(5)                                              HEADER_CHECKS(5)
 
        <b><a href="postconf.5.html#nested_header_checks">nested_header_checks</a></b> (default: <b>$<a href="postconf.5.html#header_checks">header_checks</a></b>)
               Lookup tables with content filter rules for message
-              header  lines:  respectively,  these are applied to
-              the initial message  headers  (not  including  MIME
-              headers),  to the MIME headers anywhere in the mes-
-              sage, and to the initial headers of  attached  mes-
+              header lines: respectively, these  are  applied  to
+              the  initial  message  headers  (not including MIME
+              headers), to the MIME headers anywhere in the  mes-
+              sage,  and  to the initial headers of attached mes-
               sages.
 
-              Note:  these filters see one logical message header
-              at a time, even when a message header spans  multi-
-              ple  lines.  Message  headers  that are longer than
+              Note: these filters see one logical message  header
+              at  a time, even when a message header spans multi-
+              ple lines. Message headers  that  are  longer  than
               <b>$<a href="postconf.5.html#header_size_limit">header_size_limit</a></b> characters are truncated.
 
        <b><a href="postconf.5.html#disable_mime_input_processing">disable_mime_input_processing</a></b>
-              While receiving mail, give no special treatment  to
-              MIME  related  message  headers; all text after the
+              While  receiving mail, give no special treatment to
+              MIME related message headers; all  text  after  the
               initial message headers is considered to be part of
-              the  message body. This means that <b><a href="postconf.5.html#header_checks">header_checks</a></b> is
-              applied to all the  initial  message  headers,  and
+              the message body. This means that <b><a href="postconf.5.html#header_checks">header_checks</a></b>  is
+              applied  to  all  the  initial message headers, and
               that <b><a href="postconf.5.html#body_checks">body_checks</a></b> is applied to the remainder of the
               message.
 
-              Note: when used in this  manner,  <b><a href="postconf.5.html#body_checks">body_checks</a></b>  will
-              process  a  multi-line message header one line at a
+              Note:  when  used  in this manner, <b><a href="postconf.5.html#body_checks">body_checks</a></b> will
+              process a multi-line message header one line  at  a
               time.
 
 <b>EXAMPLES</b>
-       Header pattern to block attachments  with  bad  file  name
-       extensions.   For  convenience, the PCRE /x flag is speci-
-       fied, so that there is no need  to  collapse  the  pattern
-       into   a   single  line  of  text.   The  purpose  of  the
+       Header  pattern  to  block  attachments with bad file name
+       extensions.  For convenience, the PCRE /x flag  is  speci-
+       fied,  so  that  there  is no need to collapse the pattern
+       into  a  single  line  of  text.   The  purpose   of   the
        [[:xdigit:]] sub-expressions is to recognize Windows CLSID
        strings.
 
@@ -427,7 +428,7 @@ HEADER_CHECKS(5)                                              HEADER_CHECKS(5)
        <a href="BACKSCATTER_README.html">BACKSCATTER_README</a>, blocking returned forged mail
 
 <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 e25247fbd34af3f931138a4c7c3c59c5f3381562..5e6db842baab959252e940fc4db09390a687ab3a 100644 (file)
@@ -195,14 +195,15 @@ OQMGR(8)                                                              OQMGR(8)
 
        Available with Postfix version 2.7 and later:
 
-       <b><a href="postconf.5.html#legacy_filter_nexthop">legacy_filter_nexthop</a> (no)</b>
-              When  a  FILTER command does not specify a destina-
-              tion, force  the  destination  to  be  $<a href="postconf.5.html#myhostname">myhostname</a>,
-              instead of using the recipient domain.
+       <b><a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> (empty)</b>
+              When  a  <a href="postconf.5.html#content_filter">content_filter</a> or FILTER request specifies
+              no explicit next-hop destination, use $default_fil-
+              ter_nexthop  instead; when that value is empty, use
+              the domain in the recipient address.
 
 <b>ACTIVE QUEUE CONTROLS</b>
        <b><a href="postconf.5.html#qmgr_clog_warn_time">qmgr_clog_warn_time</a> (300s)</b>
-              The  minimal delay between warnings that a specific
+              The minimal delay between warnings that a  specific
               destination  is  clogging  up  the  Postfix  active
               queue.
 
@@ -210,23 +211,23 @@ OQMGR(8)                                                              OQMGR(8)
               The maximal number of messages in the <a href="QSHAPE_README.html#active_queue">active queue</a>.
 
        <b><a href="postconf.5.html#qmgr_message_recipient_limit">qmgr_message_recipient_limit</a> (20000)</b>
-              The maximal number of recipients held in memory  by
-              the  Postfix queue manager, and the maximal size of
+              The  maximal number of recipients held in memory by
+              the Postfix queue manager, and the maximal size  of
               the size of the short-term, in-memory "dead" desti-
               nation status cache.
 
 <b>DELIVERY CONCURRENCY CONTROLS</b>
        <b><a href="postconf.5.html#qmgr_fudge_factor">qmgr_fudge_factor</a> (100)</b>
-              Obsolete   feature:   the  percentage  of  delivery
-              resources that a busy mail system will use  up  for
+              Obsolete  feature:  the  percentage   of   delivery
+              resources  that  a busy mail system will use up for
               delivery of a large mailing  list message.
 
        <b><a href="postconf.5.html#initial_destination_concurrency">initial_destination_concurrency</a> (5)</b>
-              The  initial  per-destination concurrency level for
+              The initial per-destination concurrency  level  for
               parallel delivery to the same destination.
 
        <b><a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a> (20)</b>
-              The default maximal number of  parallel  deliveries
+              The  default  maximal number of parallel deliveries
               to the same destination.
 
        <b><a href="postconf.5.html#transport_destination_concurrency_limit"><i>transport</i>_destination_concurrency_limit</a> ($<a href="postconf.5.html#default_destination_concurrency_limit">default_destina</a>-</b>
@@ -241,9 +242,9 @@ OQMGR(8)                                                              OQMGR(8)
               sage <i>transport</i>.
 
        <b><a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_destination_concurrency_failed_cohort_limit</a> (1)</b>
-              How  many  pseudo-cohorts must suffer connection or
-              handshake failure before a specific destination  is
-              considered  unavailable  (and  further  delivery is
+              How many pseudo-cohorts must suffer  connection  or
+              handshake  failure before a specific destination is
+              considered unavailable  (and  further  delivery  is
               suspended).
 
        <b><a href="postconf.5.html#transport_destination_concurrency_failed_cohort_limit"><i>transport</i>_destination_concurrency_failed_cohort_limit</a></b>
@@ -251,8 +252,8 @@ OQMGR(8)                                                              OQMGR(8)
               Idem, for delivery via the named message <i>transport</i>.
 
        <b><a href="postconf.5.html#default_destination_concurrency_negative_feedback">default_destination_concurrency_negative_feedback</a> (1)</b>
-              The  per-destination amount of delivery concurrency
-              negative feedback, after a delivery completes  with
+              The per-destination amount of delivery  concurrency
+              negative  feedback, after a delivery completes with
               a connection or handshake failure.
 
        <b><a href="postconf.5.html#transport_destination_concurrency_negative_feedback"><i>transport</i>_destination_concurrency_negative_feedback</a></b>
@@ -260,7 +261,7 @@ OQMGR(8)                                                              OQMGR(8)
               Idem, for delivery via the named message <i>transport</i>.
 
        <b><a href="postconf.5.html#default_destination_concurrency_positive_feedback">default_destination_concurrency_positive_feedback</a> (1)</b>
-              The per-destination amount of delivery  concurrency
+              The  per-destination amount of delivery concurrency
               positive feedback, after a delivery completes with-
               out connection or handshake failure.
 
@@ -274,7 +275,7 @@ OQMGR(8)                                                              OQMGR(8)
 
 <b>RECIPIENT SCHEDULING CONTROLS</b>
        <b><a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a> (50)</b>
-              The default maximal number of recipients  per  mes-
+              The  default  maximal number of recipients per mes-
               sage delivery.
 
        <b><a href="postconf.5.html#transport_destination_recipient_limit"><i>transport</i>_destination_recipient_limit</a></b>
@@ -282,41 +283,41 @@ OQMGR(8)                                                              OQMGR(8)
 
 <b>OTHER RESOURCE AND RATE CONTROLS</b>
        <b><a href="postconf.5.html#minimal_backoff_time">minimal_backoff_time</a> (300s)</b>
-              The minimal time  between  attempts  to  deliver  a
-              deferred  message; prior to Postfix 2.4 the default
+              The  minimal  time  between  attempts  to deliver a
+              deferred message; prior to Postfix 2.4 the  default
               value was 1000s.
 
        <b><a href="postconf.5.html#maximal_backoff_time">maximal_backoff_time</a> (4000s)</b>
-              The maximal time  between  attempts  to  deliver  a
+              The  maximal  time  between  attempts  to deliver a
               deferred message.
 
        <b><a href="postconf.5.html#maximal_queue_lifetime">maximal_queue_lifetime</a> (5d)</b>
-              The  maximal  time a message is queued before it is
+              The maximal time a message is queued before  it  is
               sent back as undeliverable.
 
        <b><a href="postconf.5.html#queue_run_delay">queue_run_delay</a> (300s)</b>
-              The time between <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> scans by the  queue
+              The  time between <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> scans by the queue
               manager; prior to Postfix 2.4 the default value was
               1000s.
 
        <b><a href="postconf.5.html#transport_retry_time">transport_retry_time</a> (60s)</b>
               The time between attempts by the Postfix queue man-
-              ager  to  contact a malfunctioning message delivery
+              ager to contact a malfunctioning  message  delivery
               transport.
 
        Available in Postfix version 2.1 and later:
 
        <b><a href="postconf.5.html#bounce_queue_lifetime">bounce_queue_lifetime</a> (5d)</b>
-              The maximal time a bounce message is queued  before
+              The  maximal time a bounce message is queued before
               it is considered undeliverable.
 
        Available in Postfix version 2.5 and later:
 
        <b><a href="postconf.5.html#default_destination_rate_delay">default_destination_rate_delay</a> (0s)</b>
               The  default  amount  of  delay  that  is  inserted
-              between individual deliveries to the same  destina-
-              tion;  with  per-destination recipient limit &gt; 1, a
-              destination is a domain, otherwise it is a  recipi-
+              between  individual deliveries to the same destina-
+              tion; with per-destination recipient limit &gt;  1,  a
+              destination  is a domain, otherwise it is a recipi-
               ent.
 
        <b><a href="postconf.5.html#transport_destination_rate_delay"><i>transport</i>_destination_rate_delay</a>         $<a href="postconf.5.html#default_destination_rate_delay">default_destina</a>-</b>
@@ -325,7 +326,7 @@ OQMGR(8)                                                              OQMGR(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  <a href="postconf.5.html">main.cf</a>  and
+              The  default  location  of  the Postfix <a href="postconf.5.html">main.cf</a> and
               <a href="master.5.html">master.cf</a> configuration files.
 
        <b><a href="postconf.5.html#defer_transports">defer_transports</a> (empty)</b>
@@ -334,11 +335,11 @@ OQMGR(8)                                                              OQMGR(8)
               "<b>sendmail -q</b>" or equivalent.
 
        <b><a href="postconf.5.html#delay_logging_resolution_limit">delay_logging_resolution_limit</a> (2)</b>
-              The  maximal  number  of  digits  after the decimal
+              The maximal number  of  digits  after  the  decimal
               point when logging sub-second delay values.
 
        <b><a href="postconf.5.html#helpful_warnings">helpful_warnings</a> (yes)</b>
-              Log warnings about problematic  configuration  set-
+              Log  warnings  about problematic configuration set-
               tings, and provide helpful suggestions.
 
        <b><a href="postconf.5.html#ipc_timeout">ipc_timeout</a> (3600s)</b>
@@ -346,23 +347,23 @@ OQMGR(8)                                                              OQMGR(8)
               over an internal communication channel.
 
        <b><a href="postconf.5.html#process_id">process_id</a> (read-only)</b>
-              The process ID  of  a  Postfix  command  or  daemon
+              The  process  ID  of  a  Postfix  command or daemon
               process.
 
        <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> (see 'postconf -d' output)</b>
-              The  mail  system  name  that  is  prepended to the
-              process name in syslog  records,  so  that  "smtpd"
+              The mail system  name  that  is  prepended  to  the
+              process  name  in  syslog  records, so that "smtpd"
               becomes, for example, "postfix/smtpd".
 
 <b>FILES</b>
@@ -385,7 +386,7 @@ OQMGR(8)                                                              OQMGR(8)
        <a href="QSHAPE_README.html">QSHAPE_README</a>, Postfix queue analysis
 
 <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 3532a6628b09df3c1334d3a14a4e363fcc11ffa0..ac1e147d29e8fbc661837e09b14c035e16d24fd8 100644 (file)
@@ -53,8 +53,8 @@ PICKUP(8)                                                            PICKUP(8)
 
 <b>CONTENT INSPECTION CONTROLS</b>
        <b><a href="postconf.5.html#content_filter">content_filter</a> (empty)</b>
-              The name of a mail delivery transport that  filters
-              mail after it is queued.
+              After the message is queued, send the  entire  mes-
+              sage to the specified <i>transport:destination</i>.
 
        <b><a href="postconf.5.html#receive_override_options">receive_override_options</a> (empty)</b>
               Enable  or  disable  recipient validation, built-in
index bffafa67e6d41b116c7b6bc81c8eb258671b97ab..db5c78f15b3cfbfa831507a458d5a407c6e642de 100644 (file)
@@ -1540,24 +1540,25 @@ is already bounded by $<a href="postconf.5.html#max_idle">max_idle</a>.  </p>
 <p> After the message is queued, send the entire message to the
 specified <i>transport:destination</i>. The <i>transport</i> name
 specifies the first field of a mail delivery agent definition in
-<a href="master.5.html">master.cf</a>; the syntax of <i>destination</i> is described in the
-manual page of the corresponding delivery agent.  More information
-about external content filters is in the Postfix <a href="FILTER_README.html">FILTER_README</a> file.
-</p>
+<a href="master.5.html">master.cf</a>; the syntax of the next-hop <i>destination</i> is described
+in the manual page of the corresponding delivery agent.  More
+information about external content filters is in the Postfix
+<a href="FILTER_README.html">FILTER_README</a> file.  </p>
 
 <p> Notes: </p>
 
 <ul>
 
-<li> <p> This setting has a lower precedence than a content filter that
-is specified with an <a href="access.5.html">access(5)</a> table or in a <a href="header_checks.5.html">header_checks(5)</a> or
-<a href="header_checks.5.html">body_checks(5)</a> table. </p>
+<li> <p> This setting has lower precedence than a FILTER action
+that is specified in an <a href="access.5.html">access(5)</a>, <a href="header_checks.5.html">header_checks(5)</a> or <a href="header_checks.5.html">body_checks(5)</a>
+table. </p>
 
-<li> <p> The meaning of an empty filter <i>destination</i> is version
-dependent.  Postfix 2.7 and later will use the recipient domain;
-earlier versions will use $<a href="postconf.5.html#myhostname">myhostname</a>.  Specify "<a href="postconf.5.html#legacy_filter_nexthop">legacy_filter_nexthop</a>
-= yes" for compatibility with Postfix 2.6 or earlier, or specify
-a non-empty filter <i>destination</i>.  </p>
+<li> <p> The meaning of an empty next-hop filter <i>destination</i>
+is version dependent.  Postfix 2.7 and later will use the recipient
+domain; earlier versions will use $<a href="postconf.5.html#myhostname">myhostname</a>.  Specify
+"<a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> = $<a href="postconf.5.html#myhostname">myhostname</a>" for compatibility with Postfix
+2.6 or earlier, or specify a <a href="postconf.5.html#content_filter">content_filter</a> value with an explicit
+next-hop <i>destination</i>.  </p>
 
 </ul>
 
@@ -2021,6 +2022,21 @@ name of the message delivery transport.
 </p>
 
 
+</DD>
+
+<DT><b><a name="default_filter_nexthop">default_filter_nexthop</a>
+(default: empty)</b></DT><DD>
+
+<p> When a <a href="postconf.5.html#content_filter">content_filter</a> or FILTER request specifies no explicit
+next-hop destination, use $<a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> instead; when
+that value is empty, use the domain in the recipient address.
+Specify "<a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> = $<a href="postconf.5.html#myhostname">myhostname</a>" for compatibility
+with Postfix version 2.6 and earlier, or specify an explicit next-hop
+destination with each <a href="postconf.5.html#content_filter">content_filter</a> value or FILTER action. </p>
+
+<p> This feature is available in Postfix 2.7 and later.  </p>
+
+
 </DD>
 
 <DT><b><a name="default_minimum_delivery_slots">default_minimum_delivery_slots</a>
@@ -3502,20 +3518,6 @@ This feature is available in Postfix 2.1 and later.
 </p>
 
 
-</DD>
-
-<DT><b><a name="legacy_filter_nexthop">legacy_filter_nexthop</a>
-(default: no)</b></DT><DD>
-
-<p> When a FILTER command does not specify a destination, force the
-destination to be $<a href="postconf.5.html#myhostname">myhostname</a>, instead of using the recipient domain.
-Specify "<a href="postconf.5.html#legacy_filter_nexthop">legacy_filter_nexthop</a> = yes" for compatibility with Postfix
-version 2.6 and earlier, or specify a non-empty filter destination.
-</p>
-
-<p> This feature is available in Postfix 2.7 and later.  </p>
-
-
 </DD>
 
 <DT><b><a name="line_length_limit">line_length_limit</a>
index 9025c1cbbcd55045a6adcb73651063fd457da698..7293c8645c60b65614ec0c9c93d8b024b1747217 100644 (file)
@@ -201,14 +201,15 @@ QMGR(8)                                                                QMGR(8)
 
        Available with Postfix version 2.7 and later:
 
-       <b><a href="postconf.5.html#legacy_filter_nexthop">legacy_filter_nexthop</a> (no)</b>
-              When a FILTER command does not specify  a  destina-
-              tion,  force  the  destination  to  be $<a href="postconf.5.html#myhostname">myhostname</a>,
-              instead of using the recipient domain.
+       <b><a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> (empty)</b>
+              When a <a href="postconf.5.html#content_filter">content_filter</a> or FILTER  request  specifies
+              no explicit next-hop destination, use $default_fil-
+              ter_nexthop instead; when that value is empty,  use
+              the domain in the recipient address.
 
 <b>ACTIVE QUEUE CONTROLS</b>
        <b><a href="postconf.5.html#qmgr_clog_warn_time">qmgr_clog_warn_time</a> (300s)</b>
-              The minimal delay between warnings that a  specific
+              The  minimal delay between warnings that a specific
               destination  is  clogging  up  the  Postfix  active
               queue.
 
@@ -216,13 +217,13 @@ QMGR(8)                                                                QMGR(8)
               The maximal number of messages in the <a href="QSHAPE_README.html#active_queue">active queue</a>.
 
        <b><a href="postconf.5.html#qmgr_message_recipient_limit">qmgr_message_recipient_limit</a> (20000)</b>
-              The  maximal number of recipients held in memory by
-              the Postfix queue manager, and the maximal size  of
+              The maximal number of recipients held in memory  by
+              the  Postfix queue manager, and the maximal size of
               the size of the short-term, in-memory "dead" desti-
               nation status cache.
 
        <b><a href="postconf.5.html#qmgr_message_recipient_minimum">qmgr_message_recipient_minimum</a> (10)</b>
-              The minimal number of in-memory recipients for  any
+              The  minimal number of in-memory recipients for any
               message.
 
        <b><a href="postconf.5.html#default_recipient_limit">default_recipient_limit</a> (20000)</b>
@@ -243,7 +244,7 @@ QMGR(8)                                                                QMGR(8)
        Available in Postfix version 2.4 and later:
 
        <b><a href="postconf.5.html#default_recipient_refill_limit">default_recipient_refill_limit</a> (100)</b>
-              The  default  per-transport  limit on the number of
+              The default per-transport limit on  the  number  of
               recipients refilled at once.
 
        <b><a href="postconf.5.html#transport_recipient_refill_limit"><i>transport</i>_recipient_refill_limit</a>         ($<a href="postconf.5.html#default_recipient_refill_limit">default_recipi</a>-</b>
@@ -251,7 +252,7 @@ QMGR(8)                                                                QMGR(8)
               Idem, for delivery via the named message <i>transport</i>.
 
        <b><a href="postconf.5.html#default_recipient_refill_delay">default_recipient_refill_delay</a> (5s)</b>
-              The  default  per-transport  maximum  delay between
+              The default  per-transport  maximum  delay  between
               recipients refills.
 
        <b><a href="postconf.5.html#transport_recipient_refill_delay"><i>transport</i>_recipient_refill_delay</a>         ($<a href="postconf.5.html#default_recipient_refill_delay">default_recipi</a>-</b>
@@ -260,11 +261,11 @@ QMGR(8)                                                                QMGR(8)
 
 <b>DELIVERY CONCURRENCY CONTROLS</b>
        <b><a href="postconf.5.html#initial_destination_concurrency">initial_destination_concurrency</a> (5)</b>
-              The  initial  per-destination concurrency level for
+              The initial per-destination concurrency  level  for
               parallel delivery to the same destination.
 
        <b><a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a> (20)</b>
-              The default maximal number of  parallel  deliveries
+              The  default  maximal number of parallel deliveries
               to the same destination.
 
        <b><a href="postconf.5.html#transport_destination_concurrency_limit"><i>transport</i>_destination_concurrency_limit</a> ($<a href="postconf.5.html#default_destination_concurrency_limit">default_destina</a>-</b>
@@ -279,9 +280,9 @@ QMGR(8)                                                                QMGR(8)
               sage <i>transport</i>.
 
        <b><a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_destination_concurrency_failed_cohort_limit</a> (1)</b>
-              How  many  pseudo-cohorts must suffer connection or
-              handshake failure before a specific destination  is
-              considered  unavailable  (and  further  delivery is
+              How many pseudo-cohorts must suffer  connection  or
+              handshake  failure before a specific destination is
+              considered unavailable  (and  further  delivery  is
               suspended).
 
        <b><a href="postconf.5.html#transport_destination_concurrency_failed_cohort_limit"><i>transport</i>_destination_concurrency_failed_cohort_limit</a></b>
@@ -289,8 +290,8 @@ QMGR(8)                                                                QMGR(8)
               Idem, for delivery via the named message <i>transport</i>.
 
        <b><a href="postconf.5.html#default_destination_concurrency_negative_feedback">default_destination_concurrency_negative_feedback</a> (1)</b>
-              The  per-destination amount of delivery concurrency
-              negative feedback, after a delivery completes  with
+              The per-destination amount of delivery  concurrency
+              negative  feedback, after a delivery completes with
               a connection or handshake failure.
 
        <b><a href="postconf.5.html#transport_destination_concurrency_negative_feedback"><i>transport</i>_destination_concurrency_negative_feedback</a></b>
@@ -298,7 +299,7 @@ QMGR(8)                                                                QMGR(8)
               Idem, for delivery via the named message <i>transport</i>.
 
        <b><a href="postconf.5.html#default_destination_concurrency_positive_feedback">default_destination_concurrency_positive_feedback</a> (1)</b>
-              The per-destination amount of delivery  concurrency
+              The  per-destination amount of delivery concurrency
               positive feedback, after a delivery completes with-
               out connection or handshake failure.
 
@@ -312,7 +313,7 @@ QMGR(8)                                                                QMGR(8)
 
 <b>RECIPIENT SCHEDULING CONTROLS</b>
        <b><a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a> (50)</b>
-              The default maximal number of recipients  per  mes-
+              The  default  maximal number of recipients per mes-
               sage delivery.
 
        <b><a href="postconf.5.html#transport_destination_recipient_limit"><i>transport</i>_destination_recipient_limit</a>   ($<a href="postconf.5.html#default_destination_recipient_limit">default_destina</a>-</b>
@@ -321,8 +322,8 @@ QMGR(8)                                                                QMGR(8)
 
 <b>MESSAGE SCHEDULING CONTROLS</b>
        <b><a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a> (5)</b>
-              How often the Postfix queue manager's scheduler  is
-              allowed  to  preempt  delivery  of one message with
+              How  often the Postfix queue manager's scheduler is
+              allowed to preempt delivery  of  one  message  with
               another.
 
        <b><a href="postconf.5.html#transport_delivery_slot_cost"><i>transport</i>_delivery_slot_cost</a> ($<a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a>)</b>
@@ -338,7 +339,7 @@ QMGR(8)                                                                QMGR(8)
               Idem, for delivery via the named message <i>transport</i>.
 
        <b><a href="postconf.5.html#default_delivery_slot_discount">default_delivery_slot_discount</a> (50)</b>
-              The default value  for  transport-specific  _deliv-
+              The  default  value  for transport-specific _deliv-
               ery_slot_discount settings.
 
        <b><a href="postconf.5.html#transport_delivery_slot_discount"><i>transport</i>_delivery_slot_discount</a>          ($<a href="postconf.5.html#default_delivery_slot_discount">default_deliv</a>-</b>
@@ -346,7 +347,7 @@ QMGR(8)                                                                QMGR(8)
               Idem, for delivery via the named message <i>transport</i>.
 
        <b><a href="postconf.5.html#default_delivery_slot_loan">default_delivery_slot_loan</a> (3)</b>
-              The default value  for  transport-specific  _deliv-
+              The  default  value  for transport-specific _deliv-
               ery_slot_loan settings.
 
        <b><a href="postconf.5.html#transport_delivery_slot_loan"><i>transport</i>_delivery_slot_loan</a> ($<a href="postconf.5.html#default_delivery_slot_loan">default_delivery_slot_loan</a>)</b>
@@ -354,41 +355,41 @@ QMGR(8)                                                                QMGR(8)
 
 <b>OTHER RESOURCE AND RATE CONTROLS</b>
        <b><a href="postconf.5.html#minimal_backoff_time">minimal_backoff_time</a> (300s)</b>
-              The minimal time  between  attempts  to  deliver  a
-              deferred  message; prior to Postfix 2.4 the default
+              The  minimal  time  between  attempts  to deliver a
+              deferred message; prior to Postfix 2.4 the  default
               value was 1000s.
 
        <b><a href="postconf.5.html#maximal_backoff_time">maximal_backoff_time</a> (4000s)</b>
-              The maximal time  between  attempts  to  deliver  a
+              The  maximal  time  between  attempts  to deliver a
               deferred message.
 
        <b><a href="postconf.5.html#maximal_queue_lifetime">maximal_queue_lifetime</a> (5d)</b>
-              The  maximal  time a message is queued before it is
+              The maximal time a message is queued before  it  is
               sent back as undeliverable.
 
        <b><a href="postconf.5.html#queue_run_delay">queue_run_delay</a> (300s)</b>
-              The time between <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> scans by the  queue
+              The  time between <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> scans by the queue
               manager; prior to Postfix 2.4 the default value was
               1000s.
 
        <b><a href="postconf.5.html#transport_retry_time">transport_retry_time</a> (60s)</b>
               The time between attempts by the Postfix queue man-
-              ager  to  contact a malfunctioning message delivery
+              ager to contact a malfunctioning  message  delivery
               transport.
 
        Available in Postfix version 2.1 and later:
 
        <b><a href="postconf.5.html#bounce_queue_lifetime">bounce_queue_lifetime</a> (5d)</b>
-              The maximal time a bounce message is queued  before
+              The  maximal time a bounce message is queued before
               it is considered undeliverable.
 
        Available in Postfix version 2.5 and later:
 
        <b><a href="postconf.5.html#default_destination_rate_delay">default_destination_rate_delay</a> (0s)</b>
               The  default  amount  of  delay  that  is  inserted
-              between individual deliveries to the same  destina-
-              tion;  with  per-destination recipient limit &gt; 1, a
-              destination is a domain, otherwise it is a  recipi-
+              between  individual deliveries to the same destina-
+              tion; with per-destination recipient limit &gt;  1,  a
+              destination  is a domain, otherwise it is a recipi-
               ent.
 
        <b><a href="postconf.5.html#transport_destination_rate_delay"><i>transport</i>_destination_rate_delay</a>         $<a href="postconf.5.html#default_destination_rate_delay">default_destina</a>-</b>
@@ -397,7 +398,7 @@ QMGR(8)                                                                QMGR(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  <a href="postconf.5.html">main.cf</a>  and
+              The  default  location  of  the Postfix <a href="postconf.5.html">main.cf</a> and
               <a href="master.5.html">master.cf</a> configuration files.
 
        <b><a href="postconf.5.html#defer_transports">defer_transports</a> (empty)</b>
@@ -406,11 +407,11 @@ QMGR(8)                                                                QMGR(8)
               "<b>sendmail -q</b>" or equivalent.
 
        <b><a href="postconf.5.html#delay_logging_resolution_limit">delay_logging_resolution_limit</a> (2)</b>
-              The  maximal  number  of  digits  after the decimal
+              The maximal number  of  digits  after  the  decimal
               point when logging sub-second delay values.
 
        <b><a href="postconf.5.html#helpful_warnings">helpful_warnings</a> (yes)</b>
-              Log warnings about problematic  configuration  set-
+              Log  warnings  about problematic configuration set-
               tings, and provide helpful suggestions.
 
        <b><a href="postconf.5.html#ipc_timeout">ipc_timeout</a> (3600s)</b>
@@ -418,23 +419,23 @@ QMGR(8)                                                                QMGR(8)
               over an internal communication channel.
 
        <b><a href="postconf.5.html#process_id">process_id</a> (read-only)</b>
-              The process ID  of  a  Postfix  command  or  daemon
+              The  process  ID  of  a  Postfix  command or daemon
               process.
 
        <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> (see 'postconf -d' output)</b>
-              The  mail  system  name  that  is  prepended to the
-              process name in syslog  records,  so  that  "smtpd"
+              The mail system  name  that  is  prepended  to  the
+              process  name  in  syslog  records, so that "smtpd"
               becomes, for example, "postfix/smtpd".
 
 <b>FILES</b>
@@ -458,7 +459,7 @@ QMGR(8)                                                                QMGR(8)
        <a href="QSHAPE_README.html">QSHAPE_README</a>, Postfix queue analysis
 
 <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 c62b0d1508f49573c24cf6fc5baca5e1bffba265..94eac6a42e56512b8216ac9a8d518be50c4928a7 100644 (file)
@@ -52,8 +52,8 @@ QMQPD(8)                                                              QMQPD(8)
 
 <b>CONTENT INSPECTION CONTROLS</b>
        <b><a href="postconf.5.html#content_filter">content_filter</a> (empty)</b>
-              The name of a mail delivery transport that  filters
-              mail after it is queued.
+              After the message is queued, send the  entire  mes-
+              sage to the specified <i>transport:destination</i>.
 
        <b><a href="postconf.5.html#receive_override_options">receive_override_options</a> (empty)</b>
               Enable  or  disable  recipient validation, built-in
index c5bf71c692299d4fae0c4f166529ba6513aedc86..b47f92c0d7e2622cc59a36e8bc53c0a9b76c7492 100644 (file)
@@ -178,8 +178,8 @@ SMTPD(8)                                                              SMTPD(8)
        See the <a href="FILTER_README.html">FILTER_README</a> document for details.
 
        <b><a href="postconf.5.html#content_filter">content_filter</a> (empty)</b>
-              The  name of a mail delivery transport that filters
-              mail after it is queued.
+              After  the  message is queued, send the entire mes-
+              sage to the specified <i>transport:destination</i>.
 
 <b>BEFORE QUEUE EXTERNAL CONTENT INSPECTION CONTROLS</b>
        As of version 2.1, the Postfix SMTP server can be  config-
index 17b816abbd2dd73eb21757a315b2bd3b5e7a82b2..f901b1c9ea9a24f342b5d53b2e45d944f1ad2e81 100644 (file)
@@ -269,10 +269,11 @@ This feature is available in Postfix 2.0 and later.
 After the message is queued, send the entire message through
 the specified external content filter. The \fItransport\fR
 name specifies the first field of a mail delivery agent
-definition in master.cf; the syntax of \fIdestination\fR
-is described in the manual page of the corresponding delivery
-agent.  More information about external content filters is
-in the Postfix FILTER_README file.
+definition in master.cf; the syntax of the next-hop
+\fIdestination\fR is described in the manual page of the
+corresponding delivery agent.  More information about
+external content filters is in the Postfix FILTER_README
+file.
 .sp
 Note 1: do not use $\fInumber\fR regular expression
 substitutions for \fItransport\fR or \fIdestination\fR
@@ -285,12 +286,13 @@ one is executed.
 .sp
 Note 3: the purpose of the FILTER command is to override
 message routing.  To override the recipient's \fItransport\fR
-but not \fIdestination\fR, specify an empty \fIdestination\fR
-(Postfix 2.7 and later), or specify a \fItransport:destination\fR
-that delivers through a different Postfix instance (Postfix
-2.6 and earlier). Other options are using the recipient-dependent
-\fBtrans\%port\%_maps\fR or the sen\%der-dependent
-\fBsender\%_de\%pen\%dent_default_trans\%port\%_maps\fR
+but not the next-hop \fIdestination\fR, specify an empty
+filter \fIdestination\fR (Postfix 2.7 and later), or specify
+a \fItransport:destination\fR that delivers through a
+different Postfix instance (Postfix 2.6 and earlier). Other
+options are using the recipient-dependent \fBtrans\%port\%_maps\fR
+or the sen\%der-dependent
+\fBsender\%_de\%pen\%dent\%_de\%fault\%_trans\%port\%_maps\fR
 features.
 .sp
 This feature is available in Postfix 2.0 and later.
index b99752c354aae882955f418372f023db43ab402a..c1243c22d45d1de056ca2fc688aba089fed7e31d 100644 (file)
@@ -171,10 +171,11 @@ This feature is available in Postfix 2.1 and later.
 After the message is queued, send the entire message through
 the specified external content filter. The \fItransport\fR
 name specifies the first field of a mail delivery agent
-definition master.cf; the syntax of \fIdestination\fR is
-described in the manual page of the corresponding delivery
-agent.  More information about external content filters is
-in the Postfix FILTER_README file.
+definition in master.cf; the syntax of the next-hop
+\fIdestination\fR is described in the manual page of the
+corresponding delivery agent.  More information about
+external content filters is in the Postfix FILTER_README
+file.
 .sp
 Note 1: do not use $\fInumber\fR regular expression
 substitutions for \fItransport\fR or \fIdestination\fR
@@ -187,12 +188,13 @@ one is executed.
 .sp
 Note 3: the purpose of the FILTER command is to override
 message routing.  To override the recipient's \fItransport\fR
-but not \fIdestination\fR, specify an empty \fIdestination\fR
-(Postfix 2.7 and later), or specify a \fItransport:destination\fR
-that delivers through a different Postfix instance (Postfix
-2.6 and earlier). Other options are using the recipient-dependent
-\fBtrans\%port\%_maps\fR or the sen\%der-dependent
-\fBsender\%_de\%pen\%dent_default_trans\%port\%_maps\fR
+but not the next-hop \fIdestination\fR, specify an empty
+filter \fIdestination\fR (Postfix 2.7 and later), or specify
+a \fItransport:destination\fR that delivers through a
+different Postfix instance (Postfix 2.6 and earlier). Other
+options are using the recipient-dependent \fBtrans\%port\%_maps\fR
+or the sen\%der-dependent
+\fBsender\%_de\%pen\%dent\%_de\%fault\%_trans\%port\%_maps\fR
 features.
 .sp
 This feature is available in Postfix 2.0 and later.
index 2a613a2f9b568da16d0da5a3cc6692ef06faccef..3ffbf62d8e3b5bd5daa4de9a87874827d0e5b514 100644 (file)
@@ -853,21 +853,23 @@ is already bounded by $max_idle.
 After the message is queued, send the entire message to the
 specified \fItransport:destination\fR. The \fItransport\fR name
 specifies the first field of a mail delivery agent definition in
-master.cf; the syntax of \fIdestination\fR is described in the
-manual page of the corresponding delivery agent.  More information
-about external content filters is in the Postfix FILTER_README file.
+master.cf; the syntax of the next-hop \fIdestination\fR is described
+in the manual page of the corresponding delivery agent.  More
+information about external content filters is in the Postfix
+FILTER_README file.
 .PP
 Notes:
 .IP \(bu
-This setting has a lower precedence than a content filter that
-is specified with an \fBaccess\fR(5) table or in a \fBheader_checks\fR(5) or
-\fBbody_checks\fR(5) table.
+This setting has lower precedence than a FILTER action
+that is specified in an \fBaccess\fR(5), \fBheader_checks\fR(5) or \fBbody_checks\fR(5)
+table.
 .IP \(bu
-The meaning of an empty filter \fIdestination\fR is version
-dependent.  Postfix 2.7 and later will use the recipient domain;
-earlier versions will use $myhostname.  Specify "legacy_filter_nexthop
-= yes" for compatibility with Postfix 2.6 or earlier, or specify
-a non-empty filter \fIdestination\fR.
+The meaning of an empty next-hop filter \fIdestination\fR
+is version dependent.  Postfix 2.7 and later will use the recipient
+domain; earlier versions will use $myhostname.  Specify
+"default_filter_nexthop = $myhostname" for compatibility with Postfix
+2.6 or earlier, or specify a content_filter value with an explicit
+next-hop \fIdestination\fR.
 .SH cyrus_sasl_config_path (default: empty)
 Search path for Cyrus SASL application configuration files,
 currently used only to locate the $smtpd_sasl_path.conf file.
@@ -1168,6 +1170,15 @@ degradation.
 Use \fItransport\fR_extra_recipient_limit to specify a
 transport-specific override, where \fItransport\fR is the master.cf
 name of the message delivery transport.
+.SH default_filter_nexthop (default: empty)
+When a content_filter or FILTER request specifies no explicit
+next-hop destination, use $default_filter_nexthop instead; when
+that value is empty, use the domain in the recipient address.
+Specify "default_filter_nexthop = $myhostname" for compatibility
+with Postfix version 2.6 and earlier, or specify an explicit next-hop
+destination with each content_filter value or FILTER action.
+.PP
+This feature is available in Postfix 2.7 and later.
 .SH default_minimum_delivery_slots (default: 3)
 How many recipients a message must have in order to invoke the
 Postfix queue manager's scheduling algorithm at all.  Messages
@@ -1956,13 +1967,6 @@ Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
 The default time unit is s (seconds).
 .PP
 This feature is available in Postfix 2.1 and later.
-.SH legacy_filter_nexthop (default: no)
-When a FILTER command does not specify a destination, force the
-destination to be $myhostname, instead of using the recipient domain.
-Specify "legacy_filter_nexthop = yes" for compatibility with Postfix
-version 2.6 and earlier, or specify a non-empty filter destination.
-.PP
-This feature is available in Postfix 2.7 and later.
 .SH line_length_limit (default: 2048)
 Upon input, long lines are chopped up into pieces of at most
 this length; upon delivery, long lines are reconstructed.
index 9b4fbfb3381b0e5184f74de91cd733a730959aa4..00dda1311f46f58693b137235a5e67efc3693932 100644 (file)
@@ -185,9 +185,10 @@ Allow a sender or recipient address to have `-' as the first
 character.
 .PP
 Available with Postfix version 2.7 and later:
-.IP "\fBlegacy_filter_nexthop (no)\fR"
-When a FILTER command does not specify a destination, force the
-destination to be $myhostname, instead of using the recipient domain.
+.IP "\fBdefault_filter_nexthop (empty)\fR"
+When a content_filter or FILTER request specifies no explicit
+next-hop destination, use $default_filter_nexthop instead; when
+that value is empty, use the domain in the recipient address.
 .SH "ACTIVE QUEUE CONTROLS"
 .na
 .nf
index cd4efb5c89cc5bb9c02fffb58329e156d19bd4e6..4e0f79af7d506f1a51c69d5e573eaa76f1305659 100644 (file)
@@ -64,8 +64,8 @@ The text below provides only a parameter summary. See
 .ad
 .fi
 .IP "\fBcontent_filter (empty)\fR"
-The name of a mail delivery transport that filters mail after
-it is queued.
+After the message is queued, send the entire message to the
+specified \fItransport:destination\fR.
 .IP "\fBreceive_override_options (empty)\fR"
 Enable or disable recipient validation, built-in content
 filtering, or address mapping.
index 4bbfd5777e001846752587bbeb6a0359afe012d9..83e7ea59b406c83dd0553224f8bbf00c86be6568 100644 (file)
@@ -189,9 +189,10 @@ Allow a sender or recipient address to have `-' as the first
 character.
 .PP
 Available with Postfix version 2.7 and later:
-.IP "\fBlegacy_filter_nexthop (no)\fR"
-When a FILTER command does not specify a destination, force the
-destination to be $myhostname, instead of using the recipient domain.
+.IP "\fBdefault_filter_nexthop (empty)\fR"
+When a content_filter or FILTER request specifies no explicit
+next-hop destination, use $default_filter_nexthop instead; when
+that value is empty, use the domain in the recipient address.
 .SH "ACTIVE QUEUE CONTROLS"
 .na
 .nf
index 72fcd47869e98f10573a06ee91c71a92983bceed..ca193b2057aa1e3fda170efed7e6b813a26e61e2 100644 (file)
@@ -61,8 +61,8 @@ The text below provides only a parameter summary. See
 .ad
 .fi
 .IP "\fBcontent_filter (empty)\fR"
-The name of a mail delivery transport that filters mail after
-it is queued.
+After the message is queued, send the entire message to the
+specified \fItransport:destination\fR.
 .IP "\fBreceive_override_options (empty)\fR"
 Enable or disable recipient validation, built-in content
 filtering, or address mapping.
index 326500ed33207e543c0175f7c37ced7b6f141c8d..e8970b1f939a1ad1f9e17801878973c615d15f46 100644 (file)
@@ -170,8 +170,8 @@ an external content filter AFTER the mail is queued. This content
 filter is expected to inject mail back into a (Postfix or other)
 MTA for further delivery. See the FILTER_README document for details.
 .IP "\fBcontent_filter (empty)\fR"
-The name of a mail delivery transport that filters mail after
-it is queued.
+After the message is queued, send the entire message to the
+specified \fItransport:destination\fR.
 .SH "BEFORE QUEUE EXTERNAL CONTENT INSPECTION CONTROLS"
 .na
 .nf
index 7cd756375c4fc4fa3b75a51add9d381a880ec805..583a66cb8244ccc7000e878441e7e5129af7aa8e 100755 (executable)
@@ -355,7 +355,7 @@ while (<>) {
     s;\bproxy_write_maps\b;<a href="postconf.5.html#proxy_write_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;\blegacy_filter_nexthop\b;<a href="postconf.5.html#legacy_filter_nexthop">$&</a>;g;
+    s;\bdefault_filter_nexthop\b;<a href="postconf.5.html#default_filter_nexthop">$&</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;
index ac303ab8b16eda6f23cdc5d992276dc314987ead..4635b7159aebbe787e7f90fdf25d2e55df54b764 100644 (file)
@@ -399,18 +399,19 @@ and causes mail to be given to the content filter instead. </p>
 <p> The content_filter configuration parameter expects a value of
 the form <i>transport:destination</i>. The <i>transport</i> name
 specifies the first field of a mail delivery agent definition in
-master.cf; the syntax of <i>destination</i> is described in the
-manual page of the corresponding delivery agent. </p>
-
-<p> The meaning of an empty filter <i>destination</i> is version
-dependent.  Postfix 2.7 and later will use the recipient domain;
-earlier versions will use $myhostname.  Specify "legacy_filter_nexthop
-= yes" for compatibility with Postfix 2.6 or earlier, or specify a
-non-empty filter destination.  </p>
+master.cf; the syntax of the next-hop <i>destination</i> is described
+in the manual page of the corresponding delivery agent. </p>
+
+<p> The meaning of an empty next-hop filter <i>destination</i> is
+version dependent.  Postfix 2.7 and later will use the recipient
+domain; earlier versions will use $myhostname.  Specify
+"default_filter_nexthop = $myhostname" for compatibility with Postfix
+2.6 or earlier, or specify a non-empty next-hop filter <i>destination</i>.
+</p>
 
-<p> The content_filter setting has a lower precedence than a content
-filter that is specified with an access(5) table or in a header_checks(5)
-or body_checks(5) table. </p>
+<p> The content_filter setting has lower precedence than a FILTER
+action that is specified in an access(5), header_checks(5) or
+body_checks(5) table. </p>
 
 <li> <p> Execute "<b>postfix reload</b>" to complete the change.
 </p>
@@ -625,18 +626,18 @@ of its final destination. </p>
 <li> <p> The content_filter configuration parameter expects a value
 of the form <i>transport:destination</i>. The <i>transport</i> name
 specifies the first field of a mail delivery agent definition in
-master.cf; the syntax of <i>destination</i> is described in the
-manual page of the corresponding delivery agent. </p>
-
-<li> <p> The meaning of an empty filter <i>destination</i> is version
-dependent.  Postfix 2.7 and later will use the recipient domain;
-earlier versions will use $myhostname.  Specify "legacy_filter_nexthop
-= yes" for compatibility with Postfix 2.6 or earlier, or specify a
-non-empty filter destination.  </p>
-
-<li> <p> The content_filter setting has lower precedence than a
-content filter that is specified with an access(5) table or in a
-header_checks(5) or body_checks(5) table. </p>
+master.cf; the syntax of the next-hop <i>destination</i> is described
+in the manual page of the corresponding delivery agent. </p>
+
+<li> <p> The meaning of an empty next-hop filter <i>destination</i>
+is version dependent.  Postfix 2.7 and later will use the recipient
+domain; earlier versions will use $myhostname.  Specify
+"default_filter_nexthop = $myhostname" for compatibility with Postfix
+2.6 or earlier, or specify a non-empty next-hop filter <i>destination</i>.
+
+<li> <p> The content_filter setting has lower precedence than a
+FILTER action that is specified in an access(5), header_checks(5)
+or body_checks(5) table. </p>
 
 </ul>
 
index 7ddacb81bbc0e9bff48170b71b81e2848ef5656f..6e7007c6467758aa02d14523a62df1533d0a7354 100644 (file)
 #      After the message is queued, send the entire message through
 #      the specified external content filter. The \fItransport\fR
 #      name specifies the first field of a mail delivery agent
-#      definition in master.cf; the syntax of \fIdestination\fR
-#      is described in the manual page of the corresponding delivery
-#      agent.  More information about external content filters is
-#      in the Postfix FILTER_README file.
+#      definition in master.cf; the syntax of the next-hop
+#      \fIdestination\fR is described in the manual page of the
+#      corresponding delivery agent.  More information about
+#      external content filters is in the Postfix FILTER_README
+#      file.
 # .sp
 #      Note 1: do not use $\fInumber\fR regular expression
 #      substitutions for \fItransport\fR or \fIdestination\fR
 # .sp
 #      Note 3: the purpose of the FILTER command is to override
 #      message routing.  To override the recipient's \fItransport\fR
-#      but not \fIdestination\fR, specify an empty \fIdestination\fR
-#      (Postfix 2.7 and later), or specify a \fItransport:destination\fR
-#      that delivers through a different Postfix instance (Postfix
-#      2.6 and earlier). Other options are using the recipient-dependent
-#      \fBtrans\%port\%_maps\fR or the sen\%der-dependent
-#      \fBsender\%_de\%pen\%dent_default_trans\%port\%_maps\fR
+#      but not the next-hop \fIdestination\fR, specify an empty
+#      filter \fIdestination\fR (Postfix 2.7 and later), or specify
+#      a \fItransport:destination\fR that delivers through a
+#      different Postfix instance (Postfix 2.6 and earlier). Other
+#      options are using the recipient-dependent \fBtrans\%port\%_maps\fR
+#      or the sen\%der-dependent
+#      \fBsender\%_de\%pen\%dent\%_de\%fault\%_trans\%port\%_maps\fR
 #      features.
 # .sp
 #      This feature is available in Postfix 2.0 and later.
index e1df4d97a31ee047c776793073319b5c73301837..e01fe621939c5fecab4b9ca6d1ebf9fbb5da6ff2 100644 (file)
 #      After the message is queued, send the entire message through
 #      the specified external content filter. The \fItransport\fR
 #      name specifies the first field of a mail delivery agent
-#      definition master.cf; the syntax of \fIdestination\fR is
-#      described in the manual page of the corresponding delivery
-#      agent.  More information about external content filters is
-#      in the Postfix FILTER_README file.
+#      definition in master.cf; the syntax of the next-hop
+#      \fIdestination\fR is described in the manual page of the
+#      corresponding delivery agent.  More information about
+#      external content filters is in the Postfix FILTER_README
+#      file.
 # .sp
 #      Note 1: do not use $\fInumber\fR regular expression
 #      substitutions for \fItransport\fR or \fIdestination\fR
 # .sp
 #      Note 3: the purpose of the FILTER command is to override
 #      message routing.  To override the recipient's \fItransport\fR
-#      but not \fIdestination\fR, specify an empty \fIdestination\fR
-#      (Postfix 2.7 and later), or specify a \fItransport:destination\fR
-#      that delivers through a different Postfix instance (Postfix
-#      2.6 and earlier). Other options are using the recipient-dependent
-#      \fBtrans\%port\%_maps\fR or the sen\%der-dependent
-#      \fBsender\%_de\%pen\%dent_default_trans\%port\%_maps\fR
+#      but not the next-hop \fIdestination\fR, specify an empty
+#      filter \fIdestination\fR (Postfix 2.7 and later), or specify
+#      a \fItransport:destination\fR that delivers through a
+#      different Postfix instance (Postfix 2.6 and earlier). Other
+#      options are using the recipient-dependent \fBtrans\%port\%_maps\fR
+#      or the sen\%der-dependent
+#      \fBsender\%_de\%pen\%dent\%_de\%fault\%_trans\%port\%_maps\fR
 #      features.
 # .sp
 #      This feature is available in Postfix 2.0 and later.
index 113c66c802caeda0f373baa122b0970431941fd8..f827592fbc524d15d6a2be8daf448b86cdc799c5 100644 (file)
@@ -6864,24 +6864,25 @@ allowed set are replaced by underscores.
 <p> After the message is queued, send the entire message to the
 specified <i>transport:destination</i>. The <i>transport</i> name
 specifies the first field of a mail delivery agent definition in
-master.cf; the syntax of <i>destination</i> is described in the
-manual page of the corresponding delivery agent.  More information
-about external content filters is in the Postfix FILTER_README file.
-</p>
+master.cf; the syntax of the next-hop <i>destination</i> is described
+in the manual page of the corresponding delivery agent.  More
+information about external content filters is in the Postfix
+FILTER_README file.  </p>
 
 <p> Notes: </p>
 
 <ul>
 
-<li> <p> This setting has a lower precedence than a content filter that
-is specified with an access(5) table or in a header_checks(5) or
-body_checks(5) table. </p>
+<li> <p> This setting has lower precedence than a FILTER action
+that is specified in an access(5), header_checks(5) or body_checks(5)
+table. </p>
 
-<li> <p> The meaning of an empty filter <i>destination</i> is version
-dependent.  Postfix 2.7 and later will use the recipient domain;
-earlier versions will use $myhostname.  Specify "legacy_filter_nexthop
-= yes" for compatibility with Postfix 2.6 or earlier, or specify
-a non-empty filter <i>destination</i>.  </p>
+<li> <p> The meaning of an empty next-hop filter <i>destination</i>
+is version dependent.  Postfix 2.7 and later will use the recipient
+domain; earlier versions will use $myhostname.  Specify
+"default_filter_nexthop = $myhostname" for compatibility with Postfix
+2.6 or earlier, or specify a content_filter value with an explicit
+next-hop <i>destination</i>.  </p>
 
 </ul>
 
@@ -12832,13 +12833,14 @@ setting for address verification probes.  </p>
 
 <p> This feature is available in Postfix 2.7 and later.  </p>
 
-%PARAM legacy_filter_nexthop no
+%PARAM default_filter_nexthop 
 
-<p> When a FILTER command does not specify a destination, force the
-destination to be $myhostname, instead of using the recipient domain.
-Specify "legacy_filter_nexthop = yes" for compatibility with Postfix
-version 2.6 and earlier, or specify a non-empty filter destination.
-</p>
+<p> When a content_filter or FILTER request specifies no explicit
+next-hop destination, use $default_filter_nexthop instead; when
+that value is empty, use the domain in the recipient address.
+Specify "default_filter_nexthop = $myhostname" for compatibility
+with Postfix version 2.6 and earlier, or specify an explicit next-hop
+destination with each content_filter value or FILTER action. </p>
 
 <p> This feature is available in Postfix 2.7 and later.  </p>
 
index 71c2b3f9d89123a3273dee346f9c254b454fd96f..6952706dc98b04149ff3eb10be19c9fea5d2db99 100644 (file)
@@ -2253,9 +2253,9 @@ extern void mail_params_init(void);
 #define DEF_FILTER_XPORT               ""
 extern char *var_filter_xport;
 
-#define VAR_LEGACY_FILTER_NEXTHOP      "legacy_filter_nexthop"
-#define DEF_LEGACY_FILTER_NEXTHOP      0
-extern bool var_legacy_filter_nexthop;
+#define VAR_DEF_FILTER_NEXTHOP         "default_filter_nexthop"
+#define DEF_DEF_FILTER_NEXTHOP         ""
+extern char *var_def_filter_nexthop;
 
  /*
   * Fast flush service support.
index 85a6d560f3890fdbcf8f0a645f44ec9dfe420539..ba98408e0d2f26fb2466e6295870e4a2b77580bf 100644 (file)
@@ -20,7 +20,7 @@
   * Patches change both the patchlevel and the release date. Snapshots have no
   * patchlevel; they change the release date only.
   */
-#define MAIL_RELEASE_DATE      "20100116"
+#define MAIL_RELEASE_DATE      "20100117"
 #define MAIL_VERSION_NUMBER    "2.7"
 
 #ifdef SNAPSHOT
index 2d6d84fbe54166e5f327cdfe094db0e9ad704af6..edff94dc814ccd1fa67c39113d9a86f6a436d6ec 100644 (file)
 /*     character.
 /* .PP
 /*     Available with Postfix version 2.7 and later:
-/* .IP "\fBlegacy_filter_nexthop (no)\fR"
-/*     When a FILTER command does not specify a destination, force the
-/*     destination to be $myhostname, instead of using the recipient domain.
+/* .IP "\fBdefault_filter_nexthop (empty)\fR"
+/*     When a content_filter or FILTER request specifies no explicit
+/*     next-hop destination, use $default_filter_nexthop instead; when
+/*     that value is empty, use the domain in the recipient address.
 /* ACTIVE QUEUE CONTROLS
 /* .ad
 /* .fi
@@ -374,7 +375,7 @@ char   *var_conc_neg_feedback;
 int     var_conc_cohort_limit;
 int     var_conc_feedback_debug;
 int     var_dest_rate_delay;
-bool    var_legacy_filter_nexthop;
+char   *var_def_filter_nexthop;
 
 static QMGR_SCAN *qmgr_scans[2];
 
@@ -604,6 +605,7 @@ int     main(int argc, char **argv)
        VAR_DEFER_XPORTS, DEF_DEFER_XPORTS, &var_defer_xports, 0, 0,
        VAR_CONC_POS_FDBACK, DEF_CONC_POS_FDBACK, &var_conc_pos_feedback, 1, 0,
        VAR_CONC_NEG_FDBACK, DEF_CONC_NEG_FDBACK, &var_conc_neg_feedback, 1, 0,
+       VAR_DEF_FILTER_NEXTHOP, DEF_DEF_FILTER_NEXTHOP, &var_def_filter_nexthop, 0, 0,
        0,
     };
     static const CONFIG_TIME_TABLE time_table[] = {
@@ -633,7 +635,6 @@ int     main(int argc, char **argv)
     static const CONFIG_BOOL_TABLE bool_table[] = {
        VAR_VERP_BOUNCE_OFF, DEF_VERP_BOUNCE_OFF, &var_verp_bounce_off,
        VAR_CONC_FDBACK_DEBUG, DEF_CONC_FDBACK_DEBUG, &var_conc_feedback_debug,
-       VAR_LEGACY_FILTER_NEXTHOP, DEF_LEGACY_FILTER_NEXTHOP, &var_legacy_filter_nexthop,
        0,
     };
 
index cb7b87ce109cf0fcd6365618fc05c96b2a37572d..05e6a339a417d0f19ad0ec0aa6d6a187f2870c50 100644 (file)
@@ -1009,8 +1009,8 @@ static void qmgr_message_resolve(QMGR_MESSAGE *message)
            reply.flags = 0;
            vstring_strcpy(reply.transport, message->filter_xport);
            if (FILTER_WITHOUT_NEXTHOP(STR(reply.transport), nexthop)
-               && (var_legacy_filter_nexthop != 0
-                   || RCPT_WITHOUT_DOMAIN(recipient->address, nexthop)))
+               && *(nexthop = var_def_filter_nexthop) == 0
+               && RCPT_WITHOUT_DOMAIN(recipient->address, nexthop))
                nexthop = var_myhostname;
            vstring_strcpy(reply.nexthop, nexthop);
            vstring_strcpy(reply.recipient, recipient->address);
index 921c07d912e34b9e17b7bd6d5245a3f7989f2ec0..5d9d78c24b4dc8e880fd73a3badf942ebe7e6bef 100644 (file)
@@ -46,8 +46,8 @@
 /* .ad
 /* .fi
 /* .IP "\fBcontent_filter (empty)\fR"
-/*     The name of a mail delivery transport that filters mail after
-/*     it is queued.
+/*     After the message is queued, send the entire message to the
+/*     specified \fItransport:destination\fR.
 /* .IP "\fBreceive_override_options (empty)\fR"
 /*     Enable or disable recipient validation, built-in content
 /*     filtering, or address mapping.
index e2ef6e540f73d350b1744063db7e936820c295bd..d6d7fe5418f99ba04fcf088d45e850fc84735ca0 100644 (file)
 /*     character.
 /* .PP
 /*     Available with Postfix version 2.7 and later:
-/* .IP "\fBlegacy_filter_nexthop (no)\fR"
-/*     When a FILTER command does not specify a destination, force the
-/*     destination to be $myhostname, instead of using the recipient domain.
+/* .IP "\fBdefault_filter_nexthop (empty)\fR"
+/*     When a content_filter or FILTER request specifies no explicit
+/*     next-hop destination, use $default_filter_nexthop instead; when
+/*     that value is empty, use the domain in the recipient address.
 /* ACTIVE QUEUE CONTROLS
 /* .ad
 /* .fi
@@ -434,7 +435,7 @@ char   *var_conc_neg_feedback;
 int     var_conc_cohort_limit;
 int     var_conc_feedback_debug;
 int     var_dest_rate_delay;
-bool    var_legacy_filter_nexthop;
+char   *var_def_filter_nexthop;
 
 static QMGR_SCAN *qmgr_scans[2];
 
@@ -671,6 +672,7 @@ int     main(int argc, char **argv)
        VAR_DEFER_XPORTS, DEF_DEFER_XPORTS, &var_defer_xports, 0, 0,
        VAR_CONC_POS_FDBACK, DEF_CONC_POS_FDBACK, &var_conc_pos_feedback, 1, 0,
        VAR_CONC_NEG_FDBACK, DEF_CONC_NEG_FDBACK, &var_conc_neg_feedback, 1, 0,
+       VAR_DEF_FILTER_NEXTHOP, DEF_DEF_FILTER_NEXTHOP, &var_def_filter_nexthop, 0, 0,
        0,
     };
     static const CONFIG_TIME_TABLE time_table[] = {
@@ -708,7 +710,6 @@ int     main(int argc, char **argv)
     static const CONFIG_BOOL_TABLE bool_table[] = {
        VAR_VERP_BOUNCE_OFF, DEF_VERP_BOUNCE_OFF, &var_verp_bounce_off,
        VAR_CONC_FDBACK_DEBUG, DEF_CONC_FDBACK_DEBUG, &var_conc_feedback_debug,
-       VAR_LEGACY_FILTER_NEXTHOP, DEF_LEGACY_FILTER_NEXTHOP, &var_legacy_filter_nexthop,
        0,
     };
 
index 25ed0b75d858ba254be5ffbe6c132edd54670d34..e54750849be4e65bf7bedb698390b2d7a5c14485 100644 (file)
@@ -1068,8 +1068,8 @@ static void qmgr_message_resolve(QMGR_MESSAGE *message)
            reply.flags = 0;
            vstring_strcpy(reply.transport, message->filter_xport);
            if (FILTER_WITHOUT_NEXTHOP(STR(reply.transport), nexthop)
-               && (var_legacy_filter_nexthop != 0
-                   || RCPT_WITHOUT_DOMAIN(recipient->address, nexthop)))
+               && *(nexthop = var_def_filter_nexthop) == 0
+               && RCPT_WITHOUT_DOMAIN(recipient->address, nexthop))
                nexthop = var_myhostname;
            vstring_strcpy(reply.nexthop, nexthop);
            vstring_strcpy(reply.recipient, recipient->address);
index 28f4f2213052440a2d20b618bdf956a0a488f0a3..4c5c6cfa8ad330ff9d507e7576ead5714fc561e2 100644 (file)
@@ -45,8 +45,8 @@
 /* .ad
 /* .fi
 /* .IP "\fBcontent_filter (empty)\fR"
-/*     The name of a mail delivery transport that filters mail after
-/*     it is queued.
+/*     After the message is queued, send the entire message to the
+/*     specified \fItransport:destination\fR.
 /* .IP "\fBreceive_override_options (empty)\fR"
 /*     Enable or disable recipient validation, built-in content
 /*     filtering, or address mapping.
index 57acbedac4f3fa579c7f67f5d77ae4f574a5427e..6ea2abcdecfac47e3060a9df1a9ce4434d4eaaa3 100644 (file)
 /*     filter is expected to inject mail back into a (Postfix or other)
 /*     MTA for further delivery. See the FILTER_README document for details.
 /* .IP "\fBcontent_filter (empty)\fR"
-/*     The name of a mail delivery transport that filters mail after
-/*     it is queued.
+/*     After the message is queued, send the entire message to the
+/*     specified \fItransport:destination\fR.
 /* BEFORE QUEUE EXTERNAL CONTENT INSPECTION CONTROLS
 /* .ad
 /* .fi
@@ -3227,9 +3227,9 @@ static int vrfy_cmd(SMTPD_STATE *state, int argc, SMTPD_TOKEN *argv)
        smtpd_chat_reply(state, "501 5.1.3 Bad recipient address syntax");
        return (-1);
     }
-    /* Not: state->addr_buf */
+    /* Use state->addr_buf, with the unquoted result from extract_addr() */
     if (SMTPD_STAND_ALONE(state) == 0
-       && (err = smtpd_check_rcpt(state, argv[1].strval)) != 0) {
+       && (err = smtpd_check_rcpt(state, STR(state->addr_buf))) != 0) {
        smtpd_chat_reply(state, "%s", err);
        return (-1);
     }
@@ -3237,8 +3237,8 @@ static int vrfy_cmd(SMTPD_STATE *state, int argc, SMTPD_TOKEN *argv)
     /*
      * XXX 2821 new feature: Section 3.5.1 requires that the VRFY response is
      * either "full name <user@domain>" or "user@domain". Postfix replies
-     * with the address that was provided by the client, whether or not it is
-     * in fully qualified domain form or not.
+     * with the string that was provided by the client, whether or not it is
+     * in fully qualified domain form and the address is in <>.
      * 
      * Reply code 250 is reserved for the case where the address is verified;
      * reply code 252 should be used when no definitive certainty exists.