]> git.ipfire.org Git - thirdparty/postfix.git/commitdiff
postfix-3.9-20230507
authorWietse Venema <wietse@porcupine.org>
Sun, 7 May 2023 05:00:00 +0000 (00:00 -0500)
committerViktor Dukhovni <postfix-users@dukhovni.org>
Tue, 9 May 2023 03:24:03 +0000 (23:24 -0400)
36 files changed:
postfix/HISTORY
postfix/README_FILES/ADDRESS_REWRITING_README
postfix/README_FILES/DATABASE_README
postfix/conf/aliases
postfix/conf/virtual
postfix/html/ADDRESS_REWRITING_README.html
postfix/html/DATABASE_README.html
postfix/html/aliases.5.html
postfix/html/cleanup.8.html
postfix/html/local.8.html
postfix/html/postconf.5.html
postfix/html/postfix-manuals.html
postfix/html/postfix.1.html
postfix/html/smtpd.8.html
postfix/html/virtual.5.html
postfix/man/man1/postfix.1
postfix/man/man5/aliases.5
postfix/man/man5/postconf.5
postfix/man/man5/virtual.5
postfix/man/man8/cleanup.8
postfix/man/man8/local.8
postfix/man/man8/smtpd.8
postfix/proto/ADDRESS_REWRITING_README.html
postfix/proto/DATABASE_README.html
postfix/proto/aliases
postfix/proto/postconf.proto
postfix/proto/stop.double-history
postfix/proto/stop.double-proto-html
postfix/proto/virtual
postfix/src/cleanup/cleanup.c
postfix/src/global/mail_version.h
postfix/src/global/wildcard_inet_addr.c
postfix/src/local/local.c
postfix/src/master/master_ent.c
postfix/src/postfix/postfix.c
postfix/src/smtpd/smtpd.c

index d6754fe92e611fcc31ce8b5586a6c1c57b8331e3..f7c730fc7548fc74d87ff7d116c8a3dfc095e7ce 100644 (file)
@@ -27133,3 +27133,20 @@ Apologies for any names omitted.
        Usability: improved error message when master.cf specifies
        a wild-card network listener (like "smtp inet ... smtpd")
        while `inet_interfaces is empty. File: master/master_ent.c.
+
+       More documentation updates for local aliasing versus virtual
+       aliasing. Files: proto/aliases, proto/virtual, postfix/postfix.c.
+
+20230506
+
+       Cleanup: simplified the master code to handle an empty
+       inet_interfaces setting. it is now closer to the original
+       code. Also documented what *_inet_addr_list() functions can
+       return an empty list. Files: master/master_ent.c,
+       global/own_inet_addr_list.c.
+
+20230507
+
+       Documentation: fine tuning of text about local aliasing
+       versus virtual aliasing. Files: proto/postconf.proto,
+       proto/aliases, proto/virtual, proto/ADDRESS_REWRITING_README.html.
index 0cd7f6ec9dbc3543b5c61b205bacceaa3a04d31a..6ffa3b6432362bb65fbff09ac4734baba568a7f1 100644 (file)
@@ -489,8 +489,9 @@ transform " Firstname.Lastname " back into UNIX login names, although it seems
 that local aliases may be a more appropriate vehicle. See the VIRTUAL_README
 document for an overview of methods to host virtual domains with Postfix.
 
-Note: virtual aliasing (virtual_alias_maps) applies to all email deliveries,
-unlike local aliasing (alias_maps) which applies only to local(8) delivery.
+Note: virtual aliasing (virtual_alias_maps) applies to all email deliveries:
+local(8), virtual, and remote. This is unlike local aliasing (alias_maps) which
+applies only to local(8) delivery.
 
 Virtual aliasing is disabled by default. To enable, edit the virtual_alias_maps
 parameter in the main.cf file and specify one or more lookup tables, separated
@@ -706,8 +707,9 @@ implement distribution lists, or to direct mail for standard aliases such as
 postmaster to real people. The table can also be used to map
 "Firstname.Lastname" addresses to login names.
 
-Note: local aliasing (alias_maps) applies only to local(8) delivery, unlike
-virtual aliasing (virtual_alias_maps) which applies to all email deliveries.
+Note: local aliasing (alias_maps) applies only to local(8) delivery. This is
+unlike virtual aliasing (virtual_alias_maps) which applies to all email
+deliveries: local(8), virtual, and remote.
 
 Alias lookups are enabled by default. The default configuration depends on the
 operating system environment, but it is typically one of the following:
index 3fd88c3e6cce187b6379c049782b0b288ed81151..edf7c588fe3689e1104bf0cb6de92207a3d5db5b 100644 (file)
@@ -28,7 +28,7 @@ Examples of lookup tables that appear often in the Postfix documentation:
         alias_maps = hash:/etc/postfix/aliases            (local aliasing)
         header_checks = regexp:/etc/postfix/header_checks (content filtering)
         transport_maps = hash:/etc/postfix/transport      (routing table)
-        virtual_alias_maps = hash:/etc/postfix/virtual    (address rewriting)
+        virtual_alias_maps = hash:/etc/postfix/virtual    (virtual aliasing)
 
 All Postfix lookup tables store information as (key, value) pairs. This
 interface may seem simplistic at first, but it turns out to be very powerful.
index 8f1a2845161064858726c8f0b0fb47c540d10e87..6849e7e1d5142173c16db226abcb3d486dca74ec 100644 (file)
@@ -45,25 +45,29 @@ decode:             root
 #        newaliases
 # 
 # DESCRIPTION
-#        The  aliases(5)  table provides a system-wide mechanism to
-#        redirect mail for local recipients. The  redirections  are
-#        processed by the Postfix local(8) delivery agent.
+#        The  optional aliases(5) table (alias_maps) redirects mail
+#        for local recipients. The redirections  are  processed  by
+#        the Postfix local(8) delivery agent.
+# 
+#        This  is  unlike  virtual(5) aliasing (virtual_alias_maps)
+#        which applies to all recipients:  local(8),  virtual,  and
+#        remote, and which is implemented by the cleanup(8) daemon.
 # 
 #        Normally, the aliases(5) table is specified as a text file
-#        that serves as input  to  the  postalias(1)  command.  The
-#        result,  an  indexed file in dbm or db format, is used for
-#        fast lookup  by  the  mail  system.  Execute  the  command
-#        newaliases  in  order  to  rebuild  the indexed file after
+#        that  serves  as  input  to  the postalias(1) command. The
+#        result, an indexed file in dbm or db format, is  used  for
+#        fast  lookup  by  the  mail  system.  Execute  the command
+#        newaliases in order to  rebuild  the  indexed  file  after
 #        changing the Postfix alias database.
 # 
-#        When the table is provided via other means  such  as  NIS,
-#        LDAP  or  SQL,  the  same lookups are done as for ordinary
+#        When  the  table  is provided via other means such as NIS,
+#        LDAP or SQL, the same lookups are  done  as  for  ordinary
 #        indexed files.
 # 
-#        Alternatively, the  table  can  be  provided  as  a  regu-
-#        lar-expression  map  where  patterns  are given as regular
-#        expressions. In this case,  the  lookups  are  done  in  a
-#        slightly  different  way as described below under "REGULAR
+#        Alternatively,  the  table  can  be  provided  as  a regu-
+#        lar-expression map where patterns  are  given  as  regular
+#        expressions.  In  this  case,  the  lookups  are done in a
+#        slightly different way as described below  under  "REGULAR
 #        EXPRESSION TABLES".
 # 
 #        Users can control delivery of their own mail by setting up
@@ -77,61 +81,61 @@ decode:             root
 # 
 #                    name: value1, value2, ...
 # 
-#        o      Empty lines and whitespace-only lines are  ignored,
-#               as  are  lines whose first non-whitespace character
+#        o      Empty  lines and whitespace-only lines are ignored,
+#               as are lines whose first  non-whitespace  character
 #               is a `#'.
 # 
-#        o      A logical line starts with non-whitespace  text.  A
-#               line  that starts with whitespace continues a logi-
+#        o      A  logical  line starts with non-whitespace text. A
+#               line that starts with whitespace continues a  logi-
 #               cal line.
 # 
-#        The name is a local address (no domain part).  Use  double
-#        quotes  when the name contains any special characters such
-#        as whitespace, `#', `:', or `@'. The  name  is  folded  to
+#        The  name is a local address (no domain part).  Use double
+#        quotes when the name contains any special characters  such
+#        as  whitespace,  `#',  `:',  or `@'. The name is folded to
 #        lowercase, in order to make database lookups case insensi-
 #        tive.
 # 
-#        In addition, when an alias  exists  for  owner-name,  this
-#        will  override the envelope sender address, so that deliv-
+#        In  addition,  when  an  alias exists for owner-name, this
+#        will override the envelope sender address, so that  deliv-
 #        ery diagnostics are directed to owner-name, instead of the
-#        originator    of    the    message   (for   details,   see
-#        owner_request_special,       expand_owner_alias        and
-#        reset_owner_alias).   This  is  typically  used  to direct
-#        delivery errors to the maintainer of a mailing  list,  who
+#        originator   of   the   message    (for    details,    see
+#        owner_request_special,        expand_owner_alias       and
+#        reset_owner_alias).  This  is  typically  used  to  direct
+#        delivery  errors  to the maintainer of a mailing list, who
 #        is in a better position to deal with mailing list delivery
 #        problems than the originator of the undelivered mail.
 # 
 #        The value contains one or more of the following:
 # 
 #        address
-#               Mail is forwarded to address, which  is  compatible
+#               Mail  is  forwarded to address, which is compatible
 #               with the RFC 822 standard.
 # 
 #        /file/name
-#               Mail  is appended to /file/name. For details on how
-#               a file is written see the sections  "EXTERNAL  FILE
-#               DELIVERY"  and  "DELIVERY  RIGHTS"  in the local(8)
-#               documentation.  Delivery is not limited to  regular
-#               files.   For  example, to dispose of unwanted mail,
+#               Mail is appended to /file/name. For details on  how
+#               a  file  is written see the sections "EXTERNAL FILE
+#               DELIVERY" and "DELIVERY  RIGHTS"  in  the  local(8)
+#               documentation.   Delivery is not limited to regular
+#               files.  For example, to dispose of  unwanted  mail,
 #               deflect it to /dev/null.
 # 
 #        |command
-#               Mail is piped into command. Commands  that  contain
-#               special  characters,  such as whitespace, should be
-#               enclosed between double quotes. For details on  how
-#               a  command is executed see "EXTERNAL COMMAND DELIV-
+#               Mail  is  piped into command. Commands that contain
+#               special characters, such as whitespace,  should  be
+#               enclosed  between double quotes. For details on how
+#               a command is executed see "EXTERNAL COMMAND  DELIV-
 #               ERY" and "DELIVERY RIGHTS" in the local(8) documen-
 #               tation.
 # 
 #               When the command fails, a limited amount of command
-#               output is mailed back  to  the  sender.   The  file
-#               /usr/include/sysexits.h  defines  the expected exit
-#               status codes. For example, use "|exit 67" to  simu-
-#               late  a  "user  unknown"  error,  and  "|exit 0" to
+#               output  is  mailed  back  to  the sender.  The file
+#               /usr/include/sysexits.h defines the  expected  exit
+#               status  codes. For example, use "|exit 67" to simu-
+#               late a "user  unknown"  error,  and  "|exit  0"  to
 #               implement an expensive black hole.
 # 
 #        :include:/file/name
-#               Mail is sent to  the  destinations  listed  in  the
+#               Mail  is  sent  to  the  destinations listed in the
 #               named file.  Lines in :include: files have the same
 #               syntax as the right-hand side of alias entries.
 # 
@@ -143,12 +147,12 @@ decode:           root
 # 
 # ADDRESS EXTENSION
 #        When alias database search fails, and the recipient local-
-#        part  contains  the  optional  recipient  delimiter (e.g.,
-#        user+foo), the  search  is  repeated  for  the  unextended
+#        part contains  the  optional  recipient  delimiter  (e.g.,
+#        user+foo),  the  search  is  repeated  for  the unextended
 #        address (e.g., user).
 # 
-#        The   propagate_unmatched_extensions   parameter  controls
-#        whether an unmatched address extension  (+foo)  is  propa-
+#        The  propagate_unmatched_extensions   parameter   controls
+#        whether  an  unmatched  address extension (+foo) is propa-
 #        gated to the result of table lookup.
 # 
 # CASE FOLDING
@@ -156,83 +160,85 @@ decode:           root
 #        to lowercase before database lookup.
 # 
 # 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,
-#        see  regexp_table(5) or pcre_table(5). NOTE: these formats
+#        a  description  of regular expression lookup table syntax,
+#        see regexp_table(5) or pcre_table(5). NOTE: these  formats
 #        do not use ":" at the end of a pattern.
 # 
-#        Each regular expression is applied to  the  entire  search
-#        string.  Thus,  a  search string user+foo is not broken up
+#        Each  regular  expression  is applied to the entire search
+#        string. Thus, a search string user+foo is  not  broken  up
 #        into user and foo.
 # 
-#        Regular expressions are applied in the order as  specified
-#        in  the  table,  until  a regular expression is found that
+#        Regular  expressions are applied in the order as specified
+#        in the table, until a regular  expression  is  found  that
 #        matches the search string.
 # 
-#        Lookup results are the same as with indexed file  lookups.
-#        For  security  reasons there is no support for $1, $2 etc.
+#        Lookup  results are the same as with indexed file lookups.
+#        For security reasons there is no support for $1,  $2  etc.
 #        substring interpolation.
 # 
 # SECURITY
-#        The local(8) delivery agent disallows  regular  expression
-#        substitution  of $1 etc. in alias_maps, because that would
+#        The  local(8)  delivery agent disallows regular expression
+#        substitution of $1 etc. in alias_maps, because that  would
 #        open a security hole.
 # 
-#        The local(8) delivery agent will silently ignore  requests
-#        to  use  the proxymap(8) server within alias_maps. Instead
-#        it will open the table directly.  Before  Postfix  version
-#        2.2,  the  local(8)  delivery  agent will terminate with a
+#        The  local(8) delivery agent will silently ignore requests
+#        to use the proxymap(8) server within  alias_maps.  Instead
+#        it  will  open the table directly.  Before Postfix version
+#        2.2, the local(8) delivery agent  will  terminate  with  a
 #        fatal error.
 # 
 # CONFIGURATION PARAMETERS
-#        The following main.cf parameters are especially  relevant.
-#        The  text  below  provides  only  a parameter summary. See
+#        The  following main.cf parameters are especially relevant.
+#        The text below provides  only  a  parameter  summary.  See
 #        postconf(5) for more details including examples.
 # 
 #        alias_database (see 'postconf -d' output)
-#               The alias databases for local(8) delivery that  are
+#               The  alias databases for local(8) delivery that are
 #               updated with "newaliases" or with "sendmail -bi".
 # 
 #        alias_maps (see 'postconf -d' output)
-#               The  alias  databases  that  are  used for local(8)
-#               delivery.
+#               Optional lookup tables with aliases that apply only
+#               to  local(8)  delivery,  unlike  virtual_alias_maps
+#               that apply to all email deliveries: local(8),  vir-
+#               tual, and remote.
 # 
 #        allow_mail_to_commands (alias, forward)
-#               Restrict local(8) mail delivery  to  external  com-
+#               Restrict  local(8)  mail  delivery to external com-
 #               mands.
 # 
 #        allow_mail_to_files (alias, forward)
-#               Restrict  local(8) mail delivery to external files.
+#               Restrict local(8) mail delivery to external  files.
 # 
 #        expand_owner_alias (no)
 #               When delivering to an alias "aliasname" that has an
 #               "owner-aliasname" companion alias, set the envelope
-#               sender   address   to   the   expansion   of    the
+#               sender    address   to   the   expansion   of   the
 #               "owner-aliasname" alias.
 # 
 #        propagate_unmatched_extensions (canonical, virtual)
-#               What  address  lookup tables copy an address exten-
+#               What address lookup tables copy an  address  exten-
 #               sion from the lookup key to the lookup result.
 # 
 #        owner_request_special (yes)
 #               Enable special treatment for owner-listname entries
 #               in the aliases(5) file, and don't split owner-list-
-#               name and listname-request address  localparts  when
+#               name  and  listname-request address localparts when
 #               the recipient_delimiter is set to "-".
 # 
 #        recipient_delimiter (empty)
-#               The  set  of  characters that can separate an email
-#               address localpart, user name, or  a  .forward  file
+#               The set of characters that can  separate  an  email
+#               address  localpart,  user  name, or a .forward file
 #               name from its extension.
 # 
 #        Available in Postfix version 2.3 and later:
 # 
 #        frozen_delivered_to (yes)
-#               Update  the  local(8)  delivery agent's idea of the
-#               Delivered-To:    address    (see     prepend_deliv-
-#               ered_header)  only once, at the start of a delivery
-#               attempt; do not update  the  Delivered-To:  address
+#               Update the local(8) delivery agent's  idea  of  the
+#               Delivered-To:     address    (see    prepend_deliv-
+#               ered_header) only once, at the start of a  delivery
+#               attempt;  do  not  update the Delivered-To: address
 #               while expanding aliases or .forward files.
 # 
 # STANDARDS
@@ -245,12 +251,12 @@ decode:           root
 #        postconf(5), configuration parameters
 # 
 # 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
 # 
 # LICENSE
-#        The Secure Mailer license must be  distributed  with  this
+#        The  Secure  Mailer  license must be distributed with this
 #        software.
 # 
 # AUTHOR(S)
index e99eee4881c1bddfc2ca01a9b2644bc5d903b9a5..2a764c4d0359f352db08d6ed2a91f015fff0f8bd 100644 (file)
 #        postmap -q - /etc/postfix/virtual <inputfile
 # 
 # DESCRIPTION
-#        The  optional  virtual(5)  alias  table rewrites recipient
-#        addresses for all local, all virtual, and all remote  mail
-#        destinations.   This  is unlike the aliases(5) table which
-#        is used only for local(8) delivery. This feature is imple-
-#        mented  in  the  Postfix  cleanup(8) daemon before mail is
-#        queued.
-# 
-#        Virtual aliasing is recursive; to terminate recursion  for
+#        The  optional  virtual(5) alias table (virtual_alias_maps)
+#        rewrites all recipients: local(8),  virtual,  and  remote.
+#        This feature is implemented in the Postfix cleanup(8) dae-
+#        mon before mail is queued.
+# 
+#        This is unlike the aliases(5) table (alias_maps) which  is
+#        used only for local(8) delivery.
+# 
+#        Virtual  aliasing is recursive; to terminate recursion for
 #        a specific address, alias that address to itself.
 # 
 #        The main applications of virtual aliasing are:
 # 
-#        o      To  redirect  mail  for  one address to one or more
+#        o      To redirect mail for one address  to  one  or  more
 #               addresses.
 # 
-#        o      To  implement  virtual  alias  domains  where   all
-#               addresses   are   aliased  to  addresses  in  other
+#        o      To   implement  virtual  alias  domains  where  all
+#               addresses  are  aliased  to  addresses   in   other
 #               domains.
 # 
-#               Virtual alias domains are not to be  confused  with
-#               the  virtual  mailbox  domains that are implemented
-#               with the Postfix virtual(8)  mail  delivery  agent.
-#               With   virtual   mailbox  domains,  each  recipient
+#               Virtual  alias  domains are not to be confused with
+#               the virtual mailbox domains  that  are  implemented
+#               with  the  Postfix  virtual(8) mail delivery agent.
+#               With  virtual  mailbox  domains,   each   recipient
 #               address can have its own mailbox.
 # 
-#        Virtual aliasing is applied  only  to  recipient  envelope
-#        addresses,  and  does  not  affect  message  headers.  Use
-#        canonical(5)  mapping  to  rewrite  header  and   envelope
+#        Virtual  aliasing  is  applied  only to recipient envelope
+#        addresses, and  does  not  affect  message  headers.   Use
+#        canonical(5)   mapping  to  rewrite  header  and  envelope
 #        addresses in general.
 # 
-#        Normally,  the  virtual(5)  alias  table is specified as a
-#        text file that serves as input to the postmap(1)  command.
-#        The  result,  an indexed file in dbm or db format, is used
+#        Normally, the virtual(5) alias table  is  specified  as  a
+#        text  file that serves as input to the postmap(1) command.
+#        The result, an indexed file in dbm or db format,  is  used
 #        for fast searching by the mail system. Execute the command
-#        "postmap  /etc/postfix/virtual" to rebuild an indexed file
+#        "postmap /etc/postfix/virtual" to rebuild an indexed  file
 #        after changing the corresponding text file.
 # 
-#        When the table is provided via other means  such  as  NIS,
-#        LDAP  or  SQL,  the  same lookups are done as for ordinary
+#        When  the  table  is provided via other means such as NIS,
+#        LDAP or SQL, the same lookups are  done  as  for  ordinary
 #        indexed files.
 # 
-#        Alternatively, the  table  can  be  provided  as  a  regu-
-#        lar-expression  map  where  patterns  are given as regular
-#        expressions, or lookups can be  directed  to  a  TCP-based
-#        server.  In those case, the lookups are done in a slightly
+#        Alternatively,  the  table  can  be  provided  as  a regu-
+#        lar-expression map where patterns  are  given  as  regular
+#        expressions,  or  lookups  can  be directed to a TCP-based
+#        server. In those case, the lookups are done in a  slightly
 #        different way as described below under "REGULAR EXPRESSION
 #        TABLES" or "TCP-BASED TABLES".
 # 
 # CASE FOLDING
-#        The  search  string is folded to lowercase before database
-#        lookup. As of Postfix 2.3, the search string is  not  case
-#        folded  with database types such as regexp: or pcre: whose
+#        The search string is folded to lowercase  before  database
+#        lookup.  As  of Postfix 2.3, the search string is not case
+#        folded with database types such as regexp: or pcre:  whose
 #        lookup fields can match both upper and lower case.
 # 
 # TABLE FORMAT
 #        The input format for the postmap(1) command is as follows:
 # 
 #        pattern address, address, ...
-#               When  pattern matches a mail address, replace it by
+#               When pattern matches a mail address, replace it  by
 #               the corresponding address.
 # 
 #        blank lines and comments
-#               Empty lines and whitespace-only lines are  ignored,
-#               as  are  lines whose first non-whitespace character
+#               Empty  lines and whitespace-only lines are ignored,
+#               as are lines whose first  non-whitespace  character
 #               is a `#'.
 # 
 #        multi-line text
-#               A logical line starts with non-whitespace  text.  A
-#               line  that starts with whitespace continues a logi-
+#               A  logical  line starts with non-whitespace text. A
+#               line that starts with whitespace continues a  logi-
 #               cal line.
 # 
 # TABLE SEARCH ORDER
 #        With lookups from indexed files such as DB or DBM, or from
-#        networked   tables   such   as  NIS,  LDAP  or  SQL,  each
+#        networked  tables  such  as  NIS,  LDAP   or   SQL,   each
 #        user@domain query produces a sequence of query patterns as
 #        described below.
 # 
-#        Each  query pattern is sent to each specified lookup table
-#        before trying the next query pattern,  until  a  match  is
+#        Each query pattern is sent to each specified lookup  table
+#        before  trying  the  next  query pattern, until a match is
 #        found.
 # 
 #        user@domain address, address, ...
-#               Redirect  mail  for  user@domain  to address.  This
+#               Redirect mail for  user@domain  to  address.   This
 #               form has the highest precedence.
 # 
 #        user address, address, ...
 #               Redirect mail for user@site to address when site is
-#               equal  to $myorigin, when site is listed in $mydes-
-#               tination, or when it is listed in  $inet_interfaces
+#               equal to $myorigin, when site is listed in  $mydes-
+#               tination,  or when it is listed in $inet_interfaces
 #               or $proxy_interfaces.
 # 
-#               This  functionality overlaps with the functionality
+#               This functionality overlaps with the  functionality
 #               of the local aliases(5) database. The difference is
 #               that virtual(5) mapping can be applied to non-local
 #               addresses.
 #               Redirect mail for other users in domain to address.
 #               This form has the lowest precedence.
 # 
-#               Note:  @domain  is a wild-card. With this form, the
-#               Postfix SMTP server accepts mail for any  recipient
-#               in  domain,  regardless  of  whether that recipient
-#               exists.  This may turn  your  mail  system  into  a
-#               backscatter  source: Postfix first accepts mail for
-#               non-existent recipients and then  tries  to  return
-#               that  mail  as  "undeliverable" to the often forged
+#               Note: @domain is a wild-card. With this  form,  the
+#               Postfix  SMTP server accepts mail for any recipient
+#               in domain, regardless  of  whether  that  recipient
+#               exists.   This  may  turn  your  mail system into a
+#               backscatter source: Postfix first accepts mail  for
+#               non-existent  recipients  and  then tries to return
+#               that mail as "undeliverable" to  the  often  forged
 #               sender address.
 # 
-#               To avoid backscatter  with  mail  for  a  wild-card
+#               To  avoid  backscatter  with  mail  for a wild-card
 #               domain, replace the wild-card mapping with explicit
-#               1:1 mappings, or add a  reject_unverified_recipient
+#               1:1  mappings, or add a reject_unverified_recipient
 #               restriction for that domain:
 # 
 #                   smtpd_recipient_restrictions =
 #                           inline:{example.com=reject_unverified_recipient}
 #                   unverified_recipient_reject_code = 550
 # 
-#               In  the above example, Postfix may contact a remote
-#               server if the recipient  is  aliased  to  a  remote
+#               In the above example, Postfix may contact a  remote
+#               server  if  the  recipient  is  aliased to a remote
 #               address.
 # 
 # RESULT ADDRESS REWRITING
 #        The lookup result is subject to address rewriting:
 # 
-#        o      When  the  result  has  the  form @otherdomain, the
-#               result becomes the same user in otherdomain.   This
+#        o      When the result  has  the  form  @otherdomain,  the
+#               result  becomes the same user in otherdomain.  This
 #               works only for the first address in a multi-address
 #               lookup result.
 # 
-#        o      When "append_at_myorigin=yes", append  "@$myorigin"
+#        o      When  "append_at_myorigin=yes", append "@$myorigin"
 #               to addresses without "@domain".
 # 
 #        o      When "append_dot_mydomain=yes", append ".$mydomain"
 # 
 # ADDRESS EXTENSION
 #        When a mail address localpart contains the optional recip-
-#        ient  delimiter  (e.g., user+foo@domain), the lookup order
+#        ient delimiter (e.g., user+foo@domain), the  lookup  order
 #        becomes: user+foo@domain, user@domain, user+foo, user, and
 #        @domain.
 # 
-#        The   propagate_unmatched_extensions   parameter  controls
-#        whether an unmatched address extension  (+foo)  is  propa-
+#        The  propagate_unmatched_extensions   parameter   controls
+#        whether  an  unmatched  address extension (+foo) is propa-
 #        gated to the result of a table lookup.
 # 
 # VIRTUAL ALIAS DOMAINS
-#        Besides  virtual aliases, the virtual alias table can also
+#        Besides virtual aliases, the virtual alias table can  also
 #        be used to implement virtual alias domains. With a virtual
-#        alias  domain,  all  recipient  addresses  are  aliased to
+#        alias domain,  all  recipient  addresses  are  aliased  to
 #        addresses in other domains.
 # 
 #        Virtual alias domains are not to be confused with the vir-
 #        tual mailbox domains that are implemented with the Postfix
 #        virtual(8)  mail  delivery  agent.  With  virtual  mailbox
-#        domains,  each recipient address can have its own mailbox.
+#        domains, each recipient address can have its own  mailbox.
 # 
-#        With a virtual alias domain, the virtual  domain  has  its
-#        own  user  name  space. Local (i.e. non-virtual) usernames
-#        are not visible in a virtual alias domain. In  particular,
-#        local  aliases(5)  and local mailing lists are not visible
+#        With  a  virtual  alias domain, the virtual domain has its
+#        own user name space. Local  (i.e.  non-virtual)  usernames
+#        are  not visible in a virtual alias domain. In particular,
+#        local aliases(5) and local mailing lists are  not  visible
 #        as localname@virtual-alias.domain.
 # 
 #        Support for a virtual alias domain looks like:
 #            virtual_alias_maps = hash:/etc/postfix/virtual
 # 
 #        Note: some systems use dbm databases instead of hash.  See
-#        the  output  from  "postconf  -m"  for  available database
+#        the output  from  "postconf  -m"  for  available  database
 #        types.
 # 
 #        /etc/postfix/virtual:
 #            user1@virtual-alias.domain      address1
 #            user2@virtual-alias.domain      address2, address3
 # 
-#        The virtual-alias.domain anything entry is required for  a
+#        The  virtual-alias.domain anything entry is required for a
 #        virtual alias domain. Without this entry, mail is rejected
-#        with "relay access denied", or bounces  with  "mail  loops
+#        with  "relay  access  denied", or bounces with "mail loops
 #        back to myself".
 # 
-#        Do  not  specify virtual alias domain names in the main.cf
+#        Do not specify virtual alias domain names in  the  main.cf
 #        mydestination or relay_domains configuration parameters.
 # 
-#        With a virtual  alias  domain,  the  Postfix  SMTP  server
-#        accepts   mail  for  known-user@virtual-alias.domain,  and
-#        rejects  mail  for  unknown-user@virtual-alias.domain   as
+#        With  a  virtual  alias  domain,  the  Postfix SMTP server
+#        accepts  mail  for  known-user@virtual-alias.domain,   and
+#        rejects   mail  for  unknown-user@virtual-alias.domain  as
 #        undeliverable.
 # 
-#        Instead  of  specifying  the virtual alias domain name via
-#        the virtual_alias_maps table, you may also specify it  via
+#        Instead of specifying the virtual alias  domain  name  via
+#        the  virtual_alias_maps table, you may also specify it via
 #        the main.cf virtual_alias_domains configuration parameter.
-#        This latter parameter uses the same syntax as the  main.cf
+#        This  latter parameter uses the same syntax as the main.cf
 #        mydestination configuration parameter.
 # 
 # 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 address being looked up. Thus, user@domain mail
-#        addresses are not broken up into their  user  and  @domain
+#        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.
 # 
-#        Results are the same as with indexed  file  lookups,  with
-#        the  additional feature that parenthesized substrings from
+#        Results  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  available  in Postfix 2.5 and
+#        ble(5).  This feature is  available  in  Postfix  2.5  and
 #        later.
 # 
 #        Each lookup operation uses the entire address once.  Thus,
-#        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.
 # 
 #        Results are the same as with indexed file lookups.
 # 
 # BUGS
-#        The  table format does not understand quoting conventions.
+#        The table format does not understand quoting  conventions.
 # 
 # CONFIGURATION PARAMETERS
-#        The following main.cf parameters are  especially  relevant
-#        to  this  topic.  See  the Postfix main.cf file for syntax
-#        details and for default values. Use the  "postfix  reload"
+#        The  following  main.cf parameters are especially relevant
+#        to this topic. See the Postfix  main.cf  file  for  syntax
+#        details  and  for default values. Use the "postfix reload"
 #        command after a configuration change.
 # 
 #        virtual_alias_maps ($virtual_maps)
-#               Optional  lookup  tables  that  alias specific mail
-#               addresses or  domains  to  other  local  or  remote
-#               addresses.
+#               Optional lookup tables with aliases that  apply  to
+#               all   email   deliveries:  local(8),  virtual,  and
+#               remote,  unlike  alias_maps  that  apply  only   to
+#               local(8) delivery.
 # 
 #        virtual_alias_domains ($virtual_alias_maps)
 #               Postfix  is the final destination for the specified
 #        Other parameters of interest:
 # 
 #        inet_interfaces (all)
-#               The network interface addresses that this mail sys-
-#               tem receives mail on.
+#               The  local  network  interface  addresses that this
+#               mail system receives mail on.
 # 
 #        mydestination  ($myhostname,  localhost.$mydomain,  local-
 #        host)
 #               the recipient_delimiter is set to "-".
 # 
 #        proxy_interfaces (empty)
-#               The network interface addresses that this mail sys-
-#               tem  receives  mail on by way of a proxy or network
-#               address translation unit.
+#               The remote network interface  addresses  that  this
+#               mail  system  receives mail on by way of a proxy or
+#               network address translation unit.
 # 
 # SEE ALSO
 #        cleanup(8), canonicalize and enqueue mail
index 49c955521849cf4f3bf7ca52f2c9e14d09ecd614..6377f3c60ec736e36ab07ca84f4a37c210cd036b 100644 (file)
@@ -772,8 +772,8 @@ for an overview of methods to host virtual domains with Postfix.
 </p>
 
 <p> Note: <a href="ADDRESS_REWRITING_README.html#virtual">virtual aliasing</a> (<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>) applies to all email
-deliveries, unlike <a href="ADDRESS_REWRITING_README.html#aliases">local aliasing</a> (<a href="postconf.5.html#alias_maps">alias_maps</a>) which applies only
-to <a href="local.8.html">local(8)</a> delivery.  </p>
+deliveries: <a href="local.8.html">local(8)</a>, virtual, and remote. This is unlike local
+aliasing (<a href="postconf.5.html#alias_maps">alias_maps</a>) which applies only to <a href="local.8.html">local(8)</a> delivery.  </p>
 
 <p> Virtual aliasing is disabled by default. To enable, edit the
 <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> parameter in the <a href="postconf.5.html">main.cf</a> file and
@@ -1061,8 +1061,9 @@ The table can also be used to map "Firstname.Lastname" addresses
 to login names. </p>
 
 <p> Note: <a href="ADDRESS_REWRITING_README.html#aliases">local aliasing</a> (<a href="postconf.5.html#alias_maps">alias_maps</a>) applies only to <a href="local.8.html">local(8)</a>
-delivery, unlike <a href="ADDRESS_REWRITING_README.html#virtual">virtual aliasing</a> (<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>) which applies
-to all email deliveries. </p>
+delivery. This is  unlike <a href="ADDRESS_REWRITING_README.html#virtual">virtual aliasing</a> (<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>)
+which applies to all email deliveries: <a href="local.8.html">local(8)</a>, virtual, and remote.
+</p>
 
 <p> Alias lookups are enabled by default. The default configuration
 depends on the operating system environment, but it is typically
index b6757e2d85920c2ca9e99259d5815e365e64e6cd..1f7b183c382fe382b1479ca3ae442c09fb7411f4 100644 (file)
@@ -59,7 +59,7 @@ documentation: </p>
     <a href="postconf.5.html#alias_maps">alias_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/aliases            (<a href="ADDRESS_REWRITING_README.html#aliases">local aliasing</a>)
     <a href="postconf.5.html#header_checks">header_checks</a> = <a href="regexp_table.5.html">regexp</a>:/etc/postfix/header_checks (content filtering)
     <a href="postconf.5.html#transport_maps">transport_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/transport      (routing table)
-    <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/virtual    (address rewriting)
+    <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/virtual    (<a href="ADDRESS_REWRITING_README.html#virtual">virtual aliasing</a>)
 </pre>
 </blockquote>
 
index 27cfe6904c0767168745ba1f82bfaffd20e7a042..5df15e06948ff696fd74f44631f7b9fc9559c434 100644 (file)
@@ -14,9 +14,13 @@ ALIASES(5)                                                          ALIASES(5)
        <b>newaliases</b>
 
 <b>DESCRIPTION</b>
-       The  <a href="aliases.5.html"><b>aliases</b>(5)</a> table provides a system-wide mechanism to redirect mail
-       for local recipients. The redirections are  processed  by  the  Postfix
-       <a href="local.8.html"><b>local</b>(8)</a> delivery agent.
+       The  optional  <a href="aliases.5.html"><b>aliases</b>(5)</a>  table  (<a href="postconf.5.html#alias_maps">alias_maps</a>) redirects mail for local
+       recipients. The redirections are  processed  by  the  Postfix  <a href="local.8.html"><b>local</b>(8)</a>
+       delivery agent.
+
+       This  is  unlike <a href="virtual.5.html"><b>virtual</b>(5)</a> aliasing (<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>) which applies
+       to all recipients: <a href="local.8.html">local(8)</a>, virtual, and remote, and which  is  imple-
+       mented by the <a href="cleanup.8.html"><b>cleanup</b>(8)</a> daemon.
 
        Normally,  the <a href="aliases.5.html"><b>aliases</b>(5)</a> table is specified as a text file that serves
        as input to the <a href="postalias.1.html"><b>postalias</b>(1)</a> command. The result, an  indexed  file  in
@@ -144,7 +148,9 @@ ALIASES(5)                                                          ALIASES(5)
               "<b>newaliases</b>" or with "<b>sendmail -bi</b>".
 
        <b><a href="postconf.5.html#alias_maps">alias_maps</a> (see 'postconf -d' output)</b>
-              The alias databases that are used for <a href="local.8.html"><b>local</b>(8)</a> delivery.
+              Optional lookup tables with aliases that apply only to  <a href="local.8.html"><b>local</b>(8)</a>
+              delivery,  unlike  <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>  that  apply  to all email
+              deliveries: <a href="local.8.html"><b>local</b>(8)</a>, virtual, and remote.
 
        <b><a href="postconf.5.html#allow_mail_to_commands">allow_mail_to_commands</a> (alias, forward)</b>
               Restrict <a href="local.8.html"><b>local</b>(8)</a> mail delivery to external commands.
index f2450bc0548d94bac22d9813d43888397be504c1..05f32cd4e313691cb9d4e323cebc2e3b82a81ef8 100644 (file)
@@ -344,8 +344,8 @@ CLEANUP(8)                                                          CLEANUP(8)
 
        <b><a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> ($<a href="postconf.5.html#virtual_maps">virtual_maps</a>)</b>
               Optional  lookup  tables  with  aliases  that apply to all email
-              deliveries, unlike <a href="postconf.5.html#alias_maps">alias_maps</a> that apply only to <a href="local.8.html"><b>local</b>(8)</a> deliv-
-              ery.
+              deliveries: <a href="local.8.html"><b>local</b>(8)</a>, virtual,  and  remote,  unlike  <a href="postconf.5.html#alias_maps">alias_maps</a>
+              that apply only to <a href="local.8.html"><b>local</b>(8)</a> delivery.
 
        Available in Postfix version 2.2 and later:
 
index 056376fd6fcd9f009b96fe77b63959ceacb0b58f..4c3d4a9f9f24cb5b48b01c30f94e40cde27dab28 100644 (file)
@@ -384,7 +384,7 @@ LOCAL(8)                                                              LOCAL(8)
        <b><a href="postconf.5.html#alias_maps">alias_maps</a> (see 'postconf -d' output)</b>
               Optional  lookup tables with aliases that apply only to <a href="local.8.html"><b>local</b>(8)</a>
               delivery, unlike <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>  that  apply  to  all  email
-              deliveries.
+              deliveries: <a href="local.8.html"><b>local</b>(8)</a>, virtual, and remote.
 
        <b><a href="postconf.5.html#forward_path">forward_path</a> (see 'postconf -d' output)</b>
               The  <a href="local.8.html"><b>local</b>(8)</a>  delivery agent search list for finding a .forward
index 7360f40771e7db76d9e20e5aa9e60252162b50b3..af20b7679102057e028ab28bd2ea164f1b46073a 100644 (file)
@@ -613,7 +613,8 @@ Examples:
 
 <p>
 Optional lookup tables with aliases that apply only to <a href="local.8.html">local(8)</a>
-delivery, unlike <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> that apply to all email deliveries.
+delivery, unlike <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> that apply to all email deliveries:
+<a href="local.8.html">local(8)</a>, virtual, and remote.
 The table format and lookups are documented in <a href="aliases.5.html">aliases(5)</a>. For an
 overview of Postfix address manipulations see the <a href="ADDRESS_REWRITING_README.html">ADDRESS_REWRITING_README</a>
 document. </p>
@@ -21619,8 +21620,9 @@ This feature is available in Postfix 2.1 and later.
 (default: $<a href="postconf.5.html#virtual_maps">virtual_maps</a>)</b></DT><DD>
 
 <p>
-Optional lookup tables with aliases that apply to all email deliveries,
-unlike <a href="postconf.5.html#alias_maps">alias_maps</a> that apply only to <a href="local.8.html">local(8)</a> delivery.
+Optional lookup tables with aliases that apply to all email deliveries:
+<a href="local.8.html">local(8)</a>, virtual, and remote, unlike <a href="postconf.5.html#alias_maps">alias_maps</a> that apply only
+to <a href="local.8.html">local(8)</a> delivery.
 The table format and lookups
 are documented in <a href="virtual.5.html">virtual(5)</a>. For an overview of Postfix address
 manipulations see the <a href="ADDRESS_REWRITING_README.html">ADDRESS_REWRITING_README</a> document.
index e88e88ec4e1d42540a898405d2ff7bacd618f786..936ecae8f427215e8804590523bb12502ff5e561 100644 (file)
@@ -135,7 +135,7 @@ the following convention:  </p>
 
 <li> <a href="access.5.html">access(5)</a>, Postfix SMTP access control table 
 
-<li> <a href="aliases.5.html">aliases(5)</a>, Postfix alias database 
+<li> <a href="aliases.5.html">aliases(5)</a>, Postfix <a href="ADDRESS_REWRITING_README.html#aliases">local aliasing</a> 
 
 <li> <a href="canonical.5.html">canonical(5)</a>, Postfix input address rewriting 
 
index 53ecfcea8ce26a51eda06b5681c210973726f8fb..90751ab55740ded32404343c7d62e40a3370474f 100644 (file)
@@ -346,7 +346,7 @@ POSTFIX(1)                                                          POSTFIX(1)
 
        Table-driven mechanisms:
        <a href="access.5.html">access(5)</a>, Postfix SMTP access control table
-       <a href="aliases.5.html">aliases(5)</a>, Postfix alias database
+       <a href="aliases.5.html">aliases(5)</a>, Postfix <a href="ADDRESS_REWRITING_README.html#aliases">local aliasing</a>
        <a href="canonical.5.html">canonical(5)</a>, Postfix input address rewriting
        <a href="generic.5.html">generic(5)</a>, Postfix output address rewriting
        <a href="header_checks.5.html">header_checks(5)</a>, <a href="header_checks.5.html">body_checks(5)</a>, Postfix content inspection
index 7128d21a370c9fd864479c0a7f660f1e6d58b5f5..87fa7e115f6d0f639209ded233dc5aac3813d5ad 100644 (file)
@@ -832,8 +832,8 @@ SMTPD(8)                                                              SMTPD(8)
 
        <b><a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> ($<a href="postconf.5.html#virtual_maps">virtual_maps</a>)</b>
               Optional  lookup  tables  with  aliases  that apply to all email
-              deliveries, unlike <a href="postconf.5.html#alias_maps">alias_maps</a> that apply only to <a href="local.8.html"><b>local</b>(8)</a> deliv-
-              ery.
+              deliveries: <a href="local.8.html"><b>local</b>(8)</a>, virtual,  and  remote,  unlike  <a href="postconf.5.html#alias_maps">alias_maps</a>
+              that apply only to <a href="local.8.html"><b>local</b>(8)</a> delivery.
 
        <b><a href="postconf.5.html#unknown_virtual_alias_reject_code">unknown_virtual_alias_reject_code</a> (550)</b>
               The  Postfix  SMTP  server  reply  code when a recipient address
index 5ef93279ace38055258643ac188f555f7d318f36..35a82f91c7646b9ecbcbad1bb5c026126d61ada9 100644 (file)
@@ -18,101 +18,102 @@ VIRTUAL(5)                                                          VIRTUAL(5)
        <b>postmap -q - /etc/postfix/virtual</b> &lt;<i>inputfile</i>
 
 <b>DESCRIPTION</b>
-       The  optional  <a href="virtual.5.html"><b>virtual</b>(5)</a>  alias table rewrites recipient addresses for
-       all local, all virtual, and all  remote  mail  destinations.   This  is
-       unlike  the  <a href="aliases.5.html"><b>aliases</b>(5)</a> table which is used only for <a href="local.8.html"><b>local</b>(8)</a> delivery.
-       This feature is implemented in the  Postfix  <a href="cleanup.8.html"><b>cleanup</b>(8)</a>  daemon  before
-       mail is queued.
+       The  optional  <a href="virtual.5.html"><b>virtual</b>(5)</a> alias table (<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>) rewrites all
+       recipients: <a href="local.8.html">local(8)</a>, virtual, and remote.  This feature is implemented
+       in the Postfix <a href="cleanup.8.html"><b>cleanup</b>(8)</a> daemon before mail is queued.
 
-       Virtual  aliasing  is  recursive; to terminate recursion for a specific
+       This is unlike the <a href="aliases.5.html"><b>aliases</b>(5)</a> table (<a href="postconf.5.html#alias_maps">alias_maps</a>) which is used only for
+       <a href="local.8.html"><b>local</b>(8)</a> delivery.
+
+       Virtual aliasing is recursive; to terminate recursion  for  a  specific
        address, alias that address to itself.
 
        The main applications of <a href="ADDRESS_REWRITING_README.html#virtual">virtual aliasing</a> are:
 
        <b>o</b>      To redirect mail for one address to one or more addresses.
 
-       <b>o</b>      To implement virtual  alias  domains  where  all  addresses  are
+       <b>o</b>      To  implement  virtual  alias  domains  where  all addresses are
               aliased to addresses in other domains.
 
-              Virtual  alias  domains  are not to be confused with the virtual
+              Virtual alias domains are not to be confused  with  the  virtual
               mailbox domains that are implemented with the Postfix <a href="virtual.8.html"><b>virtual</b>(8)</a>
-              mail  delivery agent. With <a href="ADDRESS_CLASS_README.html#virtual_mailbox_class">virtual mailbox domains</a>, each recipi-
+              mail delivery agent. With <a href="ADDRESS_CLASS_README.html#virtual_mailbox_class">virtual mailbox domains</a>, each  recipi-
               ent address can have its own mailbox.
 
-       Virtual aliasing is applied only to recipient envelope  addresses,  and
-       does  not  affect message headers.  Use <a href="canonical.5.html"><b>canonical</b>(5)</a> mapping to rewrite
+       Virtual  aliasing  is applied only to recipient envelope addresses, and
+       does not affect message headers.  Use <a href="canonical.5.html"><b>canonical</b>(5)</a> mapping  to  rewrite
        header and envelope addresses in general.
 
-       Normally, the <a href="virtual.5.html"><b>virtual</b>(5)</a> alias table is specified as a text  file  that
+       Normally,  the  <a href="virtual.5.html"><b>virtual</b>(5)</a> alias table is specified as a text file that
        serves as input to the <a href="postmap.1.html"><b>postmap</b>(1)</a> command.  The result, an indexed file
-       in <b>dbm</b> or <b>db</b> format, is used for fast searching  by  the  mail  system.
+       in  <b>dbm</b>  or  <b>db</b>  format, is used for fast searching by the mail system.
        Execute  the  command  "<b>postmap  /etc/postfix/virtual</b>"  to  rebuild  an
        indexed file after changing the corresponding text file.
 
-       When the table is provided via other means such as NIS,  LDAP  or  SQL,
+       When  the  table  is provided via other means such as NIS, LDAP or SQL,
        the same lookups are done as for ordinary indexed files.
 
-       Alternatively,  the  table  can be provided as a regular-expression map
-       where patterns are given as regular  expressions,  or  lookups  can  be
-       directed  to a TCP-based server. In those case, the lookups are done in
-       a slightly different way as described below under  "REGULAR  EXPRESSION
+       Alternatively, the table can be provided as  a  regular-expression  map
+       where  patterns  are  given  as  regular expressions, or lookups can be
+       directed to a TCP-based server. In those case, the lookups are done  in
+       a  slightly  different way as described below under "REGULAR EXPRESSION
        TABLES" or "TCP-BASED TABLES".
 
 <b>CASE FOLDING</b>
-       The  search string is folded to lowercase before database lookup. As of
-       Postfix 2.3, the search string is not case folded with  database  types
-       such  as  <a href="regexp_table.5.html">regexp</a>: or <a href="pcre_table.5.html">pcre</a>: whose lookup fields can match both upper and
+       The search string is folded to lowercase before database lookup. As  of
+       Postfix  2.3,  the search string is not case folded with database types
+       such as <a href="regexp_table.5.html">regexp</a>: or <a href="pcre_table.5.html">pcre</a>: whose lookup fields can match both  upper  and
        lower case.
 
 <b>TABLE FORMAT</b>
        The input format for the <a href="postmap.1.html"><b>postmap</b>(1)</a> command is as follows:
 
        <i>pattern address, address, ...</i>
-              When <i>pattern</i> matches a mail address, replace it  by  the  corre-
+              When  <i>pattern</i>  matches  a mail address, replace it by the corre-
               sponding <i>address</i>.
 
        blank lines and comments
-              Empty  lines and whitespace-only lines are ignored, as are lines
+              Empty lines and whitespace-only lines are ignored, as are  lines
               whose first non-whitespace character is a `#'.
 
        multi-line text
-              A logical line starts with  non-whitespace  text.  A  line  that
+              A  logical  line  starts  with  non-whitespace text. A line that
               starts with whitespace continues a logical line.
 
 <b>TABLE SEARCH ORDER</b>
-       With  lookups  from  indexed files such as DB or DBM, or from networked
-       tables such as NIS, LDAP or SQL,  each  <i>user</i>@<i>domain</i>  query  produces  a
+       With lookups from indexed files such as DB or DBM,  or  from  networked
+       tables  such  as  NIS,  LDAP  or SQL, each <i>user</i>@<i>domain</i> query produces a
        sequence of query patterns as described below.
 
        Each query pattern is sent to each specified lookup table before trying
        the next query pattern, until a match is found.
 
        <i>user</i>@<i>domain address, address, ...</i>
-              Redirect mail for <i>user</i>@<i>domain</i> to <i>address</i>.   This  form  has  the
+              Redirect  mail  for  <i>user</i>@<i>domain</i>  to <i>address</i>.  This form has the
               highest precedence.
 
        <i>user address, address, ...</i>
-              Redirect  mail  for  <i>user</i>@<i>site</i>  to <i>address</i> when <i>site</i> is equal to
-              $<b><a href="postconf.5.html#myorigin">myorigin</a></b>, when <i>site</i> is listed in $<b><a href="postconf.5.html#mydestination">mydestination</a></b>, or when it  is
+              Redirect mail for <i>user</i>@<i>site</i> to <i>address</i> when  <i>site</i>  is  equal  to
+              $<b><a href="postconf.5.html#myorigin">myorigin</a></b>,  when <i>site</i> is listed in $<b><a href="postconf.5.html#mydestination">mydestination</a></b>, or when it is
               listed in $<b><a href="postconf.5.html#inet_interfaces">inet_interfaces</a></b> or $<b><a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a></b>.
 
-              This  functionality overlaps with the functionality of the local
-              <i>aliases</i>(5) database. The difference is that  <a href="virtual.5.html"><b>virtual</b>(5)</a>  mapping
+              This functionality overlaps with the functionality of the  local
+              <i>aliases</i>(5)  database.  The difference is that <a href="virtual.5.html"><b>virtual</b>(5)</a> mapping
               can be applied to non-local addresses.
 
        @<i>domain address, address, ...</i>
-              Redirect  mail  for other users in <i>domain</i> to <i>address</i>.  This form
+              Redirect mail for other users in <i>domain</i> to <i>address</i>.   This  form
               has the lowest precedence.
 
-              Note: @<i>domain</i> is a wild-card. With this form, the  Postfix  SMTP
-              server  accepts  mail for any recipient in <i>domain</i>, regardless of
-              whether that recipient exists.  This may turn your  mail  system
-              into  a  backscatter  source:  Postfix  first  accepts  mail for
-              non-existent recipients and then tries to return  that  mail  as
+              Note:  @<i>domain</i>  is a wild-card. With this form, the Postfix SMTP
+              server accepts mail for any recipient in <i>domain</i>,  regardless  of
+              whether  that  recipient exists.  This may turn your mail system
+              into a  backscatter  source:  Postfix  first  accepts  mail  for
+              non-existent  recipients  and  then tries to return that mail as
               "undeliverable" to the often forged sender address.
 
-              To  avoid  backscatter with mail for a wild-card domain, replace
-              the wild-card mapping with  explicit  1:1  mappings,  or  add  a
+              To avoid backscatter with mail for a wild-card  domain,  replace
+              the  wild-card  mapping  with  explicit  1:1  mappings, or add a
               <a href="postconf.5.html#reject_unverified_recipient">reject_unverified_recipient</a> restriction for that domain:
 
                   <a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> =
@@ -128,11 +129,11 @@ VIRTUAL(5)                                                          VIRTUAL(5)
 <b>RESULT ADDRESS REWRITING</b>
        The lookup result is subject to address rewriting:
 
-       <b>o</b>      When the result has the form @<i>otherdomain</i>,  the  result  becomes
-              the  same  <i>user</i>  in  <i>otherdomain</i>.  This works only for the first
+       <b>o</b>      When  the  result  has the form @<i>otherdomain</i>, the result becomes
+              the same <i>user</i> in <i>otherdomain</i>.  This works  only  for  the  first
               address in a multi-address lookup result.
 
-       <b>o</b>      When "<b><a href="postconf.5.html#append_at_myorigin">append_at_myorigin</a>=yes</b>", append "<b>@$<a href="postconf.5.html#myorigin">myorigin</a></b>" to  addresses
+       <b>o</b>      When  "<b><a href="postconf.5.html#append_at_myorigin">append_at_myorigin</a>=yes</b>", append "<b>@$<a href="postconf.5.html#myorigin">myorigin</a></b>" to addresses
               without "@domain".
 
        <b>o</b>      When "<b><a href="postconf.5.html#append_dot_mydomain">append_dot_mydomain</a>=yes</b>", append "<b>.$<a href="postconf.5.html#mydomain">mydomain</a></b>" to addresses
@@ -140,26 +141,26 @@ VIRTUAL(5)                                                          VIRTUAL(5)
 
 <b>ADDRESS EXTENSION</b>
        When a mail address localpart contains the optional recipient delimiter
-       (e.g.,  <i>user+foo</i>@<i>domain</i>),  the  lookup  order becomes: <i>user+foo</i>@<i>domain</i>,
+       (e.g., <i>user+foo</i>@<i>domain</i>), the  lookup  order  becomes:  <i>user+foo</i>@<i>domain</i>,
        <i>user</i>@<i>domain</i>, <i>user+foo</i>, <i>user</i>, and @<i>domain</i>.
 
-       The  <b><a href="postconf.5.html#propagate_unmatched_extensions">propagate_unmatched_extensions</a></b>  parameter  controls   whether   an
+       The   <b><a href="postconf.5.html#propagate_unmatched_extensions">propagate_unmatched_extensions</a></b>   parameter  controls  whether  an
        unmatched address extension (<i>+foo</i>) is propagated to the result of a ta-
        ble lookup.
 
 <b>VIRTUAL ALIAS DOMAINS</b>
-       Besides virtual aliases, the virtual alias table can also  be  used  to
-       implement  virtual  alias  domains.  With  a  <a href="ADDRESS_CLASS_README.html#virtual_alias_class">virtual alias domain</a>, all
+       Besides  virtual  aliases,  the virtual alias table can also be used to
+       implement <a href="ADDRESS_CLASS_README.html#virtual_alias_class">virtual alias domains</a>.  With  a  virtual  alias  domain,  all
        recipient addresses are aliased to addresses in other domains.
 
-       Virtual alias domains are not to be confused with the  virtual  mailbox
-       domains  that are implemented with the Postfix <a href="virtual.8.html"><b>virtual</b>(8)</a> mail delivery
-       agent. With <a href="ADDRESS_CLASS_README.html#virtual_mailbox_class">virtual mailbox domains</a>, each recipient  address  can  have
+       Virtual  alias  domains are not to be confused with the virtual mailbox
+       domains that are implemented with the Postfix <a href="virtual.8.html"><b>virtual</b>(8)</a> mail  delivery
+       agent.  With  virtual  mailbox domains, each recipient address can have
        its own mailbox.
 
-       With  a  <a href="ADDRESS_CLASS_README.html#virtual_alias_class">virtual alias domain</a>, the virtual domain has its own user name
-       space. Local (i.e. non-virtual) usernames are not visible in a  virtual
-       alias  domain.  In particular, local <a href="aliases.5.html"><b>aliases</b>(5)</a> and local mailing lists
+       With a <a href="ADDRESS_CLASS_README.html#virtual_alias_class">virtual alias domain</a>, the virtual domain has its own  user  name
+       space.  Local (i.e. non-virtual) usernames are not visible in a virtual
+       alias domain. In particular, local <a href="aliases.5.html"><b>aliases</b>(5)</a> and local  mailing  lists
        are not visible as <i>localname@virtual-alias.domain</i>.
 
        Support for a <a href="ADDRESS_CLASS_README.html#virtual_alias_class">virtual alias domain</a> looks like:
@@ -167,7 +168,7 @@ VIRTUAL(5)                                                          VIRTUAL(5)
        /etc/postfix/<a href="postconf.5.html">main.cf</a>:
            <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/virtual
 
-       Note: some systems use <b>dbm</b> databases instead of <b>hash</b>.  See  the  output
+       Note:  some  systems use <b>dbm</b> databases instead of <b>hash</b>.  See the output
        from "<b>postconf -m</b>" for available database types.
 
        /etc/postfix/virtual:
@@ -177,46 +178,46 @@ VIRTUAL(5)                                                          VIRTUAL(5)
            <i>user2@virtual-alias.domain      address2, address3</i>
 
        The <i>virtual-alias.domain anything</i> entry is required for a virtual alias
-       domain. <b>Without  this  entry,  mail  is  rejected  with  "relay  access</b>
+       domain.  <b>Without  this  entry,  mail  is  rejected  with  "relay access</b>
        <b>denied", or bounces with "mail loops back to myself".</b>
 
-       Do  not specify <a href="ADDRESS_CLASS_README.html#virtual_alias_class">virtual alias domain</a> names in the <a href="postconf.5.html"><b>main.cf</a> <a href="postconf.5.html#mydestination">mydestination</a></b>
+       Do not specify <a href="ADDRESS_CLASS_README.html#virtual_alias_class">virtual alias domain</a> names in the <a href="postconf.5.html"><b>main.cf</a>  <a href="postconf.5.html#mydestination">mydestination</a></b>
        or <b><a href="postconf.5.html#relay_domains">relay_domains</a></b> configuration parameters.
 
-       With a <a href="ADDRESS_CLASS_README.html#virtual_alias_class">virtual alias domain</a>, the Postfix SMTP server accepts  mail  for
+       With  a  <a href="ADDRESS_CLASS_README.html#virtual_alias_class">virtual alias domain</a>, the Postfix SMTP server accepts mail for
        <i>known-user@virtual-alias.domain</i>, and rejects mail for <i>unknown-user</i>@<i>vir-</i>
        <i>tual-alias.domain</i> as undeliverable.
 
-       Instead of specifying the  virtual  alias  domain  name  via  the  <b><a href="postconf.5.html#virtual_alias_maps">vir</a>-</b>
-       <b><a href="postconf.5.html#virtual_alias_maps">tual_alias_maps</a></b>  table,  you  may  also specify it via the <a href="postconf.5.html"><b>main.cf</a> <a href="postconf.5.html#virtual_alias_domains">vir-</b>
+       Instead  of  specifying  the  virtual  alias  domain  name via the <b><a href="postconf.5.html#virtual_alias_maps">vir</a>-</b>
+       <b><a href="postconf.5.html#virtual_alias_maps">tual_alias_maps</a></b> table, you may also specify it  via  the  <a href="postconf.5.html"><b>main.cf</a>  <a href="postconf.5.html#virtual_alias_domains">vir-</b>
        <b>tual_alias_domains</a></b> configuration parameter.  This latter parameter uses
        the same syntax as the <a href="postconf.5.html"><b>main.cf</a> <a href="postconf.5.html#mydestination">mydestination</a></b> configuration parameter.
 
 <b>REGULAR EXPRESSION TABLES</b>
-       This  section  describes how the table lookups change when the table is
-       given in the form of regular expressions. For a description of  regular
+       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, 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 the entire
-       address being looked up. Thus, <i>user@domain</i> mail addresses are not  bro-
-       ken  up  into their <i>user</i> and <i>@domain</i> constituent parts, nor is <i>user+foo</i>
+       Each pattern is a regular expression that  is  applied  to  the  entire
+       address  being looked up. Thus, <i>user@domain</i> mail addresses are not bro-
+       ken 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  table,  until  a
+       Patterns  are  applied  in the order as specified in the table, until a
        pattern is found that matches the search string.
 
-       Results  are the same as with indexed file lookups, with the additional
-       feature that parenthesized substrings from the pattern can be  interpo-
+       Results are the same as with indexed file lookups, with the  additional
+       feature  that parenthesized substrings from the pattern can be interpo-
        lated as <b>$1</b>, <b>$2</b> and so on.
 
 <b>TCP-BASED TABLES</b>
-       This  section  describes  how the table lookups change when lookups are
-       directed  to  a  TCP-based  server.  For  a  description  of  the   TCP
-       client/server  lookup  protocol,  see  <a href="tcp_table.5.html"><b>tcp_table</b>(5)</a>.   This  feature is
+       This section describes how the table lookups change  when  lookups  are
+       directed   to  a  TCP-based  server.  For  a  description  of  the  TCP
+       client/server lookup  protocol,  see  <a href="tcp_table.5.html"><b>tcp_table</b>(5)</a>.   This  feature  is
        available in Postfix 2.5 and later.
 
-       Each lookup operation uses the entire address once.  Thus,  <i>user@domain</i>
-       mail  addresses  are  not  broken  up  into their <i>user</i> and <i>@domain</i> con-
+       Each  lookup operation uses the entire address once.  Thus, <i>user@domain</i>
+       mail addresses are not broken up  into  their  <i>user</i>  and  <i>@domain</i>  con-
        stituent parts, nor is <i>user+foo</i> broken up into <i>user</i> and <i>foo</i>.
 
        Results are the same as with indexed file lookups.
@@ -230,8 +231,9 @@ VIRTUAL(5)                                                          VIRTUAL(5)
        Use the "<b>postfix reload</b>" command after a configuration change.
 
        <b><a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> ($<a href="postconf.5.html#virtual_maps">virtual_maps</a>)</b>
-              Optional lookup tables that alias  specific  mail  addresses  or
-              domains to other local or remote addresses.
+              Optional  lookup  tables  with  aliases  that apply to all email
+              deliveries: <a href="local.8.html"><b>local</b>(8)</a>, virtual,  and  remote,  unlike  <a href="postconf.5.html#alias_maps">alias_maps</a>
+              that apply only to <a href="local.8.html"><b>local</b>(8)</a> delivery.
 
        <b><a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a> ($<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>)</b>
               Postfix  is the final destination for the specified list of vir-
@@ -245,8 +247,8 @@ VIRTUAL(5)                                                          VIRTUAL(5)
        Other parameters of interest:
 
        <b><a href="postconf.5.html#inet_interfaces">inet_interfaces</a> (all)</b>
-              The network interface addresses that this mail  system  receives
-              mail on.
+              The local network interface  addresses  that  this  mail  system
+              receives mail on.
 
        <b><a href="postconf.5.html#mydestination">mydestination</a> ($<a href="postconf.5.html#myhostname">myhostname</a>, localhost.$<a href="postconf.5.html#mydomain">mydomain</a>, localhost)</b>
               The  list of domains that are delivered via the $<a href="postconf.5.html#local_transport">local_transport</a>
@@ -263,8 +265,9 @@ VIRTUAL(5)                                                          VIRTUAL(5)
               set to "-".
 
        <b><a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a> (empty)</b>
-              The network interface addresses that this mail  system  receives
-              mail on by way of a proxy or network address translation unit.
+              The remote network interface addresses  that  this  mail  system
+              receives  mail  on by way of a proxy or network address transla-
+              tion unit.
 
 <b>SEE ALSO</b>
        <a href="cleanup.8.html">cleanup(8)</a>, canonicalize and enqueue mail
index c3ad0d8e911a04decea123b0ecc264d09ea6c3a1..fc690bed74da8426491d1ece12e54b9eab795c25 100644 (file)
@@ -317,7 +317,7 @@ postfix\-wrapper(5), Postfix multi\-instance API
 
 Table\-driven mechanisms:
 access(5), Postfix SMTP access control table
-aliases(5), Postfix alias database
+aliases(5), Postfix local aliasing
 canonical(5), Postfix input address rewriting
 generic(5), Postfix output address rewriting
 header_checks(5), body_checks(5), Postfix content inspection
index a5da9069e4b20cf67c4818f9301be164b446f0de..46c47420c02b3f139a0523509ba06a6d1bdd54ac 100644 (file)
@@ -13,9 +13,13 @@ Postfix local alias database format
 .SH DESCRIPTION
 .ad
 .fi
-The \fBaliases\fR(5) table provides a system\-wide mechanism to
-redirect mail for local recipients. The redirections are
-processed by the Postfix \fBlocal\fR(8) delivery agent.
+The optional \fBaliases\fR(5) table (alias_maps) redirects
+mail for local recipients. The redirections are processed
+by the Postfix \fBlocal\fR(8) delivery agent.
+
+This is unlike \fBvirtual\fR(5) aliasing (virtual_alias_maps)
+which applies to all recipients: local(8), virtual, and remote,
+and which is implemented by the \fBcleanup\fR(8) daemon.
 
 Normally, the \fBaliases\fR(5) table is specified as a text file
 that serves as input to the \fBpostalias\fR(1) command. The
@@ -165,7 +169,9 @@ The text below provides only a parameter summary. See
 The alias databases for \fBlocal\fR(8) delivery that are updated with
 "\fBnewaliases\fR" or with "\fBsendmail \-bi\fR".
 .IP "\fBalias_maps (see 'postconf -d' output)\fR"
-The alias databases that are used for \fBlocal\fR(8) delivery.
+Optional lookup tables with aliases that apply only to \fBlocal\fR(8)
+delivery, unlike virtual_alias_maps that apply to all email deliveries:
+\fBlocal\fR(8), virtual, and remote.
 .IP "\fBallow_mail_to_commands (alias, forward)\fR"
 Restrict \fBlocal\fR(8) mail delivery to external commands.
 .IP "\fBallow_mail_to_files (alias, forward)\fR"
index 15a3f97f39303170471c901a01c150047d27fe28..282f9a1d8325c5466594bb6c60250d108a0409cc 100644 (file)
@@ -359,7 +359,8 @@ alias_database = hash:/etc/mail/aliases
 .ft R
 .SH alias_maps (default: see "postconf \-d" output)
 Optional lookup tables with aliases that apply only to \fBlocal\fR(8)
-delivery, unlike virtual_alias_maps that apply to all email deliveries.
+delivery, unlike virtual_alias_maps that apply to all email deliveries:
+\fBlocal\fR(8), virtual, and remote.
 The table format and lookups are documented in \fBaliases\fR(5). For an
 overview of Postfix address manipulations see the ADDRESS_REWRITING_README
 document.
@@ -15228,8 +15229,9 @@ from each original recipient.
 .PP
 This feature is available in Postfix 2.1 and later.
 .SH virtual_alias_maps (default: $virtual_maps)
-Optional lookup tables with aliases that apply to all email deliveries,
-unlike alias_maps that apply only to \fBlocal\fR(8) delivery.
+Optional lookup tables with aliases that apply to all email deliveries:
+\fBlocal\fR(8), virtual, and remote, unlike alias_maps that apply only
+to \fBlocal\fR(8) delivery.
 The table format and lookups
 are documented in \fBvirtual\fR(5). For an overview of Postfix address
 manipulations see the ADDRESS_REWRITING_README document.
index 5a66c7f537b8fe40cb5b342b73e194ce3877a006..d7c08f00e4701c8a8e07194e30276fcc388028db 100644 (file)
@@ -16,13 +16,14 @@ Postfix virtual alias table format
 .SH DESCRIPTION
 .ad
 .fi
-The optional \fBvirtual\fR(5) alias table rewrites recipient
-addresses for all local, all virtual, and all remote mail
-destinations.
-This is unlike the \fBaliases\fR(5) table which is used
-only for \fBlocal\fR(8) delivery. This feature is implemented
+The optional \fBvirtual\fR(5) alias table (virtual_alias_maps)
+rewrites all recipients: local(8), virtual, and remote.
+This feature is implemented
 in the Postfix \fBcleanup\fR(8) daemon before mail is queued.
 
+This is unlike the \fBaliases\fR(5) table (alias_maps) which
+is used only for \fBlocal\fR(8) delivery.
+
 Virtual aliasing is recursive; to terminate recursion for
 a specific address, alias that address to itself.
 
@@ -270,8 +271,9 @@ this topic. See the Postfix \fBmain.cf\fR file for syntax details
 and for default values. Use the "\fBpostfix reload\fR" command after
 a configuration change.
 .IP "\fBvirtual_alias_maps ($virtual_maps)\fR"
-Optional lookup tables that alias specific mail addresses or domains
-to other local or remote addresses.
+Optional lookup tables with aliases that apply to all email deliveries:
+\fBlocal\fR(8), virtual, and remote, unlike alias_maps that apply only
+to \fBlocal\fR(8) delivery.
 .IP "\fBvirtual_alias_domains ($virtual_alias_maps)\fR"
 Postfix is the final destination for the specified list of virtual
 alias domains, that is, domains for which all addresses are aliased
@@ -282,7 +284,7 @@ key to the lookup result.
 .PP
 Other parameters of interest:
 .IP "\fBinet_interfaces (all)\fR"
-The network interface addresses that this mail system receives
+The local network interface addresses that this mail system receives
 mail on.
 .IP "\fBmydestination ($myhostname, localhost.$mydomain, localhost)\fR"
 The list of domains that are delivered via the $local_transport
@@ -296,7 +298,7 @@ Enable special treatment for owner\-\fIlistname\fR entries in the
 \fIlistname\fR\-request address localparts when the recipient_delimiter
 is set to "\-".
 .IP "\fBproxy_interfaces (empty)\fR"
-The network interface addresses that this mail system receives mail
+The remote network interface addresses that this mail system receives mail
 on by way of a proxy or network address translation unit.
 .SH "SEE ALSO"
 .na
index a60adafb638d951283e9162b9554f8e93600e2f3..253c142b05b8b8d9e8ff172d53a7d46d5d527ff0 100644 (file)
@@ -321,8 +321,9 @@ remote domains.
 .PP
 Available in Postfix version 2.0 and later:
 .IP "\fBvirtual_alias_maps ($virtual_maps)\fR"
-Optional lookup tables with aliases that apply to all email deliveries,
-unlike alias_maps that apply only to \fBlocal\fR(8) delivery.
+Optional lookup tables with aliases that apply to all email deliveries:
+\fBlocal\fR(8), virtual, and remote, unlike alias_maps that apply only
+to \fBlocal\fR(8) delivery.
 .PP
 Available in Postfix version 2.2 and later:
 .IP "\fBcanonical_classes (envelope_sender, envelope_recipient, header_sender, header_recipient)\fR"
index 63396deff207eec994d44d5fe33d57ec5f2b447a..91bceea3e299022d822abf778bc41dab0b8ed0fa 100644 (file)
@@ -450,7 +450,8 @@ home_mailbox, mail_spool_directory, fallback_transport_maps,
 fallback_transport, and luser_relay.
 .IP "\fBalias_maps (see 'postconf -d' output)\fR"
 Optional lookup tables with aliases that apply only to \fBlocal\fR(8)
-delivery, unlike virtual_alias_maps that apply to all email deliveries.
+delivery, unlike virtual_alias_maps that apply to all email deliveries:
+\fBlocal\fR(8), virtual, and remote.
 .IP "\fBforward_path (see 'postconf -d' output)\fR"
 The \fBlocal\fR(8) delivery agent search list for finding a .forward
 file with user\-specified delivery methods.
index e8cd9980c2675773f4c0bd6e60e6c9682d3def8f..e7c23911422eb05296733ce3e662831365bb66b5 100644 (file)
@@ -735,8 +735,9 @@ Postfix is the final destination for the specified list of virtual
 alias domains, that is, domains for which all addresses are aliased
 to addresses in other local or remote domains.
 .IP "\fBvirtual_alias_maps ($virtual_maps)\fR"
-Optional lookup tables with aliases that apply to all email deliveries,
-unlike alias_maps that apply only to \fBlocal\fR(8) delivery.
+Optional lookup tables with aliases that apply to all email deliveries:
+\fBlocal\fR(8), virtual, and remote, unlike alias_maps that apply only
+to \fBlocal\fR(8) delivery.
 .IP "\fBunknown_virtual_alias_reject_code (550)\fR"
 The Postfix SMTP server reply code when a recipient address matches
 $virtual_alias_domains, and $virtual_alias_maps specifies a list
index 2ab6659ea6fc78d7cc330d147278b1c1e847b2ce..eaeb24973815eaf541f636e68056e77db41a3163 100644 (file)
@@ -772,8 +772,8 @@ for an overview of methods to host virtual domains with Postfix.
 </p>
 
 <p> Note: virtual aliasing (virtual_alias_maps) applies to all email
-deliveries, unlike local aliasing (alias_maps) which applies only
-to local(8) delivery.  </p>
+deliveries: local(8), virtual, and remote. This is unlike local
+aliasing (alias_maps) which applies only to local(8) delivery.  </p>
 
 <p> Virtual aliasing is disabled by default. To enable, edit the
 virtual_alias_maps parameter in the main.cf file and
@@ -1061,8 +1061,9 @@ The table can also be used to map "Firstname.Lastname" addresses
 to login names. </p>
 
 <p> Note: local aliasing (alias_maps) applies only to local(8)
-delivery, unlike virtual aliasing (virtual_alias_maps) which applies
-to all email deliveries. </p>
+delivery. This is  unlike virtual aliasing (virtual_alias_maps)
+which applies to all email deliveries: local(8), virtual, and remote.
+</p>
 
 <p> Alias lookups are enabled by default. The default configuration
 depends on the operating system environment, but it is typically
index 2302cc354d1485e980b487022597ffaaec45d622..cb25f35bb5e1de3eb2ab992ed8bbc4e7fba61e62 100644 (file)
@@ -59,7 +59,7 @@ documentation: </p>
     alias_maps = hash:/etc/postfix/aliases            (local aliasing)
     header_checks = regexp:/etc/postfix/header_checks (content filtering)
     transport_maps = hash:/etc/postfix/transport      (routing table)
-    virtual_alias_maps = hash:/etc/postfix/virtual    (address rewriting)
+    virtual_alias_maps = hash:/etc/postfix/virtual    (virtual aliasing)
 </pre>
 </blockquote>
 
index d2d3f19b54de0bbb20432ec27d90fe584aa6162c..1f6a0ed29e4979fd0991f5a4c882e605c5df40dd 100644 (file)
@@ -7,9 +7,13 @@
 # .fi
 #      \fBnewaliases\fR
 # DESCRIPTION
-#      The \fBaliases\fR(5) table provides a system-wide mechanism to
-#      redirect mail for local recipients. The redirections are
-#      processed by the Postfix \fBlocal\fR(8) delivery agent.
+#      The optional \fBaliases\fR(5) table (alias_maps) redirects
+#      mail for local recipients. The redirections are processed
+#      by the Postfix \fBlocal\fR(8) delivery agent.
+#
+#      This is unlike \fBvirtual\fR(5) aliasing (virtual_alias_maps)
+#      which applies to all recipients: local(8), virtual, and remote,
+#      and which is implemented by the \fBcleanup\fR(8) daemon.
 #
 #      Normally, the \fBaliases\fR(5) table is specified as a text file
 #      that serves as input to the \fBpostalias\fR(1) command. The
 #      The alias databases for \fBlocal\fR(8) delivery that are updated with
 #      "\fBnewaliases\fR" or with "\fBsendmail -bi\fR".
 # .IP "\fBalias_maps (see 'postconf -d' output)\fR"
-#      The alias databases that are used for \fBlocal\fR(8) delivery.
+#      Optional lookup tables with aliases that apply only to \fBlocal\fR(8)
+#      delivery, unlike virtual_alias_maps that apply to all email deliveries:
+#      \fBlocal\fR(8), virtual, and remote.
 # .IP "\fBallow_mail_to_commands (alias, forward)\fR"
 #      Restrict \fBlocal\fR(8) mail delivery to external commands.
 # .IP "\fBallow_mail_to_files (alias, forward)\fR"
index 21578242c8fb89fe3f290a1d0edb8ffca9bfb884..9d03bcb6588e279316d5204dcec0329eb3c2e57d 100644 (file)
@@ -490,7 +490,8 @@ alias_database = hash:/etc/mail/aliases
 
 <p>
 Optional lookup tables with aliases that apply only to local(8)
-delivery, unlike virtual_alias_maps that apply to all email deliveries.
+delivery, unlike virtual_alias_maps that apply to all email deliveries:
+local(8), virtual, and remote.
 The table format and lookups are documented in aliases(5). For an
 overview of Postfix address manipulations see the ADDRESS_REWRITING_README
 document. </p>
@@ -7284,8 +7285,9 @@ This feature is available in Postfix 2.1 and later.
 %PARAM virtual_alias_maps $virtual_maps
 
 <p>
-Optional lookup tables with aliases that apply to all email deliveries,
-unlike alias_maps that apply only to local(8) delivery.
+Optional lookup tables with aliases that apply to all email deliveries:
+local(8), virtual, and remote, unlike alias_maps that apply only
+to local(8) delivery.
 The table format and lookups
 are documented in virtual(5). For an overview of Postfix address
 manipulations see the ADDRESS_REWRITING_README document.
index 5c49302043a0f0addf6fab9375cf19c9adc96fba..0327ec379fd6e29e49a354ffc863c6d27baaad89 100644 (file)
@@ -45,3 +45,6 @@ proto  proto ADDRESS_REWRITING_README html
  cleanup cleanup c local local c smtpd smtpd c 
  cleanup cleanup c local local c smtpd smtpd c 
  cleanup cleanup c local local c smtpd smtpd c 
+ postfix postfix c 
+ aliasing Files proto aliases proto virtual postfix postfix c 
+proto  proto aliases proto virtual proto ADDRESS_REWRITING_README html 
index c216f9598a80f1f1a7387ce19ab78952b8b024ee..f89992e139dfa4001c1d0536c279116c556af2d9 100644 (file)
@@ -246,3 +246,4 @@ dt  dt b name value b Postfix ge 3 0 dt
  parametername stress something something Other
  p Note on OpenBSD systems specify dev dev arandom when dev dev urandom
  user3 example net smtp smtp relay example net submission 
+ virtual_alias_maps hash etc postfix virtual virtual aliasing 
index 6e328817c229027deec88de9983a771726f51620..670f570e0212e37d3b4ac424040b5f82c8548043 100644 (file)
 #
 #      \fBpostmap -q - /etc/postfix/virtual <\fIinputfile\fR
 # DESCRIPTION
-#      The optional \fBvirtual\fR(5) alias table rewrites recipient
-#      addresses for all local, all virtual, and all remote mail
-#      destinations.
-#      This is unlike the \fBaliases\fR(5) table which is used
-#      only for \fBlocal\fR(8) delivery. This feature is implemented
+#      The optional \fBvirtual\fR(5) alias table (virtual_alias_maps)
+#      rewrites all recipients: local(8), virtual, and remote.
+#      This feature is implemented
 #      in the Postfix \fBcleanup\fR(8) daemon before mail is queued.
 #
+#      This is unlike the \fBaliases\fR(5) table (alias_maps) which
+#      is used only for \fBlocal\fR(8) delivery.
+#
 #      Virtual aliasing is recursive; to terminate recursion for
 #      a specific address, alias that address to itself.
 #
 #      and for default values. Use the "\fBpostfix reload\fR" command after
 #      a configuration change.
 # .IP "\fBvirtual_alias_maps ($virtual_maps)\fR"
-#      Optional lookup tables that alias specific mail addresses or domains
-#      to other local or remote addresses.
+#      Optional lookup tables with aliases that apply to all email deliveries:
+#      \fBlocal\fR(8), virtual, and remote, unlike alias_maps that apply only
+#      to \fBlocal\fR(8) delivery.
 # .IP "\fBvirtual_alias_domains ($virtual_alias_maps)\fR"
 #      Postfix is the final destination for the specified list of virtual
 #      alias domains, that is, domains for which all addresses are aliased
 # .PP
 #      Other parameters of interest:
 # .IP "\fBinet_interfaces (all)\fR"
-#      The network interface addresses that this mail system receives
+#      The local network interface addresses that this mail system receives
 #      mail on.
 # .IP "\fBmydestination ($myhostname, localhost.$mydomain, localhost)\fR"
 #      The list of domains that are delivered via the $local_transport
 #      \fIlistname\fR-request address localparts when the recipient_delimiter
 #      is set to "-".
 # .IP "\fBproxy_interfaces (empty)\fR"
-#      The network interface addresses that this mail system receives mail
+#      The remote network interface addresses that this mail system receives mail
 #      on by way of a proxy or network address translation unit.
 # SEE ALSO
 #      cleanup(8), canonicalize and enqueue mail
index 9229778d3093261ff865d8af3a86db3d7b3d91c7..6346c4fad9b7e95265bdff1b44e8e687fb50e0e4 100644 (file)
 /* .PP
 /*     Available in Postfix version 2.0 and later:
 /* .IP "\fBvirtual_alias_maps ($virtual_maps)\fR"
-/*     Optional lookup tables with aliases that apply to all email deliveries,
-/*     unlike alias_maps that apply only to \fBlocal\fR(8) delivery.
+/*     Optional lookup tables with aliases that apply to all email deliveries:
+/*     \fBlocal\fR(8), virtual, and remote, unlike alias_maps that apply only
+/*     to \fBlocal\fR(8) delivery.
 /* .PP
 /*     Available in Postfix version 2.2 and later:
 /* .IP "\fBcanonical_classes (envelope_sender, envelope_recipient, header_sender, header_recipient)\fR"
index 02078e7bf0d56ac62242ce161b5e339415a936b4..1fd879e897d885b491cf40258570c1f698e38d68 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      "20230505"
+#define MAIL_RELEASE_DATE      "20230507"
 #define MAIL_VERSION_NUMBER    "3.9"
 
 #ifdef SNAPSHOT
index 97f6c4676883f923bb3122167cb11d85c29f7c35..0a3c37ad828d47ab6c62bb28dc7fd714d1ef8af0 100644 (file)
@@ -11,7 +11,7 @@
 /*     wildcard_inet_addr() determines all wild-card addresses
 /*     for all supported address families.
 /* DIAGNOSTICS
-/*     Fatal errors: out of memory.
+/*     Fatal errors: out of memory; no wildcard addresses.
 /* SEE ALSO
 /*     inet_addr_list(3) address list management
 /* LICENSE
index 7d5f4fda98757b14d3c4e45382d83750467bf85e..ca03e8086550781e3f18ec4bfffaabefa9192d4b 100644 (file)
 /*     fallback_transport, and luser_relay.
 /* .IP "\fBalias_maps (see 'postconf -d' output)\fR"
 /*     Optional lookup tables with aliases that apply only to \fBlocal\fR(8)
-/*     delivery, unlike virtual_alias_maps that apply to all email deliveries.
+/*     delivery, unlike virtual_alias_maps that apply to all email deliveries:
+/*     \fBlocal\fR(8), virtual, and remote.
 /* .IP "\fBforward_path (see 'postconf -d' output)\fR"
 /*     The \fBlocal\fR(8) delivery agent search list for finding a .forward
 /*     file with user-specified delivery methods.
index 1fb99cf10cffcc8bef5c9eea3e60e8de4fcec28a..98f84040d35ce71e5a6749bef6e3e47368579b6c 100644 (file)
@@ -367,17 +367,14 @@ MASTER_SERV *get_master_ent()
            inet_addr_list_uniq(MASTER_INET_ADDRLIST(serv));
            serv->listen_fd_count = MASTER_INET_ADDRLIST(serv)->used;
        } else {
-           if (strcasecmp(saved_interfaces, INET_INTERFACES_ALL) == 0) {
-               MASTER_INET_ADDRLIST(serv) = wildcard_inet_addr_list();
-               /* Errors, and no interface found, are fatal. */
-           } else {
-               MASTER_INET_ADDRLIST(serv) = own_inet_addr_list();
-               /* Errors are fatal, but inet_interfaces can be empty. */
-               if (MASTER_INET_ADDRLIST(serv)->used == 0)
-                   fatal_with_context("service definition requires valid"
-                                      " host name or address, or non-empty"
-                                      " %s setting", VAR_INET_INTERFACES);
-           }
+           MASTER_INET_ADDRLIST(serv) =
+               strcasecmp(saved_interfaces, INET_INTERFACES_ALL) ?
+               own_inet_addr_list() :          /* result can be empty */
+               wildcard_inet_addr_list();      /* result can't be empty */
+           if (MASTER_INET_ADDRLIST(serv)->used == 0)
+               fatal_with_context("service definition requires valid"
+                                  " host name or address, or non-empty"
+                                  " %s setting", VAR_INET_INTERFACES);
            inet_addr_list_uniq(MASTER_INET_ADDRLIST(serv));
            serv->listen_fd_count = MASTER_INET_ADDRLIST(serv)->used;
        }
index c7f8b40addab29099ed410be53164dff8f633376..4f9f87d97160c63cac095a5621785a03294d39d3 100644 (file)
 /*
 /*     Table-driven mechanisms:
 /*     access(5), Postfix SMTP access control table
-/*     aliases(5), Postfix alias database
+/*     aliases(5), Postfix local aliasing
 /*     canonical(5), Postfix input address rewriting
 /*     generic(5), Postfix output address rewriting
 /*     header_checks(5), body_checks(5), Postfix content inspection
index ac800db4231ec02423deb755eacbe5719b863de8..44c3694f366cb7623cb1edaa86c8f82bddf31e9b 100644 (file)
 /*     alias domains, that is, domains for which all addresses are aliased
 /*     to addresses in other local or remote domains.
 /* .IP "\fBvirtual_alias_maps ($virtual_maps)\fR"
-/*     Optional lookup tables with aliases that apply to all email deliveries,
-/*     unlike alias_maps that apply only to \fBlocal\fR(8) delivery.
+/*     Optional lookup tables with aliases that apply to all email deliveries:
+/*     \fBlocal\fR(8), virtual, and remote, unlike alias_maps that apply only
+/*     to \fBlocal\fR(8) delivery.
 /* .IP "\fBunknown_virtual_alias_reject_code (550)\fR"
 /*     The Postfix SMTP server reply code when a recipient address matches
 /*     $virtual_alias_domains, and $virtual_alias_maps specifies a list