mirror of
https://github.com/vdukhovni/postfix
synced 2025-09-01 06:35:27 +00:00
postfix-1.1.12-20021218
This commit is contained in:
committed by
Viktor Dukhovni
parent
9491ceed2a
commit
53a2d9a860
@@ -7500,9 +7500,6 @@ Open problems:
|
|||||||
or maildir delivery that result in deferral rather than
|
or maildir delivery that result in deferral rather than
|
||||||
bouncing mail.
|
bouncing mail.
|
||||||
|
|
||||||
Low: don't do user@domain and @domain lookups in
|
|
||||||
local_recipient_maps queries.
|
|
||||||
|
|
||||||
Low: after reorganizing configuration parameters, add flags
|
Low: after reorganizing configuration parameters, add flags
|
||||||
to all parameters whose value can be read from file.
|
to all parameters whose value can be read from file.
|
||||||
|
|
||||||
@@ -7528,7 +7525,3 @@ Open problems:
|
|||||||
|
|
||||||
Low: with quoted-printable, perhaps use =46rom instead of
|
Low: with quoted-printable, perhaps use =46rom instead of
|
||||||
>From.
|
>From.
|
||||||
|
|
||||||
Low: make it easier to have local_recipient_maps turned on
|
|
||||||
by default. This requires documentation of its existence
|
|
||||||
with anything that replaces or extends local delivery.
|
|
||||||
|
@@ -46,10 +46,11 @@ was contributed by Jason Hoos.
|
|||||||
When receiving mail, Postfix logs the client-provided username,
|
When receiving mail, Postfix logs the client-provided username,
|
||||||
authentication method, and sender address to the maillog file, and
|
authentication method, and sender address to the maillog file, and
|
||||||
optionally grants mail access via the permit_sasl_authenticated
|
optionally grants mail access via the permit_sasl_authenticated
|
||||||
UCE restriction. SASL authentication information is not passed on
|
UCE restriction.
|
||||||
via message headers or via SMTP. It is no-one's business what
|
|
||||||
username and authentication method the poster was using in order
|
SASL authentication information is not passed on via message headers
|
||||||
to access the mail server.
|
or via SMTP. It is no-one's business what username and authentication
|
||||||
|
method the poster was using in order to access the mail server.
|
||||||
|
|
||||||
When sending mail, Postfix looks up the server hostname or destination
|
When sending mail, Postfix looks up the server hostname or destination
|
||||||
domain (the address remote part) in a table, and if a username/password
|
domain (the address remote part) in a table, and if a username/password
|
||||||
|
@@ -129,7 +129,7 @@
|
|||||||
# tion schemes.
|
# tion schemes.
|
||||||
#
|
#
|
||||||
# DUNNO Pretend that the lookup key was not found in this
|
# DUNNO Pretend that the lookup key was not found in this
|
||||||
# table, to prevents Postfix from trying substrings
|
# table. This prevents Postfix from trying substrings
|
||||||
# of the lookup key (such as a subdomain name, or a
|
# of the lookup key (such as a subdomain name, or a
|
||||||
# network address subnetwork).
|
# network address subnetwork).
|
||||||
#
|
#
|
||||||
|
@@ -72,7 +72,7 @@
|
|||||||
# user@domain is replaced by address. This form has
|
# user@domain is replaced by address. This form has
|
||||||
# the highest precedence.
|
# the highest precedence.
|
||||||
#
|
#
|
||||||
# This form useful to clean up addresses produced by
|
# This is useful to clean up addresses produced by
|
||||||
# legacy mail systems. It can also be used to pro-
|
# legacy mail systems. It can also be used to pro-
|
||||||
# duce Firstname.Lastname style addresses, but see
|
# duce Firstname.Lastname style addresses, but see
|
||||||
# below for a simpler solution.
|
# below for a simpler solution.
|
||||||
|
@@ -88,11 +88,22 @@
|
|||||||
# Note 1: the special pattern * represents any address (i.e.
|
# Note 1: the special pattern * represents any address (i.e.
|
||||||
# it functions as the wild-card pattern).
|
# it functions as the wild-card pattern).
|
||||||
#
|
#
|
||||||
# Note 2: the null recipient address is looked up as the
|
# Note 2: the null recipient address is looked up as
|
||||||
# local mailer-daemon address (mailer-daemon@fully-quali-
|
# $empty_address_recipient@$myhostname (default: mailer-dae-
|
||||||
# fied-domain-name).
|
# mon@hostname).
|
||||||
#
|
#
|
||||||
# RESULT FORMAT
|
# RESULT FORMAT
|
||||||
|
# The transport field specifies the name of a mail delivery
|
||||||
|
# transport (the first name of a mail delivery service entry
|
||||||
|
# in the Postfix master.cf file).
|
||||||
|
#
|
||||||
|
# The interpretation of the nexthop field is transport
|
||||||
|
# dependent. In the case of SMTP, specify host:service for a
|
||||||
|
# non-default server port, and use [host] or [host]:port in
|
||||||
|
# order to disable MX (mail exchanger) DNS lookups. The []
|
||||||
|
# form can also be used with IP addresses instead of host-
|
||||||
|
# names.
|
||||||
|
#
|
||||||
# A null transport and null nexthop result means "do not
|
# A null transport and null nexthop result means "do not
|
||||||
# change": use the delivery transport and nexthop informa-
|
# change": use the delivery transport and nexthop informa-
|
||||||
# tion that would be used when the entire transport table
|
# tion that would be used when the entire transport table
|
||||||
@@ -104,43 +115,36 @@
|
|||||||
# A null transport field with non-null nexthop field does
|
# A null transport field with non-null nexthop field does
|
||||||
# not modify the transport information.
|
# not modify the transport information.
|
||||||
#
|
#
|
||||||
# TRANSPORT FIELD
|
# DEFAULT DELIVERY METHOD
|
||||||
# The transport field specifies the name of a mail delivery
|
# When the recipient address or domain does not match a
|
||||||
# transport (the first name of a mail delivery service entry
|
# transport table entry, Postfix uses one of the following
|
||||||
# in the Postfix master.cf file).
|
# delivery methods, with the recipient domain as the default
|
||||||
|
# nexthop.
|
||||||
#
|
#
|
||||||
# When a null transport field is specified, Postfix uses one
|
# o The recipient domain matches $mydestination or
|
||||||
# of the following transports:
|
# $inet_interfaces. The transport and optional nex-
|
||||||
|
# thop are specified with $local_transport.
|
||||||
#
|
#
|
||||||
# $local_transport
|
# o The recipient domain matches $virtual_mail-
|
||||||
# The domain matches $mydestination or $inet_inter-
|
# box_domains. The transport and optional nexthop
|
||||||
# faces.
|
# are specified with $virtual_transport.
|
||||||
#
|
#
|
||||||
# $virtual_transport
|
# o The recipient domain matches $relay_domains. The
|
||||||
# The domain matches $virtual_mailbox_domains.
|
# transport and optional nexthop are specified with
|
||||||
|
# $relay_transport. This overrides the nexthop infor-
|
||||||
|
# mation that is specified with $relayhost.
|
||||||
#
|
#
|
||||||
# $relay_transport
|
# o All other destinations. the transport and optional
|
||||||
# The domain matches $relay_transport.
|
# nexthop are specified with $relay_transport. This
|
||||||
#
|
# overrides the nexthop information that is specified
|
||||||
# $default_transport
|
# with $relayhost.
|
||||||
# All other non-local, non-virtual destinations.
|
|
||||||
#
|
|
||||||
# NEXTHOP FIELD
|
|
||||||
# The interpretation of the nexthop field is transport
|
|
||||||
# dependent. In the case of SMTP, specify host:service for a
|
|
||||||
# non-default server port, and use [host] or [host]:port in
|
|
||||||
# order to disable MX (mail exchanger) DNS lookups. The []
|
|
||||||
# form can also be used with IP addresses instead of host-
|
|
||||||
# names.
|
|
||||||
#
|
#
|
||||||
# EXAMPLES
|
# EXAMPLES
|
||||||
# In order to deliver internal mail directly, while using a
|
# In order to deliver internal mail directly, while using a
|
||||||
# mail relay for all other mail, specify a null entry for
|
# mail relay for all other mail, specify a null entry for
|
||||||
# internal destinations (do not change the delivery trans-
|
# internal destinations (do not change the delivery trans-
|
||||||
# port or the nexthop information) and specify a wildcard
|
# port or the nexthop information) and specify a wildcard
|
||||||
# for all other destinations. Note that for this trick to
|
# for all other destinations.
|
||||||
# work you should not specify a relayhost in the main.cf
|
|
||||||
# file.
|
|
||||||
#
|
#
|
||||||
# my.domain :
|
# my.domain :
|
||||||
# .my.domain :
|
# .my.domain :
|
||||||
@@ -215,6 +219,10 @@
|
|||||||
# details and for default values. Use the postfix reload
|
# details and for default values. Use the postfix reload
|
||||||
# command after a configuration change.
|
# command after a configuration change.
|
||||||
#
|
#
|
||||||
|
# empty_address_recipient
|
||||||
|
# The address that is looked up instead of the null
|
||||||
|
# sender address.
|
||||||
|
#
|
||||||
# parent_domain_matches_subdomains
|
# parent_domain_matches_subdomains
|
||||||
# List of Postfix features that use domain.tld pat-
|
# List of Postfix features that use domain.tld pat-
|
||||||
# terns to match sub.domain.tld (as opposed to
|
# terns to match sub.domain.tld (as opposed to
|
||||||
|
@@ -18,8 +18,8 @@
|
|||||||
#
|
#
|
||||||
# The main applications of virtual aliasing are:
|
# The main applications of virtual aliasing are:
|
||||||
#
|
#
|
||||||
# o To redirect mail from one address to one or more
|
# o To redirect mail for one address to one or more
|
||||||
# other addresses.
|
# addresses.
|
||||||
#
|
#
|
||||||
# o To simulate virtual domains where all virtual
|
# o To simulate virtual domains where all virtual
|
||||||
# addresses are aliased to non-virtual addresses.
|
# addresses are aliased to non-virtual addresses.
|
||||||
@@ -49,56 +49,6 @@
|
|||||||
# sions. In that case, the lookups are done in a slightly
|
# sions. In that case, the lookups are done in a slightly
|
||||||
# different way as described below.
|
# different way as described below.
|
||||||
#
|
#
|
||||||
# SIMULATED VIRTUAL DOMAINS
|
|
||||||
# Besides virtual aliases, the virtual alias table can also
|
|
||||||
# be used to simulate virtual domains. With a simulated vir-
|
|
||||||
# tual domain, all recipient addresses are aliased to non-
|
|
||||||
# virtual addresses. These non-virtual addresses may be
|
|
||||||
# either local or remote.
|
|
||||||
#
|
|
||||||
# Simulated virtual domains are not to be confused with the
|
|
||||||
# true virtual domains that are implemented with the Postfix
|
|
||||||
# virtual(8) mail delivery agent. With true virtual domains,
|
|
||||||
# each recipient address can have its own mailbox.
|
|
||||||
#
|
|
||||||
# With a simulated virtual domain, the virtual domain has
|
|
||||||
# its own user name space. Local (i.e. non-virtual) user-
|
|
||||||
# names are not visible in a simulated virtual domain. In
|
|
||||||
# particular, local aliases(5) and local mailing lists are
|
|
||||||
# not visible as localname@simulated.domain.
|
|
||||||
#
|
|
||||||
# Support for a simulated virtual domain looks like:
|
|
||||||
#
|
|
||||||
# /etc/postfix/main.cf:
|
|
||||||
# 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
|
|
||||||
# types.
|
|
||||||
#
|
|
||||||
# /etc/postfix/virtual:
|
|
||||||
# simulated.domain anything (right-hand content does not matter)
|
|
||||||
# postmaster@simulated.domain postmaster
|
|
||||||
# user1@simulated.domain address1
|
|
||||||
# user2@simulated.domain address2, address3
|
|
||||||
#
|
|
||||||
# The simulated.domain anything entry is required for a sim-
|
|
||||||
# ulated virtual domain. Without this entry, mail will be
|
|
||||||
# rejected with a "relay access denied" error condition.
|
|
||||||
#
|
|
||||||
# Do not list a simulated virtual domain name in the main.cf
|
|
||||||
# mydestination configuration parameter.
|
|
||||||
#
|
|
||||||
# With a simulated virtual domain, the Postfix SMTP server
|
|
||||||
# accepts mail for known-user@simulated.domain, and rejects
|
|
||||||
# mail for unknown-user@simulated.domain as undeliverable.
|
|
||||||
#
|
|
||||||
# Instead of specifying the simulated virtual domain name
|
|
||||||
# via the virtual_alias_maps table, you may also specify it
|
|
||||||
# via the main.cf virtual_alias_domains configuration param-
|
|
||||||
# eter. This latter parameter uses the same syntax as the
|
|
||||||
# main.cf mydestination configuration parameter.
|
|
||||||
#
|
|
||||||
# TABLE FORMAT
|
# TABLE FORMAT
|
||||||
# The format of the virtual table is as follows, mappings
|
# The format of the virtual table is as follows, mappings
|
||||||
# being tried in the order as listed in this manual page:
|
# being tried in the order as listed in this manual page:
|
||||||
@@ -151,6 +101,56 @@
|
|||||||
# @domain. An unmatched address extension (+foo) is propa-
|
# @domain. An unmatched address extension (+foo) is propa-
|
||||||
# gated to the result of table lookup.
|
# gated to the result of table lookup.
|
||||||
#
|
#
|
||||||
|
# SIMULATED VIRTUAL DOMAINS
|
||||||
|
# Besides virtual aliases, the virtual alias table can also
|
||||||
|
# be used to simulate virtual domains. With a simulated vir-
|
||||||
|
# tual domain, all recipient addresses are aliased to non-
|
||||||
|
# virtual addresses. These non-virtual addresses may be
|
||||||
|
# either local or remote.
|
||||||
|
#
|
||||||
|
# Simulated virtual domains are not to be confused with the
|
||||||
|
# true virtual domains that are implemented with the Postfix
|
||||||
|
# virtual(8) mail delivery agent. With true virtual domains,
|
||||||
|
# each recipient address can have its own mailbox.
|
||||||
|
#
|
||||||
|
# With a simulated virtual domain, the virtual domain has
|
||||||
|
# its own user name space. Local (i.e. non-virtual) user-
|
||||||
|
# names are not visible in a simulated virtual domain. In
|
||||||
|
# particular, local aliases(5) and local mailing lists are
|
||||||
|
# not visible as localname@simulated.domain.
|
||||||
|
#
|
||||||
|
# Support for a simulated virtual domain looks like:
|
||||||
|
#
|
||||||
|
# /etc/postfix/main.cf:
|
||||||
|
# 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
|
||||||
|
# types.
|
||||||
|
#
|
||||||
|
# /etc/postfix/virtual:
|
||||||
|
# simulated.domain anything (right-hand content does not matter)
|
||||||
|
# postmaster@simulated.domain postmaster
|
||||||
|
# user1@simulated.domain address1
|
||||||
|
# user2@simulated.domain address2, address3
|
||||||
|
#
|
||||||
|
# The simulated.domain anything entry is required for a sim-
|
||||||
|
# ulated virtual domain. Without this entry, mail will be
|
||||||
|
# rejected with a "relay access denied" error condition.
|
||||||
|
#
|
||||||
|
# Do not list a simulated virtual domain name in the main.cf
|
||||||
|
# mydestination configuration parameter.
|
||||||
|
#
|
||||||
|
# With a simulated virtual domain, the Postfix SMTP server
|
||||||
|
# accepts mail for known-user@simulated.domain, and rejects
|
||||||
|
# mail for unknown-user@simulated.domain as undeliverable.
|
||||||
|
#
|
||||||
|
# Instead of specifying the simulated virtual domain name
|
||||||
|
# via the virtual_alias_maps table, you may also specify it
|
||||||
|
# via the main.cf virtual_alias_domains configuration param-
|
||||||
|
# eter. This latter parameter uses the same syntax as the
|
||||||
|
# main.cf mydestination configuration parameter.
|
||||||
|
#
|
||||||
# REGULAR EXPRESSION TABLES
|
# 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
|
# the table is given in the form of regular expressions. For
|
||||||
|
@@ -130,7 +130,7 @@ ACCESS(5) ACCESS(5)
|
|||||||
tion schemes.
|
tion schemes.
|
||||||
|
|
||||||
<b>DUNNO</b> Pretend that the lookup key was not found in this
|
<b>DUNNO</b> Pretend that the lookup key was not found in this
|
||||||
table, to prevents Postfix from trying substrings
|
table. This prevents Postfix from trying substrings
|
||||||
of the lookup key (such as a subdomain name, or a
|
of the lookup key (such as a subdomain name, or a
|
||||||
network address subnetwork).
|
network address subnetwork).
|
||||||
|
|
||||||
|
@@ -73,7 +73,7 @@ CANONICAL(5) CANONICAL(5)
|
|||||||
<i>user</i>@<i>domain</i> is replaced by <i>address</i>. This form has
|
<i>user</i>@<i>domain</i> is replaced by <i>address</i>. This form has
|
||||||
the highest precedence.
|
the highest precedence.
|
||||||
|
|
||||||
This form useful to clean up addresses produced by
|
This is useful to clean up addresses produced by
|
||||||
legacy mail systems. It can also be used to pro-
|
legacy mail systems. It can also be used to pro-
|
||||||
duce <i>Firstname.Lastname</i> style addresses, but see
|
duce <i>Firstname.Lastname</i> style addresses, but see
|
||||||
below for a simpler solution.
|
below for a simpler solution.
|
||||||
|
@@ -188,13 +188,17 @@ CLEANUP(8) CLEANUP(8)
|
|||||||
|
|
||||||
<b>Resource</b> <b>controls</b>
|
<b>Resource</b> <b>controls</b>
|
||||||
<b>duplicate</b><i>_</i><b>filter</b><i>_</i><b>limit</b>
|
<b>duplicate</b><i>_</i><b>filter</b><i>_</i><b>limit</b>
|
||||||
Limit the number of envelope recipients that are
|
Limits the number of envelope recipients that are
|
||||||
remembered.
|
remembered.
|
||||||
|
|
||||||
<b>header</b><i>_</i><b>size</b><i>_</i><b>limit</b>
|
<b>header</b><i>_</i><b>address</b><i>_</i><b>token</b><i>_</i><b>limit</b>
|
||||||
Limit the amount of memory in bytes used to process
|
Limits the number of address tokens used to process
|
||||||
a message header.
|
a message header.
|
||||||
|
|
||||||
|
<b>header</b><i>_</i><b>size</b><i>_</i><b>limit</b>
|
||||||
|
Limits the amount of memory in bytes used to pro-
|
||||||
|
cess a message header.
|
||||||
|
|
||||||
<b>in</b><i>_</i><b>flow</b><i>_</i><b>delay</b>
|
<b>in</b><i>_</i><b>flow</b><i>_</i><b>delay</b>
|
||||||
Amount of time to pause before accepting a message,
|
Amount of time to pause before accepting a message,
|
||||||
when the message arrival rate exceeds the message
|
when the message arrival rate exceeds the message
|
||||||
|
@@ -173,8 +173,9 @@ LOCAL(8) LOCAL(8)
|
|||||||
<b>SENDER</b> The entire sender address.
|
<b>SENDER</b> The entire sender address.
|
||||||
|
|
||||||
The <b>PATH</b> environment variable is always reset to a system-
|
The <b>PATH</b> environment variable is always reset to a system-
|
||||||
dependent default path, and the <b>TZ</b> (time zone) environment
|
dependent default path, and environment variables whose
|
||||||
variable is always passed on without change.
|
names are blessed by the <b>export</b><i>_</i><b>environment</b> configureation
|
||||||
|
parameter are exported unchanged.
|
||||||
|
|
||||||
The current working directory is the mail queue directory.
|
The current working directory is the mail queue directory.
|
||||||
|
|
||||||
@@ -210,8 +211,9 @@ LOCAL(8) LOCAL(8)
|
|||||||
|
|
||||||
In the case of <b>maildir</b> delivery, the local daemon prepends
|
In the case of <b>maildir</b> delivery, the local daemon prepends
|
||||||
an optional <b>Delivered-To:</b> header with the envelope recipi-
|
an optional <b>Delivered-To:</b> header with the envelope recipi-
|
||||||
ent address. The envelope sender address is available in
|
ent address, and prepends an <b>X-Original-To:</b> header with
|
||||||
the <b>Return-Path:</b> header.
|
the recipient address as given to Postfix. The envelope
|
||||||
|
sender address is available in the <b>Return-Path:</b> header.
|
||||||
|
|
||||||
<b>ADDRESS</b> <b>EXTENSION</b>
|
<b>ADDRESS</b> <b>EXTENSION</b>
|
||||||
The optional <b>recipient</b><i>_</i><b>delimiter</b> configuration parameter
|
The optional <b>recipient</b><i>_</i><b>delimiter</b> configuration parameter
|
||||||
|
@@ -5,7 +5,7 @@ MASTER(8) MASTER(8)
|
|||||||
master - Postfix master process
|
master - Postfix master process
|
||||||
|
|
||||||
<b>SYNOPSIS</b>
|
<b>SYNOPSIS</b>
|
||||||
<b>master</b> [<b>-c</b> <i>config_dir</i>] [<b>-e</b> <i>exit_time</i>] [<b>-D</b>] [<b>-t</b>] [<b>-v</b>]
|
<b>master</b> [<b>-Dtv</b>] [<b>-c</b> <i>config_dir</i>] [<b>-e</b> <i>exit_time</i>]
|
||||||
|
|
||||||
<b>DESCRIPTION</b>
|
<b>DESCRIPTION</b>
|
||||||
The <b>master</b> daemon is the resident process that runs Post-
|
The <b>master</b> daemon is the resident process that runs Post-
|
||||||
|
@@ -62,7 +62,7 @@ PCRE_TABLE(5) PCRE_TABLE(5)
|
|||||||
|
|
||||||
<b>m</b> (default: off)
|
<b>m</b> (default: off)
|
||||||
Toggles the PCRE_MULTILINE flag. When this flag is
|
Toggles the PCRE_MULTILINE flag. When this flag is
|
||||||
on, the <b>^</b> and $ metacharacters match immediately
|
on, the <b>^</b> and <b>$</b> metacharacters match immediately
|
||||||
after and immediately before a newline character,
|
after and immediately before a newline character,
|
||||||
respectively, in addition to matching at the start
|
respectively, in addition to matching at the start
|
||||||
and end of the subject string.
|
and end of the subject string.
|
||||||
|
@@ -19,13 +19,13 @@ PICKUP(8) PICKUP(8)
|
|||||||
world.
|
world.
|
||||||
|
|
||||||
<b>SECURITY</b>
|
<b>SECURITY</b>
|
||||||
The <b>pickup</b> daemon runs with superuser privileges so that
|
The <b>pickup</b> daemon is moderately security sensitive. It
|
||||||
it 1) can open a queue file with the rights of the submit-
|
runs with fixed low privilege and can run in a chrooted
|
||||||
ting user and 2) can access the Postfix private IPC chan-
|
environment. However, the program reads files from poten-
|
||||||
nels. On the positive side, the program can run chrooted,
|
tially hostile users. The <b>pickup</b> daemon opens no files
|
||||||
opens no files for writing, is careful about what files it
|
for writing, is careful about what files it opens for
|
||||||
opens for reading, and does not actually touch any data
|
reading, and does not actually touch any data that is sent
|
||||||
that is sent to its public service endpoint.
|
to its public service endpoint.
|
||||||
|
|
||||||
<b>DIAGNOSTICS</b>
|
<b>DIAGNOSTICS</b>
|
||||||
Problems and transactions are logged to <b>syslogd</b>(8).
|
Problems and transactions are logged to <b>syslogd</b>(8).
|
||||||
@@ -56,10 +56,6 @@ PICKUP(8) PICKUP(8)
|
|||||||
Address to send a copy of each message that enters
|
Address to send a copy of each message that enters
|
||||||
the system.
|
the system.
|
||||||
|
|
||||||
<b>mail</b><i>_</i><b>owner</b>
|
|
||||||
The process privileges used while not opening a
|
|
||||||
<b>maildrop</b> file.
|
|
||||||
|
|
||||||
<b>queue</b><i>_</i><b>directory</b>
|
<b>queue</b><i>_</i><b>directory</b>
|
||||||
Top-level directory of the Postfix queue.
|
Top-level directory of the Postfix queue.
|
||||||
|
|
||||||
|
@@ -51,7 +51,7 @@ POSTALIAS(1) POSTALIAS(1)
|
|||||||
<b>-i</b> Incremental mode. Read entries from standard input
|
<b>-i</b> Incremental mode. Read entries from standard input
|
||||||
and do not truncate an existing database. By
|
and do not truncate an existing database. By
|
||||||
default, <b>postalias</b> creates a new database from the
|
default, <b>postalias</b> creates a new database from the
|
||||||
entries in <b>file</b><i>_</i><b>name</b>.
|
entries in <i>file_name</i>.
|
||||||
|
|
||||||
<b>-n</b> Don't include the terminating null character that
|
<b>-n</b> Don't include the terminating null character that
|
||||||
terminates lookup keys and values. By default,
|
terminates lookup keys and values. By default,
|
||||||
@@ -113,7 +113,7 @@ POSTALIAS(1) POSTALIAS(1)
|
|||||||
|
|
||||||
<i>file_name</i>
|
<i>file_name</i>
|
||||||
The name of the alias database source file when
|
The name of the alias database source file when
|
||||||
rebuilding a database.
|
creating a database.
|
||||||
|
|
||||||
<b>DIAGNOSTICS</b>
|
<b>DIAGNOSTICS</b>
|
||||||
Problems are logged to the standard error stream. No out-
|
Problems are logged to the standard error stream. No out-
|
||||||
@@ -136,9 +136,9 @@ POSTALIAS(1) POSTALIAS(1)
|
|||||||
to this program. See the Postfix <b>main.cf</b> file for syntax
|
to this program. See the Postfix <b>main.cf</b> file for syntax
|
||||||
details and for default values.
|
details and for default values.
|
||||||
|
|
||||||
efault_Bdatabase_type
|
<b>default</b><i>_</i><b>database</b><i>_</i><b>type</b>
|
||||||
Default alias database type. On many UNIX systems,
|
Default database type. On many UNIX systems, the
|
||||||
the default type is either <b>dbm</b> or <b>hash</b>.
|
default type is either <b>dbm</b> or <b>hash</b>.
|
||||||
|
|
||||||
<b>berkeley</b><i>_</i><b>db</b><i>_</i><b>create</b><i>_</i><b>buffer</b><i>_</i><b>size</b>
|
<b>berkeley</b><i>_</i><b>db</b><i>_</i><b>create</b><i>_</i><b>buffer</b><i>_</i><b>size</b>
|
||||||
Amount of buffer memory to be used when creating a
|
Amount of buffer memory to be used when creating a
|
||||||
|
@@ -11,7 +11,7 @@ POSTCONF(1) POSTCONF(1)
|
|||||||
|
|
||||||
<b>DESCRIPTION</b>
|
<b>DESCRIPTION</b>
|
||||||
The <b>postconf</b> command prints the actual value of <i>parameter</i>
|
The <b>postconf</b> command prints the actual value of <i>parameter</i>
|
||||||
(all known parameters by default), one parameter per line,
|
(all known parameters by default) one parameter per line,
|
||||||
changes its value, or prints other information about the
|
changes its value, or prints other information about the
|
||||||
Postfix mail system.
|
Postfix mail system.
|
||||||
|
|
||||||
|
@@ -5,7 +5,7 @@ POSTFIX(1) POSTFIX(1)
|
|||||||
postfix - Postfix control program
|
postfix - Postfix control program
|
||||||
|
|
||||||
<b>SYNOPSIS</b>
|
<b>SYNOPSIS</b>
|
||||||
<b>postfix</b> [<b>-c</b> <i>config_dir</i>] [<b>-D</b>] [<b>-v</b>] <i>command</i>
|
<b>postfix</b> [<b>-Dv</b>] [<b>-c</b> <i>config_dir</i>] <i>command</i>
|
||||||
|
|
||||||
<b>DESCRIPTION</b>
|
<b>DESCRIPTION</b>
|
||||||
This command is reserved for the superuser. To submit
|
This command is reserved for the superuser. To submit
|
||||||
@@ -67,11 +67,12 @@ POSTFIX(1) POSTFIX(1)
|
|||||||
verbose.
|
verbose.
|
||||||
|
|
||||||
<b>ENVIRONMENT</b>
|
<b>ENVIRONMENT</b>
|
||||||
The <b>postfix</b> command sets the following environment vari-
|
The <b>postfix</b> command exports the following environment
|
||||||
ables:
|
variables before executing the <b>postfix-script</b> file:
|
||||||
|
|
||||||
<b>MAIL</b><i>_</i><b>CONFIG</b>
|
<b>MAIL</b><i>_</i><b>CONFIG</b>
|
||||||
Directory with Postfix configuration files.
|
This is set when the -c command-line option is pre-
|
||||||
|
sent.
|
||||||
|
|
||||||
<b>MAIL</b><i>_</i><b>VERBOSE</b>
|
<b>MAIL</b><i>_</i><b>VERBOSE</b>
|
||||||
This is set when the -v command-line option is pre-
|
This is set when the -v command-line option is pre-
|
||||||
@@ -81,10 +82,8 @@ POSTFIX(1) POSTFIX(1)
|
|||||||
This is set when the -D command-line option is pre-
|
This is set when the -D command-line option is pre-
|
||||||
sent.
|
sent.
|
||||||
|
|
||||||
<b>CONFIGURATION</b> <b>PARAMETERS</b>
|
The following <b>main.cf</b> configuration parameters are
|
||||||
The following <b>main.cf</b> configuration parameters are made
|
exported as environment variables with the same names:
|
||||||
available as process environment variables with the same
|
|
||||||
names:
|
|
||||||
|
|
||||||
<b>command</b><i>_</i><b>directory</b>
|
<b>command</b><i>_</i><b>directory</b>
|
||||||
Directory with Postfix administrative commands.
|
Directory with Postfix administrative commands.
|
||||||
@@ -111,14 +110,14 @@ POSTFIX(1) POSTFIX(1)
|
|||||||
commands.
|
commands.
|
||||||
|
|
||||||
<b>sendmail</b><i>_</i><b>path</b>
|
<b>sendmail</b><i>_</i><b>path</b>
|
||||||
The full pathname for the Postfix sendmail command.
|
The full pathname for the Postfix <b>sendmail</b> command.
|
||||||
|
|
||||||
<b>newaliases</b><i>_</i><b>path</b>
|
<b>newaliases</b><i>_</i><b>path</b>
|
||||||
The full pathname for the Postfix newaliases com-
|
The full pathname for the Postfix <b>newaliases</b> com-
|
||||||
mand.
|
mand.
|
||||||
|
|
||||||
<b>mailq</b><i>_</i><b>path</b>
|
<b>mailq</b><i>_</i><b>path</b>
|
||||||
The full pathname for the Postfix mailq command.
|
The full pathname for the Postfix <b>mailq</b> command.
|
||||||
|
|
||||||
<b>manpage</b><i>_</i><b>directory</b>
|
<b>manpage</b><i>_</i><b>directory</b>
|
||||||
The directory for the Postfix on-line manual pages.
|
The directory for the Postfix on-line manual pages.
|
||||||
|
@@ -96,7 +96,7 @@ QMQPD(8) QMQPD(8)
|
|||||||
address information.
|
address information.
|
||||||
|
|
||||||
<b>Tarpitting</b>
|
<b>Tarpitting</b>
|
||||||
<b>qmqpd</b><i>_</i><b>error</b><i>_</i><b>sleep</b><i>_</i><b>time</b>
|
<b>qmqpd</b><i>_</i><b>error</b><i>_</i><b>delay</b>
|
||||||
Time to wait in seconds before informing the client
|
Time to wait in seconds before informing the client
|
||||||
of a problem. This slows down run-away errors.
|
of a problem. This slows down run-away errors.
|
||||||
|
|
||||||
|
@@ -164,8 +164,9 @@ SENDMAIL(1) SENDMAIL(1)
|
|||||||
<b>-o7</b> (ignored)
|
<b>-o7</b> (ignored)
|
||||||
|
|
||||||
<b>-o8</b> (ignored)
|
<b>-o8</b> (ignored)
|
||||||
The message body type. Currently, Postfix imple-
|
To send 8-bit or binary content, use an appropriate
|
||||||
ments <b>just-send-eight</b>.
|
MIME encapsulation and specify the appropriate <b>-B</b>
|
||||||
|
command-line option.
|
||||||
|
|
||||||
<b>-oi</b> When reading a message from standard input, don't
|
<b>-oi</b> When reading a message from standard input, don't
|
||||||
treat a line with only a <b>.</b> character as the end of
|
treat a line with only a <b>.</b> character as the end of
|
||||||
|
@@ -89,11 +89,22 @@ TRANSPORT(5) TRANSPORT(5)
|
|||||||
Note 1: the special pattern <b>*</b> represents any address (i.e.
|
Note 1: the special pattern <b>*</b> represents any address (i.e.
|
||||||
it functions as the wild-card pattern).
|
it functions as the wild-card pattern).
|
||||||
|
|
||||||
Note 2: the null recipient address is looked up as the
|
Note 2: the null recipient address is looked up as
|
||||||
local mailer-daemon address (mailer-daemon@fully-quali-
|
<b>$empty</b><i>_</i><b>address</b><i>_</i><b>recipient</b>@<b>$myhostname</b> (default: mailer-dae-
|
||||||
fied-domain-name).
|
mon@hostname).
|
||||||
|
|
||||||
<b>RESULT</b> <b>FORMAT</b>
|
<b>RESULT</b> <b>FORMAT</b>
|
||||||
|
The transport field specifies the name of a mail delivery
|
||||||
|
transport (the first name of a mail delivery service entry
|
||||||
|
in the Postfix <b>master.cf</b> file).
|
||||||
|
|
||||||
|
The interpretation of the nexthop field is transport
|
||||||
|
dependent. In the case of SMTP, specify <i>host</i>:<i>service</i> for a
|
||||||
|
non-default server port, and use [<i>host</i>] or [<i>host</i>]:<i>port</i> in
|
||||||
|
order to disable MX (mail exchanger) DNS lookups. The []
|
||||||
|
form can also be used with IP addresses instead of host-
|
||||||
|
names.
|
||||||
|
|
||||||
A null <i>transport</i> and null <i>nexthop</i> result means "do not
|
A null <i>transport</i> and null <i>nexthop</i> result means "do not
|
||||||
change": use the delivery transport and nexthop informa-
|
change": use the delivery transport and nexthop informa-
|
||||||
tion that would be used when the entire transport table
|
tion that would be used when the entire transport table
|
||||||
@@ -105,43 +116,36 @@ TRANSPORT(5) TRANSPORT(5)
|
|||||||
A null <i>transport</i> field with non-null <i>nexthop</i> field does
|
A null <i>transport</i> field with non-null <i>nexthop</i> field does
|
||||||
not modify the transport information.
|
not modify the transport information.
|
||||||
|
|
||||||
<b>TRANSPORT</b> <b>FIELD</b>
|
<b>DEFAULT</b> <b>DELIVERY</b> <b>METHOD</b>
|
||||||
The transport field specifies the name of a mail delivery
|
When the recipient address or domain does not match a
|
||||||
transport (the first name of a mail delivery service entry
|
transport table entry, Postfix uses one of the following
|
||||||
in the Postfix <b>master.cf</b> file).
|
delivery methods, with the recipient domain as the default
|
||||||
|
nexthop.
|
||||||
|
|
||||||
When a null transport field is specified, Postfix uses one
|
<b>o</b> The recipient domain matches <b>$mydestination</b> or
|
||||||
of the following transports:
|
<b>$inet</b><i>_</i><b>interfaces</b>. The transport and optional nex-
|
||||||
|
thop are specified with <b>$local</b><i>_</i><b>transport</b>.
|
||||||
|
|
||||||
<b>$local</b><i>_</i><b>transport</b>
|
<b>o</b> The recipient domain matches <b>$virtual</b><i>_</i><b>mail-</b>
|
||||||
The domain matches <b>$mydestination</b> or <b>$inet</b><i>_</i><b>inter-</b>
|
<b>box</b><i>_</i><b>domains</b>. The transport and optional nexthop
|
||||||
<b>faces</b>.
|
are specified with <b>$virtual</b><i>_</i><b>transport</b>.
|
||||||
|
|
||||||
<b>$virtual</b><i>_</i><b>transport</b>
|
<b>o</b> The recipient domain matches <b>$relay</b><i>_</i><b>domains</b>. The
|
||||||
The domain matches <b>$virtual</b><i>_</i><b>mailbox</b><i>_</i><b>domains</b>.
|
transport and optional nexthop are specified with
|
||||||
|
<b>$relay</b><i>_</i><b>transport</b>. This overrides the nexthop infor-
|
||||||
|
mation that is specified with <b>$relayhost</b>.
|
||||||
|
|
||||||
<b>$relay</b><i>_</i><b>transport</b>
|
<b>o</b> All other destinations. the transport and optional
|
||||||
The domain matches <b>$relay</b><i>_</i><b>transport</b>.
|
nexthop are specified with <b>$relay</b><i>_</i><b>transport</b>. This
|
||||||
|
overrides the nexthop information that is specified
|
||||||
<b>$default</b><i>_</i><b>transport</b>
|
with <b>$relayhost</b>.
|
||||||
All other non-local, non-virtual destinations.
|
|
||||||
|
|
||||||
<b>NEXTHOP</b> <b>FIELD</b>
|
|
||||||
The interpretation of the nexthop field is transport
|
|
||||||
dependent. In the case of SMTP, specify <i>host</i>:<i>service</i> for a
|
|
||||||
non-default server port, and use [<i>host</i>] or [<i>host</i>]:<i>port</i> in
|
|
||||||
order to disable MX (mail exchanger) DNS lookups. The []
|
|
||||||
form can also be used with IP addresses instead of host-
|
|
||||||
names.
|
|
||||||
|
|
||||||
<b>EXAMPLES</b>
|
<b>EXAMPLES</b>
|
||||||
In order to deliver internal mail directly, while using a
|
In order to deliver internal mail directly, while using a
|
||||||
mail relay for all other mail, specify a null entry for
|
mail relay for all other mail, specify a null entry for
|
||||||
internal destinations (do not change the delivery trans-
|
internal destinations (do not change the delivery trans-
|
||||||
port or the nexthop information) and specify a wildcard
|
port or the nexthop information) and specify a wildcard
|
||||||
for all other destinations. Note that for this trick to
|
for all other destinations.
|
||||||
work you should not specify a <b>relayhost</b> in the <b>main.cf</b>
|
|
||||||
file.
|
|
||||||
|
|
||||||
<b>my.domain</b> <b>:</b>
|
<b>my.domain</b> <b>:</b>
|
||||||
<b>.my.domain</b> <b>:</b>
|
<b>.my.domain</b> <b>:</b>
|
||||||
@@ -216,6 +220,10 @@ TRANSPORT(5) TRANSPORT(5)
|
|||||||
details and for default values. Use the <b>postfix</b> <b>reload</b>
|
details and for default values. Use the <b>postfix</b> <b>reload</b>
|
||||||
command after a configuration change.
|
command after a configuration change.
|
||||||
|
|
||||||
|
<b>empty</b><i>_</i><b>address</b><i>_</i><b>recipient</b>
|
||||||
|
The address that is looked up instead of the null
|
||||||
|
sender address.
|
||||||
|
|
||||||
<b>parent</b><i>_</i><b>domain</b><i>_</i><b>matches</b><i>_</i><b>subdomains</b>
|
<b>parent</b><i>_</i><b>domain</b><i>_</i><b>matches</b><i>_</i><b>subdomains</b>
|
||||||
List of Postfix features that use <i>domain.tld</i> pat-
|
List of Postfix features that use <i>domain.tld</i> pat-
|
||||||
terns to match <i>sub.domain.tld</i> (as opposed to
|
terns to match <i>sub.domain.tld</i> (as opposed to
|
||||||
|
@@ -30,8 +30,8 @@ TRIVIAL-REWRITE(8) TRIVIAL-REWRITE(8)
|
|||||||
field of an entry in the <b>master.cf</b> file.
|
field of an entry in the <b>master.cf</b> file.
|
||||||
|
|
||||||
<i>nexthop</i>
|
<i>nexthop</i>
|
||||||
The host to send to. For local delivery this
|
The host to send to and optional delivery
|
||||||
is an empty string.
|
method information.
|
||||||
|
|
||||||
<i>recipient</i>
|
<i>recipient</i>
|
||||||
The envelope recipient address that is
|
The envelope recipient address that is
|
||||||
@@ -66,11 +66,16 @@ TRIVIAL-REWRITE(8) TRIVIAL-REWRITE(8)
|
|||||||
command after a configuration change.
|
command after a configuration change.
|
||||||
|
|
||||||
<b>Miscellaneous</b>
|
<b>Miscellaneous</b>
|
||||||
|
<b>empty</b><i>_</i><b>address</b><i>_</i><b>recipient</b>
|
||||||
|
The recipient that is substituted for the null
|
||||||
|
address.
|
||||||
|
|
||||||
<b>inet</b><i>_</i><b>interfaces</b>
|
<b>inet</b><i>_</i><b>interfaces</b>
|
||||||
The network interfaces that this mail system
|
The network interfaces that this mail system
|
||||||
receives mail on. This information is used to
|
receives mail on. This information is used to
|
||||||
determine if <i>user</i>@[<i>net.work.addr.ess</i>] is local or
|
determine if <i>user</i>@[<i>net.work.addr.ess</i>] is local or
|
||||||
remote.
|
remote. Mail for local users is given to the
|
||||||
|
<b>$local</b><i>_</i><b>transport</b>.
|
||||||
|
|
||||||
<b>mydestination</b>
|
<b>mydestination</b>
|
||||||
List of domains that are given to the <b>$local</b><i>_</i><b>trans-</b>
|
List of domains that are given to the <b>$local</b><i>_</i><b>trans-</b>
|
||||||
|
@@ -19,8 +19,8 @@ VIRTUAL(5) VIRTUAL(5)
|
|||||||
|
|
||||||
The main applications of virtual aliasing are:
|
The main applications of virtual aliasing are:
|
||||||
|
|
||||||
<b>o</b> To redirect mail from one address to one or more
|
<b>o</b> To redirect mail for one address to one or more
|
||||||
other addresses.
|
addresses.
|
||||||
|
|
||||||
<b>o</b> To simulate virtual domains where all virtual
|
<b>o</b> To simulate virtual domains where all virtual
|
||||||
addresses are aliased to non-virtual addresses.
|
addresses are aliased to non-virtual addresses.
|
||||||
@@ -50,56 +50,6 @@ VIRTUAL(5) VIRTUAL(5)
|
|||||||
sions. In that case, the lookups are done in a slightly
|
sions. In that case, the lookups are done in a slightly
|
||||||
different way as described below.
|
different way as described below.
|
||||||
|
|
||||||
<b>SIMULATED</b> <b>VIRTUAL</b> <b>DOMAINS</b>
|
|
||||||
Besides virtual aliases, the virtual alias table can also
|
|
||||||
be used to simulate virtual domains. With a simulated vir-
|
|
||||||
tual domain, all recipient addresses are aliased to non-
|
|
||||||
virtual addresses. These non-virtual addresses may be
|
|
||||||
either local or remote.
|
|
||||||
|
|
||||||
Simulated virtual domains are not to be confused with the
|
|
||||||
true virtual domains that are implemented with the Postfix
|
|
||||||
<a href="virtual.8.html"><b>virtual</b>(8)</a> mail delivery agent. With true virtual domains,
|
|
||||||
each recipient address can have its own mailbox.
|
|
||||||
|
|
||||||
With a simulated virtual domain, the virtual domain has
|
|
||||||
its own user name space. Local (i.e. non-virtual) user-
|
|
||||||
names are not visible in a simulated virtual domain. In
|
|
||||||
particular, local <a href="aliases.5.html"><b>aliases</b>(5)</a> and local mailing lists are
|
|
||||||
not visible as <i>localname@simulated.domain</i>.
|
|
||||||
|
|
||||||
Support for a simulated virtual domain looks like:
|
|
||||||
|
|
||||||
/etc/postfix/main.cf:
|
|
||||||
virtual_alias_maps = hash:/etc/postfix/virtual
|
|
||||||
|
|
||||||
Note: some systems use <b>dbm</b> databases instead of <b>hash</b>.
|
|
||||||
See the output from <b>postconf</b> <b>-m</b> for available database
|
|
||||||
types.
|
|
||||||
|
|
||||||
/etc/postfix/virtual:
|
|
||||||
<i>simulated.domain</i> <i>anything</i> (right-hand content does not matter)
|
|
||||||
<i>postmaster@simulated.domain</i> <i>postmaster</i>
|
|
||||||
<i>user1@simulated.domain</i> <i>address1</i>
|
|
||||||
<i>user2@simulated.domain</i> <i>address2,</i> <i>address3</i>
|
|
||||||
|
|
||||||
The <i>simulated.domain</i> <i>anything</i> entry is required for a sim-
|
|
||||||
ulated virtual domain. Without this entry, mail will be
|
|
||||||
rejected with a "relay access denied" error condition.
|
|
||||||
|
|
||||||
Do not list a simulated virtual domain name in the <b>main.cf</b>
|
|
||||||
<b>mydestination</b> configuration parameter.
|
|
||||||
|
|
||||||
With a simulated virtual domain, the Postfix SMTP server
|
|
||||||
accepts mail for <i>known-user@simulated.domain</i>, and rejects
|
|
||||||
mail for <i>unknown-user</i>@<i>simulated.domain</i> as undeliverable.
|
|
||||||
|
|
||||||
Instead of specifying the simulated virtual domain name
|
|
||||||
via the <b>virtual</b><i>_</i><b>alias</b><i>_</i><b>maps</b> table, you may also specify it
|
|
||||||
via the <b>main.cf</b> <b>virtual</b><i>_</i><b>alias</b><i>_</i><b>domains</b> configuration param-
|
|
||||||
eter. This latter parameter uses the same syntax as the
|
|
||||||
<b>main.cf</b> <b>mydestination</b> configuration parameter.
|
|
||||||
|
|
||||||
<b>TABLE</b> <b>FORMAT</b>
|
<b>TABLE</b> <b>FORMAT</b>
|
||||||
The format of the virtual table is as follows, mappings
|
The format of the virtual table is as follows, mappings
|
||||||
being tried in the order as listed in this manual page:
|
being tried in the order as listed in this manual page:
|
||||||
@@ -152,6 +102,56 @@ VIRTUAL(5) VIRTUAL(5)
|
|||||||
@<i>domain</i>. An unmatched address extension (<i>+foo</i>) is propa-
|
@<i>domain</i>. An unmatched address extension (<i>+foo</i>) is propa-
|
||||||
gated to the result of table lookup.
|
gated to the result of table lookup.
|
||||||
|
|
||||||
|
<b>SIMULATED</b> <b>VIRTUAL</b> <b>DOMAINS</b>
|
||||||
|
Besides virtual aliases, the virtual alias table can also
|
||||||
|
be used to simulate virtual domains. With a simulated vir-
|
||||||
|
tual domain, all recipient addresses are aliased to non-
|
||||||
|
virtual addresses. These non-virtual addresses may be
|
||||||
|
either local or remote.
|
||||||
|
|
||||||
|
Simulated virtual domains are not to be confused with the
|
||||||
|
true virtual domains that are implemented with the Postfix
|
||||||
|
<a href="virtual.8.html"><b>virtual</b>(8)</a> mail delivery agent. With true virtual domains,
|
||||||
|
each recipient address can have its own mailbox.
|
||||||
|
|
||||||
|
With a simulated virtual domain, the virtual domain has
|
||||||
|
its own user name space. Local (i.e. non-virtual) user-
|
||||||
|
names are not visible in a simulated virtual domain. In
|
||||||
|
particular, local <a href="aliases.5.html"><b>aliases</b>(5)</a> and local mailing lists are
|
||||||
|
not visible as <i>localname@simulated.domain</i>.
|
||||||
|
|
||||||
|
Support for a simulated virtual domain looks like:
|
||||||
|
|
||||||
|
/etc/postfix/main.cf:
|
||||||
|
virtual_alias_maps = hash:/etc/postfix/virtual
|
||||||
|
|
||||||
|
Note: some systems use <b>dbm</b> databases instead of <b>hash</b>.
|
||||||
|
See the output from <b>postconf</b> <b>-m</b> for available database
|
||||||
|
types.
|
||||||
|
|
||||||
|
/etc/postfix/virtual:
|
||||||
|
<i>simulated.domain</i> <i>anything</i> (right-hand content does not matter)
|
||||||
|
<i>postmaster@simulated.domain</i> <i>postmaster</i>
|
||||||
|
<i>user1@simulated.domain</i> <i>address1</i>
|
||||||
|
<i>user2@simulated.domain</i> <i>address2,</i> <i>address3</i>
|
||||||
|
|
||||||
|
The <i>simulated.domain</i> <i>anything</i> entry is required for a sim-
|
||||||
|
ulated virtual domain. Without this entry, mail will be
|
||||||
|
rejected with a "relay access denied" error condition.
|
||||||
|
|
||||||
|
Do not list a simulated virtual domain name in the <b>main.cf</b>
|
||||||
|
<b>mydestination</b> configuration parameter.
|
||||||
|
|
||||||
|
With a simulated virtual domain, the Postfix SMTP server
|
||||||
|
accepts mail for <i>known-user@simulated.domain</i>, and rejects
|
||||||
|
mail for <i>unknown-user</i>@<i>simulated.domain</i> as undeliverable.
|
||||||
|
|
||||||
|
Instead of specifying the simulated virtual domain name
|
||||||
|
via the <b>virtual</b><i>_</i><b>alias</b><i>_</i><b>maps</b> table, you may also specify it
|
||||||
|
via the <b>main.cf</b> <b>virtual</b><i>_</i><b>alias</b><i>_</i><b>domains</b> configuration param-
|
||||||
|
eter. This latter parameter uses the same syntax as the
|
||||||
|
<b>main.cf</b> <b>mydestination</b> configuration parameter.
|
||||||
|
|
||||||
<b>REGULAR</b> <b>EXPRESSION</b> <b>TABLES</b>
|
<b>REGULAR</b> <b>EXPRESSION</b> <b>TABLES</b>
|
||||||
This section describes how the table lookups change when
|
This section describes how the table lookups change when
|
||||||
the table is given in the form of regular expressions. For
|
the table is given in the form of regular expressions. For
|
||||||
|
@@ -40,9 +40,11 @@ VIRTUAL(8) VIRTUAL(8)
|
|||||||
The <b>virtual</b> delivery agent prepends a "<b>From</b> <i>sender</i>
|
The <b>virtual</b> delivery agent prepends a "<b>From</b> <i>sender</i>
|
||||||
<i>time_stamp</i>" envelope header to each message, prepends a
|
<i>time_stamp</i>" envelope header to each message, prepends a
|
||||||
<b>Delivered-To:</b> message header with the envelope recipient
|
<b>Delivered-To:</b> message header with the envelope recipient
|
||||||
address, prepends a <b>Return-Path:</b> message header with the
|
address, prepends an <b>X-Original-To:</b> header with the recip-
|
||||||
envelope sender address, prepends a > character to lines
|
ient address as given to Postfix, prepends a <b>Return-Path:</b>
|
||||||
beginning with "<b>From</b> ", and appends an empty line.
|
message header with the envelope sender address, prepends
|
||||||
|
a > character to lines beginning with "<b>From</b> ", and appends
|
||||||
|
an empty line.
|
||||||
|
|
||||||
The mailbox is locked for exclusive access while delivery
|
The mailbox is locked for exclusive access while delivery
|
||||||
is in progress. In case of problems, an attempt is made to
|
is in progress. In case of problems, an attempt is made to
|
||||||
|
@@ -49,7 +49,7 @@ a map.
|
|||||||
.IP \fB-i\fR
|
.IP \fB-i\fR
|
||||||
Incremental mode. Read entries from standard input and do not
|
Incremental mode. Read entries from standard input and do not
|
||||||
truncate an existing database. By default, \fBpostalias\fR creates
|
truncate an existing database. By default, \fBpostalias\fR creates
|
||||||
a new database from the entries in \fBfile_name\fR.
|
a new database from the entries in \fIfile_name\fR.
|
||||||
.IP \fB-n\fR
|
.IP \fB-n\fR
|
||||||
Don't include the terminating null character that terminates lookup
|
Don't include the terminating null character that terminates lookup
|
||||||
keys and values. By default, Postfix does whatever is the default for
|
keys and values. By default, Postfix does whatever is the default for
|
||||||
@@ -101,7 +101,7 @@ parameter.
|
|||||||
The default value for this parameter depends on the host environment.
|
The default value for this parameter depends on the host environment.
|
||||||
.RE
|
.RE
|
||||||
.IP \fIfile_name\fR
|
.IP \fIfile_name\fR
|
||||||
The name of the alias database source file when rebuilding a database.
|
The name of the alias database source file when creating a database.
|
||||||
.SH DIAGNOSTICS
|
.SH DIAGNOSTICS
|
||||||
.ad
|
.ad
|
||||||
.fi
|
.fi
|
||||||
@@ -129,8 +129,8 @@ Enable verbose logging for debugging purposes.
|
|||||||
The following \fBmain.cf\fR parameters are especially relevant to
|
The following \fBmain.cf\fR parameters are especially relevant to
|
||||||
this program. See the Postfix \fBmain.cf\fR file for syntax details
|
this program. See the Postfix \fBmain.cf\fR file for syntax details
|
||||||
and for default values.
|
and for default values.
|
||||||
.IP \fdefault_Bdatabase_type\fR
|
.IP \fBdefault_database_type\fR
|
||||||
Default alias database type. On many UNIX systems, the default type
|
Default database type. On many UNIX systems, the default type
|
||||||
is either \fBdbm\fR or \fBhash\fR.
|
is either \fBdbm\fR or \fBhash\fR.
|
||||||
.IP \fBberkeley_db_create_buffer_size\fR
|
.IP \fBberkeley_db_create_buffer_size\fR
|
||||||
Amount of buffer memory to be used when creating a Berkeley DB
|
Amount of buffer memory to be used when creating a Berkeley DB
|
||||||
|
@@ -18,7 +18,7 @@ Postfix configuration utility
|
|||||||
.ad
|
.ad
|
||||||
.fi
|
.fi
|
||||||
The \fBpostconf\fR command prints the actual value of
|
The \fBpostconf\fR command prints the actual value of
|
||||||
\fIparameter\fR (all known parameters by default), one
|
\fIparameter\fR (all known parameters by default) one
|
||||||
parameter per line, changes its value, or prints other
|
parameter per line, changes its value, or prints other
|
||||||
information about the Postfix mail system.
|
information about the Postfix mail system.
|
||||||
|
|
||||||
|
@@ -9,8 +9,7 @@ Postfix control program
|
|||||||
.na
|
.na
|
||||||
.nf
|
.nf
|
||||||
.fi
|
.fi
|
||||||
\fBpostfix\fR [\fB-c \fIconfig_dir\fR] [\fB-D\fR] [\fB-v\fR]
|
\fBpostfix\fR [\fB-Dv\fR] [\fB-c \fIconfig_dir\fR] \fIcommand\fR
|
||||||
\fIcommand\fR
|
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
.ad
|
.ad
|
||||||
.fi
|
.fi
|
||||||
@@ -67,21 +66,17 @@ options make the software increasingly verbose.
|
|||||||
.nf
|
.nf
|
||||||
.ad
|
.ad
|
||||||
.fi
|
.fi
|
||||||
The \fBpostfix\fR command sets the following environment
|
The \fBpostfix\fR command exports the following environment
|
||||||
variables:
|
variables before executing the \fBpostfix-script\fR file:
|
||||||
.IP \fBMAIL_CONFIG\fR
|
.IP \fBMAIL_CONFIG\fR
|
||||||
Directory with Postfix configuration files.
|
This is set when the -c command-line option is present.
|
||||||
.IP \fBMAIL_VERBOSE\fR
|
.IP \fBMAIL_VERBOSE\fR
|
||||||
This is set when the -v command-line option is present.
|
This is set when the -v command-line option is present.
|
||||||
.IP \fBMAIL_DEBUG\fR
|
.IP \fBMAIL_DEBUG\fR
|
||||||
This is set when the -D command-line option is present.
|
This is set when the -D command-line option is present.
|
||||||
.SH CONFIGURATION PARAMETERS
|
.PP
|
||||||
.na
|
The following \fBmain.cf\fR configuration parameters are
|
||||||
.nf
|
exported as environment variables with the same names:
|
||||||
.ad
|
|
||||||
.fi
|
|
||||||
The following \fBmain.cf\fR configuration parameters are made
|
|
||||||
available as process environment variables with the same names:
|
|
||||||
.IP \fBcommand_directory\fR
|
.IP \fBcommand_directory\fR
|
||||||
Directory with Postfix administrative commands.
|
Directory with Postfix administrative commands.
|
||||||
.IP \fBdaemon_directory\fR
|
.IP \fBdaemon_directory\fR
|
||||||
@@ -98,11 +93,11 @@ The owner of Postfix queue files and of most Postfix processes.
|
|||||||
.IP \fBsetgid_group\fR
|
.IP \fBsetgid_group\fR
|
||||||
The group for mail submission and queue management commands.
|
The group for mail submission and queue management commands.
|
||||||
.IP \fBsendmail_path
|
.IP \fBsendmail_path
|
||||||
The full pathname for the Postfix sendmail command.
|
The full pathname for the Postfix \fBsendmail\fR command.
|
||||||
.IP \fBnewaliases_path
|
.IP \fBnewaliases_path
|
||||||
The full pathname for the Postfix newaliases command.
|
The full pathname for the Postfix \fBnewaliases\fR command.
|
||||||
.IP \fBmailq_path
|
.IP \fBmailq_path
|
||||||
The full pathname for the Postfix mailq command.
|
The full pathname for the Postfix \fBmailq\fR command.
|
||||||
.IP \fBmanpage_directory
|
.IP \fBmanpage_directory
|
||||||
The directory for the Postfix on-line manual pages.
|
The directory for the Postfix on-line manual pages.
|
||||||
.IP \fBsample_directory
|
.IP \fBsample_directory
|
||||||
|
@@ -140,8 +140,8 @@ Non-default alias database. Specify \fIpathname\fR or
|
|||||||
details.
|
details.
|
||||||
.IP "\fB-o7\fR (ignored)"
|
.IP "\fB-o7\fR (ignored)"
|
||||||
.IP "\fB-o8\fR (ignored)"
|
.IP "\fB-o8\fR (ignored)"
|
||||||
The message body type. Currently, Postfix implements
|
To send 8-bit or binary content, use an appropriate MIME encapsulation
|
||||||
\fBjust-send-eight\fR.
|
and specify the appropriate \fB-B\fR command-line option.
|
||||||
.IP "\fB-oi\fR"
|
.IP "\fB-oi\fR"
|
||||||
When reading a message from standard input, don\'t treat a line
|
When reading a message from standard input, don\'t treat a line
|
||||||
with only a \fB.\fR character as the end of input.
|
with only a \fB.\fR character as the end of input.
|
||||||
|
@@ -125,7 +125,7 @@ Accept the address etc. that matches the pattern.
|
|||||||
An all-numerical result is treated as OK. This format is
|
An all-numerical result is treated as OK. This format is
|
||||||
generated by address-based relay authorization schemes.
|
generated by address-based relay authorization schemes.
|
||||||
.IP \fBDUNNO\fR
|
.IP \fBDUNNO\fR
|
||||||
Pretend that the lookup key was not found in this table, to
|
Pretend that the lookup key was not found in this table. This
|
||||||
prevents Postfix from trying substrings of the lookup key
|
prevents Postfix from trying substrings of the lookup key
|
||||||
(such as a subdomain name, or a network address subnetwork).
|
(such as a subdomain name, or a network address subnetwork).
|
||||||
.IP \fBHOLD\fR
|
.IP \fBHOLD\fR
|
||||||
|
@@ -71,7 +71,7 @@ listed below:
|
|||||||
\fIuser\fR@\fIdomain\fR is replaced by \fIaddress\fR. This form
|
\fIuser\fR@\fIdomain\fR is replaced by \fIaddress\fR. This form
|
||||||
has the highest precedence.
|
has the highest precedence.
|
||||||
.sp
|
.sp
|
||||||
This form useful to clean up addresses produced by legacy mail systems.
|
This is useful to clean up addresses produced by legacy mail systems.
|
||||||
It can also be used to produce \fIFirstname.Lastname\fR style
|
It can also be used to produce \fIFirstname.Lastname\fR style
|
||||||
addresses, but see below for a simpler solution.
|
addresses, but see below for a simpler solution.
|
||||||
.IP "\fIuser address\fR"
|
.IP "\fIuser address\fR"
|
||||||
|
@@ -57,7 +57,7 @@ Toggles the case sensitivity flag. By default, matching is case
|
|||||||
insensitive.
|
insensitive.
|
||||||
.IP "\fBm\fR (default: off)"
|
.IP "\fBm\fR (default: off)"
|
||||||
Toggles the PCRE_MULTILINE flag. When this flag is on, the \fB^\fR
|
Toggles the PCRE_MULTILINE flag. When this flag is on, the \fB^\fR
|
||||||
and \fb$\fR metacharacters match immediately after and immediately
|
and \fB$\fR metacharacters match immediately after and immediately
|
||||||
before a newline character, respectively, in addition to
|
before a newline character, respectively, in addition to
|
||||||
matching at the start and end of the subject string.
|
matching at the start and end of the subject string.
|
||||||
.IP "\fBs\fR (default: on)"
|
.IP "\fBs\fR (default: on)"
|
||||||
|
@@ -59,6 +59,8 @@ such as \fBsmtp\fR or \fBlocal\fR. The \fInexthop\fR field
|
|||||||
specifies where and how to deliver mail. More details are given
|
specifies where and how to deliver mail. More details are given
|
||||||
in section "RESULT FORMAT".
|
in section "RESULT FORMAT".
|
||||||
.SH TABLE LOOKUP
|
.SH TABLE LOOKUP
|
||||||
|
.na
|
||||||
|
.nf
|
||||||
.ad
|
.ad
|
||||||
.fi
|
.fi
|
||||||
With lookups from indexed files such as DB or DBM, or from networked
|
With lookups from indexed files such as DB or DBM, or from networked
|
||||||
@@ -84,11 +86,23 @@ Otherwise, a domain name matches itself and its subdomains.
|
|||||||
Note 1: the special pattern \fB*\fR represents any address (i.e. it
|
Note 1: the special pattern \fB*\fR represents any address (i.e. it
|
||||||
functions as the wild-card pattern).
|
functions as the wild-card pattern).
|
||||||
|
|
||||||
Note 2: the null recipient address is looked up as the local
|
Note 2: the null recipient address is looked up as
|
||||||
mailer-daemon address (mailer-daemon@fully-qualified-domain-name).
|
\fB$empty_address_recipient\fR@\fB$myhostname\fR (default:
|
||||||
|
mailer-daemon@hostname).
|
||||||
.SH RESULT FORMAT
|
.SH RESULT FORMAT
|
||||||
|
.na
|
||||||
|
.nf
|
||||||
.ad
|
.ad
|
||||||
.fi
|
.fi
|
||||||
|
The transport field specifies the name of a mail delivery transport
|
||||||
|
(the first name of a mail delivery service entry in the Postfix
|
||||||
|
\fBmaster.cf\fR file).
|
||||||
|
|
||||||
|
The interpretation of the nexthop field is transport
|
||||||
|
dependent. In the case of SMTP, specify \fIhost\fR:\fIservice\fR for a
|
||||||
|
non-default server port, and use [\fIhost\fR] or [\fIhost\fR]:\fIport\fR
|
||||||
|
in order to disable MX (mail exchanger) DNS lookups. The [] form
|
||||||
|
can also be used with IP addresses instead of hostnames.
|
||||||
|
|
||||||
A null \fItransport\fR and null \fInexthop\fR result means "do
|
A null \fItransport\fR and null \fInexthop\fR result means "do
|
||||||
not change": use the delivery transport and nexthop information
|
not change": use the delivery transport and nexthop information
|
||||||
@@ -99,31 +113,32 @@ resets the nexthop information to the recipient domain.
|
|||||||
|
|
||||||
A null \fItransport\fR field with non-null \fInexthop\fR field
|
A null \fItransport\fR field with non-null \fInexthop\fR field
|
||||||
does not modify the transport information.
|
does not modify the transport information.
|
||||||
.SH TRANSPORT FIELD
|
.SH DEFAULT DELIVERY METHOD
|
||||||
|
.na
|
||||||
|
.nf
|
||||||
.ad
|
.ad
|
||||||
.fi
|
.fi
|
||||||
The transport field specifies the name of a mail delivery transport
|
When the recipient address or domain does not match a transport
|
||||||
(the first name of a mail delivery service entry in the Postfix
|
table entry, Postfix uses one of the following delivery methods,
|
||||||
\fBmaster.cf\fR file).
|
with the recipient domain as the default nexthop.
|
||||||
|
.IP \(bu
|
||||||
When a null transport field is specified, Postfix uses one of the
|
The recipient domain matches \fB$mydestination\fR or
|
||||||
following transports:
|
\fB$inet_interfaces\fR. The transport and optional nexthop
|
||||||
.IP \fB$local_transport\fR
|
are specified with \fB$local_transport\fR.
|
||||||
The domain matches \fB$mydestination\fR or \fB$inet_interfaces\fR.
|
.IP \(bu
|
||||||
.IP \fB$virtual_transport\fR
|
The recipient domain matches \fB$virtual_mailbox_domains\fR.
|
||||||
The domain matches \fB$virtual_mailbox_domains\fR.
|
The transport and optional nexthop are specified with
|
||||||
.IP \fB$relay_transport\fR
|
\fB$virtual_transport\fR.
|
||||||
The domain matches \fB$relay_transport\fR.
|
.IP \(bu
|
||||||
.IP \fB$default_transport\fR
|
The recipient domain matches \fB$relay_domains\fR. The
|
||||||
All other non-local, non-virtual destinations.
|
transport and optional nexthop are specified with
|
||||||
.SH NEXTHOP FIELD
|
\fB$relay_transport\fR. This overrides the nexthop information
|
||||||
.ad
|
that is specified with \fB$relayhost\fR.
|
||||||
.fi
|
.IP \(bu
|
||||||
The interpretation of the nexthop field is transport
|
All other destinations. the transport and optional nexthop are
|
||||||
dependent. In the case of SMTP, specify \fIhost\fR:\fIservice\fR for a
|
specified with \fB$relay_transport\fR.
|
||||||
non-default server port, and use [\fIhost\fR] or [\fIhost\fR]:\fIport\fR
|
This overrides the nexthop information that is specified with
|
||||||
in order to disable MX (mail exchanger) DNS lookups. The [] form
|
\fB$relayhost\fR.
|
||||||
can also be used with IP addresses instead of hostnames.
|
|
||||||
.SH EXAMPLES
|
.SH EXAMPLES
|
||||||
.na
|
.na
|
||||||
.nf
|
.nf
|
||||||
@@ -133,8 +148,7 @@ In order to deliver internal mail directly, while using a
|
|||||||
mail relay for all other mail, specify a null entry for
|
mail relay for all other mail, specify a null entry for
|
||||||
internal destinations (do not change the delivery transport or
|
internal destinations (do not change the delivery transport or
|
||||||
the nexthop information) and specify a wildcard for all other
|
the nexthop information) and specify a wildcard for all other
|
||||||
destinations. Note that for this trick to work you should
|
destinations.
|
||||||
not specify a \fBrelayhost\fR in the \fBmain.cf\fR file.
|
|
||||||
|
|
||||||
.ti +5
|
.ti +5
|
||||||
\fB\&my.domain :\fR
|
\fB\&my.domain :\fR
|
||||||
@@ -219,6 +233,8 @@ The following \fBmain.cf\fR parameters are especially relevant to
|
|||||||
this topic. See the Postfix \fBmain.cf\fR file for syntax details
|
this topic. See the Postfix \fBmain.cf\fR file for syntax details
|
||||||
and for default values. Use the \fBpostfix reload\fR command after
|
and for default values. Use the \fBpostfix reload\fR command after
|
||||||
a configuration change.
|
a configuration change.
|
||||||
|
.IP \fBempty_address_recipient\fR
|
||||||
|
The address that is looked up instead of the null sender address.
|
||||||
.IP \fBparent_domain_matches_subdomains\fR
|
.IP \fBparent_domain_matches_subdomains\fR
|
||||||
List of Postfix features that use \fIdomain.tld\fR patterns
|
List of Postfix features that use \fIdomain.tld\fR patterns
|
||||||
to match \fIsub.domain.tld\fR (as opposed to
|
to match \fIsub.domain.tld\fR (as opposed to
|
||||||
|
@@ -22,7 +22,7 @@ is recursive, and is done by the Postfix \fBcleanup\fR(8) daemon.
|
|||||||
|
|
||||||
The main applications of virtual aliasing are:
|
The main applications of virtual aliasing are:
|
||||||
.IP \(bu
|
.IP \(bu
|
||||||
To redirect mail from one address to one or more other addresses.
|
To redirect mail for one address to one or more addresses.
|
||||||
.IP \(bu
|
.IP \(bu
|
||||||
To simulate virtual domains where all virtual addresses are aliased
|
To simulate virtual domains where all virtual addresses are aliased
|
||||||
to non-virtual addresses.
|
to non-virtual addresses.
|
||||||
@@ -49,6 +49,54 @@ or SQL, the same lookups are done as for ordinary indexed files.
|
|||||||
Alternatively, the table can be provided as a regular-expression
|
Alternatively, the table can be provided as a regular-expression
|
||||||
map where patterns are given as regular expressions. In that case,
|
map where patterns are given as regular expressions. In that case,
|
||||||
the lookups are done in a slightly different way as described below.
|
the lookups are done in a slightly different way as described below.
|
||||||
|
.SH TABLE FORMAT
|
||||||
|
.na
|
||||||
|
.nf
|
||||||
|
.ad
|
||||||
|
.fi
|
||||||
|
The format of the virtual table is as follows, mappings being
|
||||||
|
tried in the order as listed in this manual page:
|
||||||
|
.IP "\fIpattern result\fR"
|
||||||
|
When \fIpattern\fR matches a mail address, replace it by the
|
||||||
|
corresponding \fIresult\fR.
|
||||||
|
.IP "blank lines and comments"
|
||||||
|
Empty lines and whitespace-only lines are ignored, as
|
||||||
|
are lines whose first non-whitespace character is a `#'.
|
||||||
|
.IP "multi-line text"
|
||||||
|
A logical line starts with non-whitespace text. A line that
|
||||||
|
starts with whitespace continues a logical line.
|
||||||
|
.PP
|
||||||
|
With lookups from indexed files such as DB or DBM, or from networked
|
||||||
|
tables such as NIS, LDAP or SQL, patterns are tried in the order as
|
||||||
|
listed below:
|
||||||
|
.IP "\fIuser\fR@\fIdomain address, address, ...\fR"
|
||||||
|
Mail for \fIuser\fR@\fIdomain\fR is redirected to \fIaddress\fR.
|
||||||
|
This form has the highest precedence.
|
||||||
|
.IP "\fIuser address, address, ...\fR"
|
||||||
|
Mail for \fIuser\fR@\fIsite\fR is redirected to \fIaddress\fR when
|
||||||
|
\fIsite\fR is equal to $\fBmyorigin\fR, when \fIsite\fR is listed in
|
||||||
|
$\fRmydestination\fR, or when it is listed in $\fIinet_interfaces\fR.
|
||||||
|
.sp
|
||||||
|
This functionality overlaps with functionality of the local
|
||||||
|
\fIaliases\fR(5) database. The difference is that \fBvirtual\fR
|
||||||
|
mapping can be applied to non-local addresses.
|
||||||
|
.IP "@\fIdomain address, address, ...\fR"
|
||||||
|
Mail for any user in \fIdomain\fR is redirected to \fIaddress\fR.
|
||||||
|
This form has the lowest precedence.
|
||||||
|
.PP
|
||||||
|
In all the above forms, when \fIaddress\fR has the form
|
||||||
|
@\fIotherdomain\fR, the result is the same user in \fIotherdomain\fR.
|
||||||
|
This works for the first address in the expansion only.
|
||||||
|
.SH ADDRESS EXTENSION
|
||||||
|
.na
|
||||||
|
.nf
|
||||||
|
.fi
|
||||||
|
.ad
|
||||||
|
When a mail address localpart contains the optional recipient delimiter
|
||||||
|
(e.g., \fIuser+foo\fR@\fIdomain\fR), the lookup order becomes:
|
||||||
|
\fIuser+foo\fR@\fIdomain\fR, \fIuser\fR@\fIdomain\fR, \fIuser+foo\fR,
|
||||||
|
\fIuser\fR, and @\fIdomain\fR. An unmatched address extension
|
||||||
|
(\fI+foo\fR) is propagated to the result of table lookup.
|
||||||
.SH SIMULATED VIRTUAL DOMAINS
|
.SH SIMULATED VIRTUAL DOMAINS
|
||||||
.na
|
.na
|
||||||
.nf
|
.nf
|
||||||
@@ -108,54 +156,6 @@ the \fBvirtual_alias_maps\fR table, you may also specify it via
|
|||||||
the \fBmain.cf virtual_alias_domains\fR configuration parameter.
|
the \fBmain.cf virtual_alias_domains\fR configuration parameter.
|
||||||
This latter parameter uses the same syntax as the \fBmain.cf
|
This latter parameter uses the same syntax as the \fBmain.cf
|
||||||
mydestination\fR configuration parameter.
|
mydestination\fR configuration parameter.
|
||||||
.SH TABLE FORMAT
|
|
||||||
.na
|
|
||||||
.nf
|
|
||||||
.ad
|
|
||||||
.fi
|
|
||||||
The format of the virtual table is as follows, mappings being
|
|
||||||
tried in the order as listed in this manual page:
|
|
||||||
.IP "\fIpattern result\fR"
|
|
||||||
When \fIpattern\fR matches a mail address, replace it by the
|
|
||||||
corresponding \fIresult\fR.
|
|
||||||
.IP "blank lines and comments"
|
|
||||||
Empty lines and whitespace-only lines are ignored, as
|
|
||||||
are lines whose first non-whitespace character is a `#'.
|
|
||||||
.IP "multi-line text"
|
|
||||||
A logical line starts with non-whitespace text. A line that
|
|
||||||
starts with whitespace continues a logical line.
|
|
||||||
.PP
|
|
||||||
With lookups from indexed files such as DB or DBM, or from networked
|
|
||||||
tables such as NIS, LDAP or SQL, patterns are tried in the order as
|
|
||||||
listed below:
|
|
||||||
.IP "\fIuser\fR@\fIdomain address, address, ...\fR"
|
|
||||||
Mail for \fIuser\fR@\fIdomain\fR is redirected to \fIaddress\fR.
|
|
||||||
This form has the highest precedence.
|
|
||||||
.IP "\fIuser address, address, ...\fR"
|
|
||||||
Mail for \fIuser\fR@\fIsite\fR is redirected to \fIaddress\fR when
|
|
||||||
\fIsite\fR is equal to $\fBmyorigin\fR, when \fIsite\fR is listed in
|
|
||||||
$\fRmydestination\fR, or when it is listed in $\fIinet_interfaces\fR.
|
|
||||||
.sp
|
|
||||||
This functionality overlaps with functionality of the local
|
|
||||||
\fIaliases\fR(5) database. The difference is that \fBvirtual\fR
|
|
||||||
mapping can be applied to non-local addresses.
|
|
||||||
.IP "@\fIdomain address, address, ...\fR"
|
|
||||||
Mail for any user in \fIdomain\fR is redirected to \fIaddress\fR.
|
|
||||||
This form has the lowest precedence.
|
|
||||||
.PP
|
|
||||||
In all the above forms, when \fIaddress\fR has the form
|
|
||||||
@\fIotherdomain\fR, the result is the same user in \fIotherdomain\fR.
|
|
||||||
This works for the first address in the expansion only.
|
|
||||||
.SH ADDRESS EXTENSION
|
|
||||||
.na
|
|
||||||
.nf
|
|
||||||
.fi
|
|
||||||
.ad
|
|
||||||
When a mail address localpart contains the optional recipient delimiter
|
|
||||||
(e.g., \fIuser+foo\fR@\fIdomain\fR), the lookup order becomes:
|
|
||||||
\fIuser+foo\fR@\fIdomain\fR, \fIuser\fR@\fIdomain\fR, \fIuser+foo\fR,
|
|
||||||
\fIuser\fR, and @\fIdomain\fR. An unmatched address extension
|
|
||||||
(\fI+foo\fR) is propagated to the result of table lookup.
|
|
||||||
.SH REGULAR EXPRESSION TABLES
|
.SH REGULAR EXPRESSION TABLES
|
||||||
.na
|
.na
|
||||||
.nf
|
.nf
|
||||||
|
@@ -164,9 +164,11 @@ Address mapping lookup table for envelope recipient addresses.
|
|||||||
.ad
|
.ad
|
||||||
.fi
|
.fi
|
||||||
.IP \fBduplicate_filter_limit\fR
|
.IP \fBduplicate_filter_limit\fR
|
||||||
Limit the number of envelope recipients that are remembered.
|
Limits the number of envelope recipients that are remembered.
|
||||||
|
.IP \fBheader_address_token_limit\fR
|
||||||
|
Limits the number of address tokens used to process a message header.
|
||||||
.IP \fBheader_size_limit\fR
|
.IP \fBheader_size_limit\fR
|
||||||
Limit the amount of memory in bytes used to process a message header.
|
Limits the amount of memory in bytes used to process a message header.
|
||||||
.IP \fBin_flow_delay\fR
|
.IP \fBin_flow_delay\fR
|
||||||
Amount of time to pause before accepting a message, when the
|
Amount of time to pause before accepting a message, when the
|
||||||
message arrival rate exceeds the message delivery rate.
|
message arrival rate exceeds the message delivery rate.
|
||||||
|
@@ -185,8 +185,9 @@ The entire recipient address.
|
|||||||
The entire sender address.
|
The entire sender address.
|
||||||
.PP
|
.PP
|
||||||
The \fBPATH\fR environment variable is always reset to a
|
The \fBPATH\fR environment variable is always reset to a
|
||||||
system-dependent default path, and the \fBTZ\fR (time zone)
|
system-dependent default path, and environment variables
|
||||||
environment variable is always passed on without change.
|
whose names are blessed by the \fBexport_environment\fR
|
||||||
|
configureation parameter are exported unchanged.
|
||||||
|
|
||||||
The current working directory is the mail queue directory.
|
The current working directory is the mail queue directory.
|
||||||
|
|
||||||
@@ -228,7 +229,10 @@ is made to truncate a regular file to its original length.
|
|||||||
|
|
||||||
In the case of \fBmaildir\fR delivery, the local daemon prepends
|
In the case of \fBmaildir\fR delivery, the local daemon prepends
|
||||||
an optional
|
an optional
|
||||||
\fBDelivered-To:\fR header with the envelope recipient address.
|
\fBDelivered-To:\fR header with the envelope recipient address, and
|
||||||
|
prepends an
|
||||||
|
\fBX-Original-To:\fR header with the recipient address as given to
|
||||||
|
Postfix.
|
||||||
The envelope sender address is available in the \fBReturn-Path:\fR
|
The envelope sender address is available in the \fBReturn-Path:\fR
|
||||||
header.
|
header.
|
||||||
.SH ADDRESS EXTENSION
|
.SH ADDRESS EXTENSION
|
||||||
|
@@ -9,8 +9,8 @@ Postfix master process
|
|||||||
.na
|
.na
|
||||||
.nf
|
.nf
|
||||||
.fi
|
.fi
|
||||||
\fBmaster\fR [\fB-c \fIconfig_dir\fR] [\fB-e \fIexit_time\fR]
|
\fBmaster\fR [\fB-Dtv\fR] [\fB-c \fIconfig_dir\fR]
|
||||||
[\fB-D\fR] [\fB-t\fR] [\fB-v\fR]
|
[\fB-e \fIexit_time\fR]
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
.ad
|
.ad
|
||||||
.fi
|
.fi
|
||||||
|
@@ -29,13 +29,12 @@ None. The \fBpickup\fR daemon does not interact with the outside world.
|
|||||||
.nf
|
.nf
|
||||||
.ad
|
.ad
|
||||||
.fi
|
.fi
|
||||||
The \fBpickup\fR daemon runs with superuser privileges so that it
|
The \fBpickup\fR daemon is moderately security sensitive. It runs
|
||||||
1) can open a queue file with the rights of the submitting user
|
with fixed low privilege and can run in a chrooted environment.
|
||||||
and 2) can access the Postfix private IPC channels.
|
However, the program reads files from potentially hostile users.
|
||||||
On the positive side, the program can run chrooted, opens no files
|
The \fBpickup\fR daemon opens no files for writing, is careful about
|
||||||
for writing, is careful about what files it opens for reading, and
|
what files it opens for reading, and does not actually touch any data
|
||||||
does not actually touch any data that is sent to its public service
|
that is sent to its public service endpoint.
|
||||||
endpoint.
|
|
||||||
.SH DIAGNOSTICS
|
.SH DIAGNOSTICS
|
||||||
.ad
|
.ad
|
||||||
.fi
|
.fi
|
||||||
@@ -67,8 +66,6 @@ a Postfix transport table.
|
|||||||
.fi
|
.fi
|
||||||
.IP \fBalways_bcc\fR
|
.IP \fBalways_bcc\fR
|
||||||
Address to send a copy of each message that enters the system.
|
Address to send a copy of each message that enters the system.
|
||||||
.IP \fBmail_owner\fR
|
|
||||||
The process privileges used while not opening a \fBmaildrop\fR file.
|
|
||||||
.IP \fBqueue_directory\fR
|
.IP \fBqueue_directory\fR
|
||||||
Top-level directory of the Postfix queue.
|
Top-level directory of the Postfix queue.
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
|
@@ -95,7 +95,7 @@ storage for sender and recipient address information.
|
|||||||
.SH Tarpitting
|
.SH Tarpitting
|
||||||
.ad
|
.ad
|
||||||
.fi
|
.fi
|
||||||
.IP \fBqmqpd_error_sleep_time\fR
|
.IP \fBqmqpd_error_delay\fR
|
||||||
Time to wait in seconds before informing the client of
|
Time to wait in seconds before informing the client of
|
||||||
a problem. This slows down run-away errors.
|
a problem. This slows down run-away errors.
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
|
@@ -28,7 +28,7 @@ Resolve an address to a (\fItransport\fR, \fInexthop\fR,
|
|||||||
The delivery agent to use. This is the first field of an entry
|
The delivery agent to use. This is the first field of an entry
|
||||||
in the \fBmaster.cf\fR file.
|
in the \fBmaster.cf\fR file.
|
||||||
.IP \fInexthop\fR
|
.IP \fInexthop\fR
|
||||||
The host to send to. For local delivery this is an empty string.
|
The host to send to and optional delivery method information.
|
||||||
.IP \fIrecipient\fR
|
.IP \fIrecipient\fR
|
||||||
The envelope recipient address that is passed on to \fInexthop\fR.
|
The envelope recipient address that is passed on to \fInexthop\fR.
|
||||||
.PP
|
.PP
|
||||||
@@ -72,18 +72,21 @@ a configuration change.
|
|||||||
.SH Miscellaneous
|
.SH Miscellaneous
|
||||||
.ad
|
.ad
|
||||||
.fi
|
.fi
|
||||||
|
.IP \fBempty_address_recipient\fR
|
||||||
|
The recipient that is substituted for the null address.
|
||||||
.IP \fBinet_interfaces\fR
|
.IP \fBinet_interfaces\fR
|
||||||
The network interfaces that this mail system receives mail on.
|
The network interfaces that this mail system receives mail on.
|
||||||
This information is used to determine if
|
This information is used to determine if
|
||||||
\fIuser\fR@[\fInet.work.addr.ess\fR] is local or remote.
|
\fIuser\fR@[\fInet.work.addr.ess\fR] is local or remote.
|
||||||
|
Mail for local users is given to the \fB$local_transport\fR.
|
||||||
.IP \fBmydestination\fR
|
.IP \fBmydestination\fR
|
||||||
List of domains that are given to the \fB$local_transport\fR.
|
List of domains that are given to the \fB$local_transport\fR.
|
||||||
.IP \fBvirtual_alias_domains\fT
|
.IP \fBvirtual_alias_domains\fR
|
||||||
List of simulated virtual domains (domains with all recipients
|
List of simulated virtual domains (domains with all recipients
|
||||||
aliased to some other local or remote domain).
|
aliased to some other local or remote domain).
|
||||||
.IP \fBvirtual_mailbox_domains\fT
|
.IP \fBvirtual_mailbox_domains\fR
|
||||||
List of domains that are given to the \fB$virtual_transport\fR.
|
List of domains that are given to the \fB$virtual_transport\fR.
|
||||||
.IP \fBrelay_domains\fT
|
.IP \fBrelay_domains\fR
|
||||||
List of domains that are given to the \fB$relay_transport\fR.
|
List of domains that are given to the \fB$relay_transport\fR.
|
||||||
.IP \fBresolve_unquoted_address\fR
|
.IP \fBresolve_unquoted_address\fR
|
||||||
When resolving an address, do not quote the address localpart as
|
When resolving an address, do not quote the address localpart as
|
||||||
|
@@ -49,7 +49,10 @@ messages in one textfile.
|
|||||||
The \fBvirtual\fR delivery agent prepends a "\fBFrom \fIsender
|
The \fBvirtual\fR delivery agent prepends a "\fBFrom \fIsender
|
||||||
time_stamp\fR" envelope header to each message, prepends a
|
time_stamp\fR" envelope header to each message, prepends a
|
||||||
\fBDelivered-To:\fR message header with the envelope recipient
|
\fBDelivered-To:\fR message header with the envelope recipient
|
||||||
address, prepends a \fBReturn-Path:\fR message header with the
|
address,
|
||||||
|
prepends an \fBX-Original-To:\fR header with the recipient address as
|
||||||
|
given to Postfix,
|
||||||
|
prepends a \fBReturn-Path:\fR message header with the
|
||||||
envelope sender address, prepends a \fB>\fR character to lines
|
envelope sender address, prepends a \fB>\fR character to lines
|
||||||
beginning with "\fBFrom \fR", and appends an empty line.
|
beginning with "\fBFrom \fR", and appends an empty line.
|
||||||
|
|
||||||
|
@@ -109,7 +109,7 @@
|
|||||||
# An all-numerical result is treated as OK. This format is
|
# An all-numerical result is treated as OK. This format is
|
||||||
# generated by address-based relay authorization schemes.
|
# generated by address-based relay authorization schemes.
|
||||||
# .IP \fBDUNNO\fR
|
# .IP \fBDUNNO\fR
|
||||||
# Pretend that the lookup key was not found in this table, to
|
# Pretend that the lookup key was not found in this table. This
|
||||||
# prevents Postfix from trying substrings of the lookup key
|
# prevents Postfix from trying substrings of the lookup key
|
||||||
# (such as a subdomain name, or a network address subnetwork).
|
# (such as a subdomain name, or a network address subnetwork).
|
||||||
# .IP \fBHOLD\fR
|
# .IP \fBHOLD\fR
|
||||||
|
@@ -63,7 +63,7 @@
|
|||||||
# \fIuser\fR@\fIdomain\fR is replaced by \fIaddress\fR. This form
|
# \fIuser\fR@\fIdomain\fR is replaced by \fIaddress\fR. This form
|
||||||
# has the highest precedence.
|
# has the highest precedence.
|
||||||
# .sp
|
# .sp
|
||||||
# This form useful to clean up addresses produced by legacy mail systems.
|
# This is useful to clean up addresses produced by legacy mail systems.
|
||||||
# It can also be used to produce \fIFirstname.Lastname\fR style
|
# It can also be used to produce \fIFirstname.Lastname\fR style
|
||||||
# addresses, but see below for a simpler solution.
|
# addresses, but see below for a simpler solution.
|
||||||
# .IP "\fIuser address\fR"
|
# .IP "\fIuser address\fR"
|
||||||
|
@@ -51,7 +51,7 @@
|
|||||||
# insensitive.
|
# insensitive.
|
||||||
# .IP "\fBm\fR (default: off)"
|
# .IP "\fBm\fR (default: off)"
|
||||||
# Toggles the PCRE_MULTILINE flag. When this flag is on, the \fB^\fR
|
# Toggles the PCRE_MULTILINE flag. When this flag is on, the \fB^\fR
|
||||||
# and \fb$\fR metacharacters match immediately after and immediately
|
# and \fB$\fR metacharacters match immediately after and immediately
|
||||||
# before a newline character, respectively, in addition to
|
# before a newline character, respectively, in addition to
|
||||||
# matching at the start and end of the subject string.
|
# matching at the start and end of the subject string.
|
||||||
# .IP "\fBs\fR (default: on)"
|
# .IP "\fBs\fR (default: on)"
|
||||||
|
@@ -50,7 +50,7 @@
|
|||||||
# such as \fBsmtp\fR or \fBlocal\fR. The \fInexthop\fR field
|
# such as \fBsmtp\fR or \fBlocal\fR. The \fInexthop\fR field
|
||||||
# specifies where and how to deliver mail. More details are given
|
# specifies where and how to deliver mail. More details are given
|
||||||
# in section "RESULT FORMAT".
|
# in section "RESULT FORMAT".
|
||||||
# .SH TABLE LOOKUP
|
# TABLE LOOKUP
|
||||||
# .ad
|
# .ad
|
||||||
# .fi
|
# .fi
|
||||||
# With lookups from indexed files such as DB or DBM, or from networked
|
# With lookups from indexed files such as DB or DBM, or from networked
|
||||||
@@ -76,11 +76,21 @@
|
|||||||
# Note 1: the special pattern \fB*\fR represents any address (i.e. it
|
# Note 1: the special pattern \fB*\fR represents any address (i.e. it
|
||||||
# functions as the wild-card pattern).
|
# functions as the wild-card pattern).
|
||||||
#
|
#
|
||||||
# Note 2: the null recipient address is looked up as the local
|
# Note 2: the null recipient address is looked up as
|
||||||
# mailer-daemon address (mailer-daemon@fully-qualified-domain-name).
|
# \fB$empty_address_recipient\fR@\fB$myhostname\fR (default:
|
||||||
# .SH RESULT FORMAT
|
# mailer-daemon@hostname).
|
||||||
|
# RESULT FORMAT
|
||||||
# .ad
|
# .ad
|
||||||
# .fi
|
# .fi
|
||||||
|
# The transport field specifies the name of a mail delivery transport
|
||||||
|
# (the first name of a mail delivery service entry in the Postfix
|
||||||
|
# \fBmaster.cf\fR file).
|
||||||
|
#
|
||||||
|
# The interpretation of the nexthop field is transport
|
||||||
|
# dependent. In the case of SMTP, specify \fIhost\fR:\fIservice\fR for a
|
||||||
|
# non-default server port, and use [\fIhost\fR] or [\fIhost\fR]:\fIport\fR
|
||||||
|
# in order to disable MX (mail exchanger) DNS lookups. The [] form
|
||||||
|
# can also be used with IP addresses instead of hostnames.
|
||||||
#
|
#
|
||||||
# A null \fItransport\fR and null \fInexthop\fR result means "do
|
# A null \fItransport\fR and null \fInexthop\fR result means "do
|
||||||
# not change": use the delivery transport and nexthop information
|
# not change": use the delivery transport and nexthop information
|
||||||
@@ -91,31 +101,30 @@
|
|||||||
#
|
#
|
||||||
# A null \fItransport\fR field with non-null \fInexthop\fR field
|
# A null \fItransport\fR field with non-null \fInexthop\fR field
|
||||||
# does not modify the transport information.
|
# does not modify the transport information.
|
||||||
# .SH TRANSPORT FIELD
|
# DEFAULT DELIVERY METHOD
|
||||||
# .ad
|
# .ad
|
||||||
# .fi
|
# .fi
|
||||||
# The transport field specifies the name of a mail delivery transport
|
# When the recipient address or domain does not match a transport
|
||||||
# (the first name of a mail delivery service entry in the Postfix
|
# table entry, Postfix uses one of the following delivery methods,
|
||||||
# \fBmaster.cf\fR file).
|
# with the recipient domain as the default nexthop.
|
||||||
#
|
# .IP \(bu
|
||||||
# When a null transport field is specified, Postfix uses one of the
|
# The recipient domain matches \fB$mydestination\fR or
|
||||||
# following transports:
|
# \fB$inet_interfaces\fR. The transport and optional nexthop
|
||||||
# .IP \fB$local_transport\fR
|
# are specified with \fB$local_transport\fR.
|
||||||
# The domain matches \fB$mydestination\fR or \fB$inet_interfaces\fR.
|
# .IP \(bu
|
||||||
# .IP \fB$virtual_transport\fR
|
# The recipient domain matches \fB$virtual_mailbox_domains\fR.
|
||||||
# The domain matches \fB$virtual_mailbox_domains\fR.
|
# The transport and optional nexthop are specified with
|
||||||
# .IP \fB$relay_transport\fR
|
# \fB$virtual_transport\fR.
|
||||||
# The domain matches \fB$relay_transport\fR.
|
# .IP \(bu
|
||||||
# .IP \fB$default_transport\fR
|
# The recipient domain matches \fB$relay_domains\fR. The
|
||||||
# All other non-local, non-virtual destinations.
|
# transport and optional nexthop are specified with
|
||||||
# .SH NEXTHOP FIELD
|
# \fB$relay_transport\fR. This overrides the nexthop information
|
||||||
# .ad
|
# that is specified with \fB$relayhost\fR.
|
||||||
# .fi
|
# .IP \(bu
|
||||||
# The interpretation of the nexthop field is transport
|
# All other destinations. the transport and optional nexthop are
|
||||||
# dependent. In the case of SMTP, specify \fIhost\fR:\fIservice\fR for a
|
# specified with \fB$relay_transport\fR.
|
||||||
# non-default server port, and use [\fIhost\fR] or [\fIhost\fR]:\fIport\fR
|
# This overrides the nexthop information that is specified with
|
||||||
# in order to disable MX (mail exchanger) DNS lookups. The [] form
|
# \fB$relayhost\fR.
|
||||||
# can also be used with IP addresses instead of hostnames.
|
|
||||||
# EXAMPLES
|
# EXAMPLES
|
||||||
# .ad
|
# .ad
|
||||||
# .fi
|
# .fi
|
||||||
@@ -123,8 +132,7 @@
|
|||||||
# mail relay for all other mail, specify a null entry for
|
# mail relay for all other mail, specify a null entry for
|
||||||
# internal destinations (do not change the delivery transport or
|
# internal destinations (do not change the delivery transport or
|
||||||
# the nexthop information) and specify a wildcard for all other
|
# the nexthop information) and specify a wildcard for all other
|
||||||
# destinations. Note that for this trick to work you should
|
# destinations.
|
||||||
# not specify a \fBrelayhost\fR in the \fBmain.cf\fR file.
|
|
||||||
#
|
#
|
||||||
# .ti +5
|
# .ti +5
|
||||||
# \fB\&my.domain :\fR
|
# \fB\&my.domain :\fR
|
||||||
@@ -205,6 +213,8 @@
|
|||||||
# this topic. See the Postfix \fBmain.cf\fR file for syntax details
|
# this topic. See the Postfix \fBmain.cf\fR file for syntax details
|
||||||
# and for default values. Use the \fBpostfix reload\fR command after
|
# and for default values. Use the \fBpostfix reload\fR command after
|
||||||
# a configuration change.
|
# a configuration change.
|
||||||
|
# .IP \fBempty_address_recipient\fR
|
||||||
|
# The address that is looked up instead of the null sender address.
|
||||||
# .IP \fBparent_domain_matches_subdomains\fR
|
# .IP \fBparent_domain_matches_subdomains\fR
|
||||||
# List of Postfix features that use \fIdomain.tld\fR patterns
|
# List of Postfix features that use \fIdomain.tld\fR patterns
|
||||||
# to match \fIsub.domain.tld\fR (as opposed to
|
# to match \fIsub.domain.tld\fR (as opposed to
|
||||||
|
@@ -16,7 +16,7 @@
|
|||||||
#
|
#
|
||||||
# The main applications of virtual aliasing are:
|
# The main applications of virtual aliasing are:
|
||||||
# .IP \(bu
|
# .IP \(bu
|
||||||
# To redirect mail from one address to one or more other addresses.
|
# To redirect mail for one address to one or more addresses.
|
||||||
# .IP \(bu
|
# .IP \(bu
|
||||||
# To simulate virtual domains where all virtual addresses are aliased
|
# To simulate virtual domains where all virtual addresses are aliased
|
||||||
# to non-virtual addresses.
|
# to non-virtual addresses.
|
||||||
@@ -43,6 +43,50 @@
|
|||||||
# Alternatively, the table can be provided as a regular-expression
|
# Alternatively, the table can be provided as a regular-expression
|
||||||
# map where patterns are given as regular expressions. In that case,
|
# map where patterns are given as regular expressions. In that case,
|
||||||
# the lookups are done in a slightly different way as described below.
|
# the lookups are done in a slightly different way as described below.
|
||||||
|
# TABLE FORMAT
|
||||||
|
# .ad
|
||||||
|
# .fi
|
||||||
|
# The format of the virtual table is as follows, mappings being
|
||||||
|
# tried in the order as listed in this manual page:
|
||||||
|
# .IP "\fIpattern result\fR"
|
||||||
|
# When \fIpattern\fR matches a mail address, replace it by the
|
||||||
|
# corresponding \fIresult\fR.
|
||||||
|
# .IP "blank lines and comments"
|
||||||
|
# Empty lines and whitespace-only lines are ignored, as
|
||||||
|
# are lines whose first non-whitespace character is a `#'.
|
||||||
|
# .IP "multi-line text"
|
||||||
|
# A logical line starts with non-whitespace text. A line that
|
||||||
|
# starts with whitespace continues a logical line.
|
||||||
|
# .PP
|
||||||
|
# With lookups from indexed files such as DB or DBM, or from networked
|
||||||
|
# tables such as NIS, LDAP or SQL, patterns are tried in the order as
|
||||||
|
# listed below:
|
||||||
|
# .IP "\fIuser\fR@\fIdomain address, address, ...\fR"
|
||||||
|
# Mail for \fIuser\fR@\fIdomain\fR is redirected to \fIaddress\fR.
|
||||||
|
# This form has the highest precedence.
|
||||||
|
# .IP "\fIuser address, address, ...\fR"
|
||||||
|
# Mail for \fIuser\fR@\fIsite\fR is redirected to \fIaddress\fR when
|
||||||
|
# \fIsite\fR is equal to $\fBmyorigin\fR, when \fIsite\fR is listed in
|
||||||
|
# $\fRmydestination\fR, or when it is listed in $\fIinet_interfaces\fR.
|
||||||
|
# .sp
|
||||||
|
# This functionality overlaps with functionality of the local
|
||||||
|
# \fIaliases\fR(5) database. The difference is that \fBvirtual\fR
|
||||||
|
# mapping can be applied to non-local addresses.
|
||||||
|
# .IP "@\fIdomain address, address, ...\fR"
|
||||||
|
# Mail for any user in \fIdomain\fR is redirected to \fIaddress\fR.
|
||||||
|
# This form has the lowest precedence.
|
||||||
|
# .PP
|
||||||
|
# In all the above forms, when \fIaddress\fR has the form
|
||||||
|
# @\fIotherdomain\fR, the result is the same user in \fIotherdomain\fR.
|
||||||
|
# This works for the first address in the expansion only.
|
||||||
|
# ADDRESS EXTENSION
|
||||||
|
# .fi
|
||||||
|
# .ad
|
||||||
|
# When a mail address localpart contains the optional recipient delimiter
|
||||||
|
# (e.g., \fIuser+foo\fR@\fIdomain\fR), the lookup order becomes:
|
||||||
|
# \fIuser+foo\fR@\fIdomain\fR, \fIuser\fR@\fIdomain\fR, \fIuser+foo\fR,
|
||||||
|
# \fIuser\fR, and @\fIdomain\fR. An unmatched address extension
|
||||||
|
# (\fI+foo\fR) is propagated to the result of table lookup.
|
||||||
# SIMULATED VIRTUAL DOMAINS
|
# SIMULATED VIRTUAL DOMAINS
|
||||||
# .ad
|
# .ad
|
||||||
# .fi
|
# .fi
|
||||||
@@ -100,50 +144,6 @@
|
|||||||
# the \fBmain.cf virtual_alias_domains\fR configuration parameter.
|
# the \fBmain.cf virtual_alias_domains\fR configuration parameter.
|
||||||
# This latter parameter uses the same syntax as the \fBmain.cf
|
# This latter parameter uses the same syntax as the \fBmain.cf
|
||||||
# mydestination\fR configuration parameter.
|
# mydestination\fR configuration parameter.
|
||||||
# TABLE FORMAT
|
|
||||||
# .ad
|
|
||||||
# .fi
|
|
||||||
# The format of the virtual table is as follows, mappings being
|
|
||||||
# tried in the order as listed in this manual page:
|
|
||||||
# .IP "\fIpattern result\fR"
|
|
||||||
# When \fIpattern\fR matches a mail address, replace it by the
|
|
||||||
# corresponding \fIresult\fR.
|
|
||||||
# .IP "blank lines and comments"
|
|
||||||
# Empty lines and whitespace-only lines are ignored, as
|
|
||||||
# are lines whose first non-whitespace character is a `#'.
|
|
||||||
# .IP "multi-line text"
|
|
||||||
# A logical line starts with non-whitespace text. A line that
|
|
||||||
# starts with whitespace continues a logical line.
|
|
||||||
# .PP
|
|
||||||
# With lookups from indexed files such as DB or DBM, or from networked
|
|
||||||
# tables such as NIS, LDAP or SQL, patterns are tried in the order as
|
|
||||||
# listed below:
|
|
||||||
# .IP "\fIuser\fR@\fIdomain address, address, ...\fR"
|
|
||||||
# Mail for \fIuser\fR@\fIdomain\fR is redirected to \fIaddress\fR.
|
|
||||||
# This form has the highest precedence.
|
|
||||||
# .IP "\fIuser address, address, ...\fR"
|
|
||||||
# Mail for \fIuser\fR@\fIsite\fR is redirected to \fIaddress\fR when
|
|
||||||
# \fIsite\fR is equal to $\fBmyorigin\fR, when \fIsite\fR is listed in
|
|
||||||
# $\fRmydestination\fR, or when it is listed in $\fIinet_interfaces\fR.
|
|
||||||
# .sp
|
|
||||||
# This functionality overlaps with functionality of the local
|
|
||||||
# \fIaliases\fR(5) database. The difference is that \fBvirtual\fR
|
|
||||||
# mapping can be applied to non-local addresses.
|
|
||||||
# .IP "@\fIdomain address, address, ...\fR"
|
|
||||||
# Mail for any user in \fIdomain\fR is redirected to \fIaddress\fR.
|
|
||||||
# This form has the lowest precedence.
|
|
||||||
# .PP
|
|
||||||
# In all the above forms, when \fIaddress\fR has the form
|
|
||||||
# @\fIotherdomain\fR, the result is the same user in \fIotherdomain\fR.
|
|
||||||
# This works for the first address in the expansion only.
|
|
||||||
# ADDRESS EXTENSION
|
|
||||||
# .fi
|
|
||||||
# .ad
|
|
||||||
# When a mail address localpart contains the optional recipient delimiter
|
|
||||||
# (e.g., \fIuser+foo\fR@\fIdomain\fR), the lookup order becomes:
|
|
||||||
# \fIuser+foo\fR@\fIdomain\fR, \fIuser\fR@\fIdomain\fR, \fIuser+foo\fR,
|
|
||||||
# \fIuser\fR, and @\fIdomain\fR. An unmatched address extension
|
|
||||||
# (\fI+foo\fR) is propagated to the result of table lookup.
|
|
||||||
# REGULAR EXPRESSION TABLES
|
# REGULAR EXPRESSION TABLES
|
||||||
# .ad
|
# .ad
|
||||||
# .fi
|
# .fi
|
||||||
|
@@ -150,9 +150,11 @@
|
|||||||
/* .ad
|
/* .ad
|
||||||
/* .fi
|
/* .fi
|
||||||
/* .IP \fBduplicate_filter_limit\fR
|
/* .IP \fBduplicate_filter_limit\fR
|
||||||
/* Limit the number of envelope recipients that are remembered.
|
/* Limits the number of envelope recipients that are remembered.
|
||||||
|
/* .IP \fBheader_address_token_limit\fR
|
||||||
|
/* Limits the number of address tokens used to process a message header.
|
||||||
/* .IP \fBheader_size_limit\fR
|
/* .IP \fBheader_size_limit\fR
|
||||||
/* Limit the amount of memory in bytes used to process a message header.
|
/* Limits the amount of memory in bytes used to process a message header.
|
||||||
/* .IP \fBin_flow_delay\fR
|
/* .IP \fBin_flow_delay\fR
|
||||||
/* Amount of time to pause before accepting a message, when the
|
/* Amount of time to pause before accepting a message, when the
|
||||||
/* message arrival rate exceeds the message delivery rate.
|
/* message arrival rate exceeds the message delivery rate.
|
||||||
|
@@ -306,8 +306,7 @@ rewrite_clnt_test: rewrite_clnt rewrite_clnt.in rewrite_clnt.ref
|
|||||||
diff - rewrite_clnt.tmp
|
diff - rewrite_clnt.tmp
|
||||||
rm -f rewrite_clnt.tmp
|
rm -f rewrite_clnt.tmp
|
||||||
|
|
||||||
# Requires: Postfix, root, myorigin=$myhostname, relayhost=$mydomain,
|
# Requires: Postfix, root, relayhost=$mydomain, no transport map
|
||||||
# no transport map
|
|
||||||
|
|
||||||
resolve_clnt_test: resolve_clnt resolve_clnt.in resolve_clnt.ref
|
resolve_clnt_test: resolve_clnt resolve_clnt.in resolve_clnt.ref
|
||||||
sed -e "s/MYDOMAIN/`postconf -h mydomain`/g" \
|
sed -e "s/MYDOMAIN/`postconf -h mydomain`/g" \
|
||||||
|
@@ -20,7 +20,7 @@
|
|||||||
* Patches change the patchlevel and the release date. Snapshots change the
|
* Patches change the patchlevel and the release date. Snapshots change the
|
||||||
* release date only, unless they include the same bugfix as a patch release.
|
* release date only, unless they include the same bugfix as a patch release.
|
||||||
*/
|
*/
|
||||||
#define MAIL_RELEASE_DATE "20021217"
|
#define MAIL_RELEASE_DATE "20021218"
|
||||||
|
|
||||||
#define VAR_MAIL_VERSION "mail_version"
|
#define VAR_MAIL_VERSION "mail_version"
|
||||||
#define DEF_MAIL_VERSION "1.1.12-" MAIL_RELEASE_DATE
|
#define DEF_MAIL_VERSION "1.1.12-" MAIL_RELEASE_DATE
|
||||||
|
@@ -171,8 +171,9 @@
|
|||||||
/* The entire sender address.
|
/* The entire sender address.
|
||||||
/* .PP
|
/* .PP
|
||||||
/* The \fBPATH\fR environment variable is always reset to a
|
/* The \fBPATH\fR environment variable is always reset to a
|
||||||
/* system-dependent default path, and the \fBTZ\fR (time zone)
|
/* system-dependent default path, and environment variables
|
||||||
/* environment variable is always passed on without change.
|
/* whose names are blessed by the \fBexport_environment\fR
|
||||||
|
/* configureation parameter are exported unchanged.
|
||||||
/*
|
/*
|
||||||
/* The current working directory is the mail queue directory.
|
/* The current working directory is the mail queue directory.
|
||||||
/*
|
/*
|
||||||
@@ -212,7 +213,10 @@
|
|||||||
/*
|
/*
|
||||||
/* In the case of \fBmaildir\fR delivery, the local daemon prepends
|
/* In the case of \fBmaildir\fR delivery, the local daemon prepends
|
||||||
/* an optional
|
/* an optional
|
||||||
/* \fBDelivered-To:\fR header with the envelope recipient address.
|
/* \fBDelivered-To:\fR header with the envelope recipient address, and
|
||||||
|
/* prepends an
|
||||||
|
/* \fBX-Original-To:\fR header with the recipient address as given to
|
||||||
|
/* Postfix.
|
||||||
/* The envelope sender address is available in the \fBReturn-Path:\fR
|
/* The envelope sender address is available in the \fBReturn-Path:\fR
|
||||||
/* header.
|
/* header.
|
||||||
/* ADDRESS EXTENSION
|
/* ADDRESS EXTENSION
|
||||||
|
@@ -5,8 +5,8 @@
|
|||||||
/* Postfix master process
|
/* Postfix master process
|
||||||
/* SYNOPSIS
|
/* SYNOPSIS
|
||||||
/* .fi
|
/* .fi
|
||||||
/* \fBmaster\fR [\fB-c \fIconfig_dir\fR] [\fB-e \fIexit_time\fR]
|
/* \fBmaster\fR [\fB-Dtv\fR] [\fB-c \fIconfig_dir\fR]
|
||||||
/* [\fB-D\fR] [\fB-t\fR] [\fB-v\fR]
|
/* [\fB-e \fIexit_time\fR]
|
||||||
/* DESCRIPTION
|
/* DESCRIPTION
|
||||||
/* The \fBmaster\fR daemon is the resident process that runs Postfix
|
/* The \fBmaster\fR daemon is the resident process that runs Postfix
|
||||||
/* daemons on demand: daemons to send or receive messages via the
|
/* daemons on demand: daemons to send or receive messages via the
|
||||||
|
@@ -19,13 +19,12 @@
|
|||||||
/* SECURITY
|
/* SECURITY
|
||||||
/* .ad
|
/* .ad
|
||||||
/* .fi
|
/* .fi
|
||||||
/* The \fBpickup\fR daemon runs with superuser privileges so that it
|
/* The \fBpickup\fR daemon is moderately security sensitive. It runs
|
||||||
/* 1) can open a queue file with the rights of the submitting user
|
/* with fixed low privilege and can run in a chrooted environment.
|
||||||
/* and 2) can access the Postfix private IPC channels.
|
/* However, the program reads files from potentially hostile users.
|
||||||
/* On the positive side, the program can run chrooted, opens no files
|
/* The \fBpickup\fR daemon opens no files for writing, is careful about
|
||||||
/* for writing, is careful about what files it opens for reading, and
|
/* what files it opens for reading, and does not actually touch any data
|
||||||
/* does not actually touch any data that is sent to its public service
|
/* that is sent to its public service endpoint.
|
||||||
/* endpoint.
|
|
||||||
/* DIAGNOSTICS
|
/* DIAGNOSTICS
|
||||||
/* Problems and transactions are logged to \fBsyslogd\fR(8).
|
/* Problems and transactions are logged to \fBsyslogd\fR(8).
|
||||||
/* BUGS
|
/* BUGS
|
||||||
@@ -51,8 +50,6 @@
|
|||||||
/* .fi
|
/* .fi
|
||||||
/* .IP \fBalways_bcc\fR
|
/* .IP \fBalways_bcc\fR
|
||||||
/* Address to send a copy of each message that enters the system.
|
/* Address to send a copy of each message that enters the system.
|
||||||
/* .IP \fBmail_owner\fR
|
|
||||||
/* The process privileges used while not opening a \fBmaildrop\fR file.
|
|
||||||
/* .IP \fBqueue_directory\fR
|
/* .IP \fBqueue_directory\fR
|
||||||
/* Top-level directory of the Postfix queue.
|
/* Top-level directory of the Postfix queue.
|
||||||
/* SEE ALSO
|
/* SEE ALSO
|
||||||
|
@@ -43,7 +43,7 @@
|
|||||||
/* .IP \fB-i\fR
|
/* .IP \fB-i\fR
|
||||||
/* Incremental mode. Read entries from standard input and do not
|
/* Incremental mode. Read entries from standard input and do not
|
||||||
/* truncate an existing database. By default, \fBpostalias\fR creates
|
/* truncate an existing database. By default, \fBpostalias\fR creates
|
||||||
/* a new database from the entries in \fBfile_name\fR.
|
/* a new database from the entries in \fIfile_name\fR.
|
||||||
/* .IP \fB-n\fR
|
/* .IP \fB-n\fR
|
||||||
/* Don't include the terminating null character that terminates lookup
|
/* Don't include the terminating null character that terminates lookup
|
||||||
/* keys and values. By default, Postfix does whatever is the default for
|
/* keys and values. By default, Postfix does whatever is the default for
|
||||||
@@ -95,7 +95,7 @@
|
|||||||
/* The default value for this parameter depends on the host environment.
|
/* The default value for this parameter depends on the host environment.
|
||||||
/* .RE
|
/* .RE
|
||||||
/* .IP \fIfile_name\fR
|
/* .IP \fIfile_name\fR
|
||||||
/* The name of the alias database source file when rebuilding a database.
|
/* The name of the alias database source file when creating a database.
|
||||||
/* DIAGNOSTICS
|
/* DIAGNOSTICS
|
||||||
/* Problems are logged to the standard error stream. No output means
|
/* Problems are logged to the standard error stream. No output means
|
||||||
/* no problems were detected. Duplicate entries are skipped and are
|
/* no problems were detected. Duplicate entries are skipped and are
|
||||||
@@ -117,8 +117,8 @@
|
|||||||
/* The following \fBmain.cf\fR parameters are especially relevant to
|
/* The following \fBmain.cf\fR parameters are especially relevant to
|
||||||
/* this program. See the Postfix \fBmain.cf\fR file for syntax details
|
/* this program. See the Postfix \fBmain.cf\fR file for syntax details
|
||||||
/* and for default values.
|
/* and for default values.
|
||||||
/* .IP \fdefault_Bdatabase_type\fR
|
/* .IP \fBdefault_database_type\fR
|
||||||
/* Default alias database type. On many UNIX systems, the default type
|
/* Default database type. On many UNIX systems, the default type
|
||||||
/* is either \fBdbm\fR or \fBhash\fR.
|
/* is either \fBdbm\fR or \fBhash\fR.
|
||||||
/* .IP \fBberkeley_db_create_buffer_size\fR
|
/* .IP \fBberkeley_db_create_buffer_size\fR
|
||||||
/* Amount of buffer memory to be used when creating a Berkeley DB
|
/* Amount of buffer memory to be used when creating a Berkeley DB
|
||||||
|
@@ -12,7 +12,7 @@
|
|||||||
/* [\fIparameter=value ...\fR]
|
/* [\fIparameter=value ...\fR]
|
||||||
/* DESCRIPTION
|
/* DESCRIPTION
|
||||||
/* The \fBpostconf\fR command prints the actual value of
|
/* The \fBpostconf\fR command prints the actual value of
|
||||||
/* \fIparameter\fR (all known parameters by default), one
|
/* \fIparameter\fR (all known parameters by default) one
|
||||||
/* parameter per line, changes its value, or prints other
|
/* parameter per line, changes its value, or prints other
|
||||||
/* information about the Postfix mail system.
|
/* information about the Postfix mail system.
|
||||||
/*
|
/*
|
||||||
|
@@ -5,8 +5,7 @@
|
|||||||
/* Postfix control program
|
/* Postfix control program
|
||||||
/* SYNOPSIS
|
/* SYNOPSIS
|
||||||
/* .fi
|
/* .fi
|
||||||
/* \fBpostfix\fR [\fB-c \fIconfig_dir\fR] [\fB-D\fR] [\fB-v\fR]
|
/* \fBpostfix\fR [\fB-Dv\fR] [\fB-c \fIconfig_dir\fR] \fIcommand\fR
|
||||||
/* \fIcommand\fR
|
|
||||||
/* DESCRIPTION
|
/* DESCRIPTION
|
||||||
/* This command is reserved for the superuser. To submit mail,
|
/* This command is reserved for the superuser. To submit mail,
|
||||||
/* use the Postfix \fBsendmail\fR command.
|
/* use the Postfix \fBsendmail\fR command.
|
||||||
@@ -59,19 +58,17 @@
|
|||||||
/* ENVIRONMENT
|
/* ENVIRONMENT
|
||||||
/* .ad
|
/* .ad
|
||||||
/* .fi
|
/* .fi
|
||||||
/* The \fBpostfix\fR command sets the following environment
|
/* The \fBpostfix\fR command exports the following environment
|
||||||
/* variables:
|
/* variables before executing the \fBpostfix-script\fR file:
|
||||||
/* .IP \fBMAIL_CONFIG\fR
|
/* .IP \fBMAIL_CONFIG\fR
|
||||||
/* Directory with Postfix configuration files.
|
/* This is set when the -c command-line option is present.
|
||||||
/* .IP \fBMAIL_VERBOSE\fR
|
/* .IP \fBMAIL_VERBOSE\fR
|
||||||
/* This is set when the -v command-line option is present.
|
/* This is set when the -v command-line option is present.
|
||||||
/* .IP \fBMAIL_DEBUG\fR
|
/* .IP \fBMAIL_DEBUG\fR
|
||||||
/* This is set when the -D command-line option is present.
|
/* This is set when the -D command-line option is present.
|
||||||
/* CONFIGURATION PARAMETERS
|
/* .PP
|
||||||
/* .ad
|
/* The following \fBmain.cf\fR configuration parameters are
|
||||||
/* .fi
|
/* exported as environment variables with the same names:
|
||||||
/* The following \fBmain.cf\fR configuration parameters are made
|
|
||||||
/* available as process environment variables with the same names:
|
|
||||||
/* .IP \fBcommand_directory\fR
|
/* .IP \fBcommand_directory\fR
|
||||||
/* Directory with Postfix administrative commands.
|
/* Directory with Postfix administrative commands.
|
||||||
/* .IP \fBdaemon_directory\fR
|
/* .IP \fBdaemon_directory\fR
|
||||||
@@ -88,11 +85,11 @@
|
|||||||
/* .IP \fBsetgid_group\fR
|
/* .IP \fBsetgid_group\fR
|
||||||
/* The group for mail submission and queue management commands.
|
/* The group for mail submission and queue management commands.
|
||||||
/* .IP \fBsendmail_path
|
/* .IP \fBsendmail_path
|
||||||
/* The full pathname for the Postfix sendmail command.
|
/* The full pathname for the Postfix \fBsendmail\fR command.
|
||||||
/* .IP \fBnewaliases_path
|
/* .IP \fBnewaliases_path
|
||||||
/* The full pathname for the Postfix newaliases command.
|
/* The full pathname for the Postfix \fBnewaliases\fR command.
|
||||||
/* .IP \fBmailq_path
|
/* .IP \fBmailq_path
|
||||||
/* The full pathname for the Postfix mailq command.
|
/* The full pathname for the Postfix \fBmailq\fR command.
|
||||||
/* .IP \fBmanpage_directory
|
/* .IP \fBmanpage_directory
|
||||||
/* The directory for the Postfix on-line manual pages.
|
/* The directory for the Postfix on-line manual pages.
|
||||||
/* .IP \fBsample_directory
|
/* .IP \fBsample_directory
|
||||||
|
@@ -81,7 +81,7 @@
|
|||||||
/* .SH Tarpitting
|
/* .SH Tarpitting
|
||||||
/* .ad
|
/* .ad
|
||||||
/* .fi
|
/* .fi
|
||||||
/* .IP \fBqmqpd_error_sleep_time\fR
|
/* .IP \fBqmqpd_error_delay\fR
|
||||||
/* Time to wait in seconds before informing the client of
|
/* Time to wait in seconds before informing the client of
|
||||||
/* a problem. This slows down run-away errors.
|
/* a problem. This slows down run-away errors.
|
||||||
/* SEE ALSO
|
/* SEE ALSO
|
||||||
|
@@ -134,8 +134,8 @@
|
|||||||
/* details.
|
/* details.
|
||||||
/* .IP "\fB-o7\fR (ignored)"
|
/* .IP "\fB-o7\fR (ignored)"
|
||||||
/* .IP "\fB-o8\fR (ignored)"
|
/* .IP "\fB-o8\fR (ignored)"
|
||||||
/* The message body type. Currently, Postfix implements
|
/* To send 8-bit or binary content, use an appropriate MIME encapsulation
|
||||||
/* \fBjust-send-eight\fR.
|
/* and specify the appropriate \fB-B\fR command-line option.
|
||||||
/* .IP "\fB-oi\fR"
|
/* .IP "\fB-oi\fR"
|
||||||
/* When reading a message from standard input, don\'t treat a line
|
/* When reading a message from standard input, don\'t treat a line
|
||||||
/* with only a \fB.\fR character as the end of input.
|
/* with only a \fB.\fR character as the end of input.
|
||||||
@@ -385,10 +385,12 @@ static void enqueue(const int flags, const char *encoding, const char *sender,
|
|||||||
* to use login names at all.
|
* to use login names at all.
|
||||||
*/
|
*/
|
||||||
if (sender != 0) {
|
if (sender != 0) {
|
||||||
|
VSTRING_RESET(buf);
|
||||||
|
VSTRING_TERMINATE(buf);
|
||||||
tree = tok822_parse(sender);
|
tree = tok822_parse(sender);
|
||||||
for (naddr = 0, tp = tree; tp != 0; tp = tp->next)
|
for (naddr = 0, tp = tree; tp != 0; tp = tp->next)
|
||||||
if (tp->type == TOK822_ADDR)
|
if (tp->type == TOK822_ADDR && naddr++ == 0)
|
||||||
naddr++, tok822_internalize(buf, tp->head, TOK822_STR_DEFL);
|
tok822_internalize(buf, tp->head, TOK822_STR_DEFL);
|
||||||
tok822_free_tree(tree);
|
tok822_free_tree(tree);
|
||||||
saved_sender = mystrdup(STR(buf));
|
saved_sender = mystrdup(STR(buf));
|
||||||
if (naddr > 1)
|
if (naddr > 1)
|
||||||
@@ -431,7 +433,8 @@ static void enqueue(const int flags, const char *encoding, const char *sender,
|
|||||||
rec_fputs(dst, REC_TYPE_FULL, full_name);
|
rec_fputs(dst, REC_TYPE_FULL, full_name);
|
||||||
rec_fputs(dst, REC_TYPE_FROM, saved_sender);
|
rec_fputs(dst, REC_TYPE_FROM, saved_sender);
|
||||||
if (verp_delims && *saved_sender == 0)
|
if (verp_delims && *saved_sender == 0)
|
||||||
msg_fatal("-V option requires non-null sender address");
|
msg_fatal_status(EX_USAGE,
|
||||||
|
"-V option requires non-null sender address");
|
||||||
if (encoding)
|
if (encoding)
|
||||||
rec_fprintf(dst, REC_TYPE_ATTR, "%s=%s", MAIL_ATTR_ENCODING, encoding);
|
rec_fprintf(dst, REC_TYPE_ATTR, "%s=%s", MAIL_ATTR_ENCODING, encoding);
|
||||||
if (verp_delims)
|
if (verp_delims)
|
||||||
@@ -756,7 +759,7 @@ int main(int argc, char **argv)
|
|||||||
} else if (optarg[0] == 'R') {
|
} else if (optarg[0] == 'R') {
|
||||||
site_to_flush = optarg + 1;
|
site_to_flush = optarg + 1;
|
||||||
if (*site_to_flush == 0)
|
if (*site_to_flush == 0)
|
||||||
msg_fatal("specify: -qRsitename");
|
msg_fatal_status(EX_USAGE, "specify: -qRsitename");
|
||||||
} else {
|
} else {
|
||||||
msg_fatal_status(EX_USAGE, "-q%c is not implemented",
|
msg_fatal_status(EX_USAGE, "-q%c is not implemented",
|
||||||
optarg[0]);
|
optarg[0]);
|
||||||
@@ -784,13 +787,14 @@ int main(int argc, char **argv)
|
|||||||
* Look for conflicting options and arguments.
|
* Look for conflicting options and arguments.
|
||||||
*/
|
*/
|
||||||
if (extract_recipients && mode != SM_MODE_ENQUEUE)
|
if (extract_recipients && mode != SM_MODE_ENQUEUE)
|
||||||
msg_fatal("-t can be used only in delivery mode");
|
msg_fatal_status(EX_USAGE, "-t can be used only in delivery mode");
|
||||||
|
|
||||||
if (site_to_flush && mode != SM_MODE_ENQUEUE)
|
if (site_to_flush && mode != SM_MODE_ENQUEUE)
|
||||||
msg_fatal("-qR can be used only in delivery mode");
|
msg_fatal_status(EX_USAGE, "-qR can be used only in delivery mode");
|
||||||
|
|
||||||
if (extract_recipients && argv[OPTIND])
|
if (extract_recipients && argv[OPTIND])
|
||||||
msg_fatal("cannot handle command-line recipients with -t");
|
msg_fatal_status(EX_USAGE,
|
||||||
|
"cannot handle command-line recipients with -t");
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Start processing. Everything is delegated to external commands.
|
* Start processing. Everything is delegated to external commands.
|
||||||
@@ -805,7 +809,7 @@ int main(int argc, char **argv)
|
|||||||
exit(0);
|
exit(0);
|
||||||
}
|
}
|
||||||
if (argv[OPTIND])
|
if (argv[OPTIND])
|
||||||
msg_fatal("flush site requires no recipient");
|
msg_fatal_status(EX_USAGE, "flush site requires no recipient");
|
||||||
ext_argv = argv_alloc(2);
|
ext_argv = argv_alloc(2);
|
||||||
argv_add(ext_argv, "postqueue", "-s", site_to_flush, (char *) 0);
|
argv_add(ext_argv, "postqueue", "-s", site_to_flush, (char *) 0);
|
||||||
for (n = 0; n < msg_verbose; n++)
|
for (n = 0; n < msg_verbose; n++)
|
||||||
@@ -816,7 +820,8 @@ int main(int argc, char **argv)
|
|||||||
break;
|
break;
|
||||||
case SM_MODE_MAILQ:
|
case SM_MODE_MAILQ:
|
||||||
if (argv[OPTIND])
|
if (argv[OPTIND])
|
||||||
msg_fatal("display queue mode requires no recipient");
|
msg_fatal_status(EX_USAGE,
|
||||||
|
"display queue mode requires no recipient");
|
||||||
ext_argv = argv_alloc(2);
|
ext_argv = argv_alloc(2);
|
||||||
argv_add(ext_argv, "postqueue", "-p", (char *) 0);
|
argv_add(ext_argv, "postqueue", "-p", (char *) 0);
|
||||||
for (n = 0; n < msg_verbose; n++)
|
for (n = 0; n < msg_verbose; n++)
|
||||||
@@ -826,7 +831,8 @@ int main(int argc, char **argv)
|
|||||||
/* NOTREACHED */
|
/* NOTREACHED */
|
||||||
case SM_MODE_FLUSHQ:
|
case SM_MODE_FLUSHQ:
|
||||||
if (argv[OPTIND])
|
if (argv[OPTIND])
|
||||||
msg_fatal("flush queue mode requires no recipient");
|
msg_fatal_status(EX_USAGE,
|
||||||
|
"flush queue mode requires no recipient");
|
||||||
ext_argv = argv_alloc(2);
|
ext_argv = argv_alloc(2);
|
||||||
argv_add(ext_argv, "postqueue", "-f", (char *) 0);
|
argv_add(ext_argv, "postqueue", "-f", (char *) 0);
|
||||||
for (n = 0; n < msg_verbose; n++)
|
for (n = 0; n < msg_verbose; n++)
|
||||||
@@ -836,7 +842,7 @@ int main(int argc, char **argv)
|
|||||||
/* NOTREACHED */
|
/* NOTREACHED */
|
||||||
case SM_MODE_DAEMON:
|
case SM_MODE_DAEMON:
|
||||||
if (argv[OPTIND])
|
if (argv[OPTIND])
|
||||||
msg_fatal("daemon mode requires no recipient");
|
msg_fatal_status(EX_USAGE, "daemon mode requires no recipient");
|
||||||
ext_argv = argv_alloc(2);
|
ext_argv = argv_alloc(2);
|
||||||
argv_add(ext_argv, "postfix", (char *) 0);
|
argv_add(ext_argv, "postfix", (char *) 0);
|
||||||
for (n = 0; n < msg_verbose; n++)
|
for (n = 0; n < msg_verbose; n++)
|
||||||
@@ -849,7 +855,8 @@ int main(int argc, char **argv)
|
|||||||
break;
|
break;
|
||||||
case SM_MODE_NEWALIAS:
|
case SM_MODE_NEWALIAS:
|
||||||
if (argv[OPTIND])
|
if (argv[OPTIND])
|
||||||
msg_fatal("alias initialization mode requires no recipient");
|
msg_fatal_status(EX_USAGE,
|
||||||
|
"alias initialization mode requires no recipient");
|
||||||
if (*var_alias_db_map == 0)
|
if (*var_alias_db_map == 0)
|
||||||
return (0);
|
return (0);
|
||||||
ext_argv = argv_alloc(2);
|
ext_argv = argv_alloc(2);
|
||||||
@@ -862,7 +869,8 @@ int main(int argc, char **argv)
|
|||||||
/* NOTREACHED */
|
/* NOTREACHED */
|
||||||
case SM_MODE_USER:
|
case SM_MODE_USER:
|
||||||
if (argv[OPTIND])
|
if (argv[OPTIND])
|
||||||
msg_fatal("stand-alone mode requires no recipient");
|
msg_fatal_status(EX_USAGE,
|
||||||
|
"stand-alone mode requires no recipient");
|
||||||
ext_argv = argv_alloc(2);
|
ext_argv = argv_alloc(2);
|
||||||
argv_add(ext_argv, "smtpd", "-S", (char *) 0);
|
argv_add(ext_argv, "smtpd", "-S", (char *) 0);
|
||||||
for (n = 0; n < msg_verbose; n++)
|
for (n = 0; n < msg_verbose; n++)
|
||||||
|
@@ -76,7 +76,6 @@ resolve.o: ../../include/mail_params.h
|
|||||||
resolve.o: ../../include/mail_proto.h
|
resolve.o: ../../include/mail_proto.h
|
||||||
resolve.o: ../../include/iostuff.h
|
resolve.o: ../../include/iostuff.h
|
||||||
resolve.o: ../../include/attr.h
|
resolve.o: ../../include/attr.h
|
||||||
resolve.o: ../../include/mail_addr.h
|
|
||||||
resolve.o: ../../include/rewrite_clnt.h
|
resolve.o: ../../include/rewrite_clnt.h
|
||||||
resolve.o: ../../include/resolve_local.h
|
resolve.o: ../../include/resolve_local.h
|
||||||
resolve.o: ../../include/mail_conf.h
|
resolve.o: ../../include/mail_conf.h
|
||||||
@@ -152,6 +151,7 @@ trivial-rewrite.o: ../../include/mail_conf.h
|
|||||||
trivial-rewrite.o: ../../include/resolve_clnt.h
|
trivial-rewrite.o: ../../include/resolve_clnt.h
|
||||||
trivial-rewrite.o: ../../include/rewrite_clnt.h
|
trivial-rewrite.o: ../../include/rewrite_clnt.h
|
||||||
trivial-rewrite.o: ../../include/tok822.h
|
trivial-rewrite.o: ../../include/tok822.h
|
||||||
|
trivial-rewrite.o: ../../include/mail_addr.h
|
||||||
trivial-rewrite.o: ../../include/mail_server.h
|
trivial-rewrite.o: ../../include/mail_server.h
|
||||||
trivial-rewrite.o: trivial-rewrite.h
|
trivial-rewrite.o: trivial-rewrite.h
|
||||||
trivial-rewrite.o: transport.h
|
trivial-rewrite.o: transport.h
|
||||||
|
@@ -69,7 +69,6 @@
|
|||||||
|
|
||||||
#include <mail_params.h>
|
#include <mail_params.h>
|
||||||
#include <mail_proto.h>
|
#include <mail_proto.h>
|
||||||
#include <mail_addr.h>
|
|
||||||
#include <rewrite_clnt.h>
|
#include <rewrite_clnt.h>
|
||||||
#include <resolve_local.h>
|
#include <resolve_local.h>
|
||||||
#include <mail_conf.h>
|
#include <mail_conf.h>
|
||||||
@@ -320,8 +319,9 @@ void resolve_addr(char *addr, VSTRING *channel, VSTRING *nexthop,
|
|||||||
tok822_free(tree->head);
|
tok822_free(tree->head);
|
||||||
tree->head = 0;
|
tree->head = 0;
|
||||||
}
|
}
|
||||||
|
/* XXX must be localpart only, not user@domain form. */
|
||||||
if (tree->head == 0)
|
if (tree->head == 0)
|
||||||
tree->head = tok822_scan(MAIL_ADDR_MAIL_DAEMON, &tree->tail);
|
tree->head = tok822_scan(var_empty_addr, &tree->tail);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* We're done. There are no domains left to strip off the address,
|
* We're done. There are no domains left to strip off the address,
|
||||||
|
@@ -22,7 +22,7 @@
|
|||||||
/* The delivery agent to use. This is the first field of an entry
|
/* The delivery agent to use. This is the first field of an entry
|
||||||
/* in the \fBmaster.cf\fR file.
|
/* in the \fBmaster.cf\fR file.
|
||||||
/* .IP \fInexthop\fR
|
/* .IP \fInexthop\fR
|
||||||
/* The host to send to. For local delivery this is an empty string.
|
/* The host to send to and optional delivery method information.
|
||||||
/* .IP \fIrecipient\fR
|
/* .IP \fIrecipient\fR
|
||||||
/* The envelope recipient address that is passed on to \fInexthop\fR.
|
/* The envelope recipient address that is passed on to \fInexthop\fR.
|
||||||
/* .PP
|
/* .PP
|
||||||
@@ -56,18 +56,21 @@
|
|||||||
/* .SH Miscellaneous
|
/* .SH Miscellaneous
|
||||||
/* .ad
|
/* .ad
|
||||||
/* .fi
|
/* .fi
|
||||||
|
/* .IP \fBempty_address_recipient\fR
|
||||||
|
/* The recipient that is substituted for the null address.
|
||||||
/* .IP \fBinet_interfaces\fR
|
/* .IP \fBinet_interfaces\fR
|
||||||
/* The network interfaces that this mail system receives mail on.
|
/* The network interfaces that this mail system receives mail on.
|
||||||
/* This information is used to determine if
|
/* This information is used to determine if
|
||||||
/* \fIuser\fR@[\fInet.work.addr.ess\fR] is local or remote.
|
/* \fIuser\fR@[\fInet.work.addr.ess\fR] is local or remote.
|
||||||
|
/* Mail for local users is given to the \fB$local_transport\fR.
|
||||||
/* .IP \fBmydestination\fR
|
/* .IP \fBmydestination\fR
|
||||||
/* List of domains that are given to the \fB$local_transport\fR.
|
/* List of domains that are given to the \fB$local_transport\fR.
|
||||||
/* .IP \fBvirtual_alias_domains\fT
|
/* .IP \fBvirtual_alias_domains\fR
|
||||||
/* List of simulated virtual domains (domains with all recipients
|
/* List of simulated virtual domains (domains with all recipients
|
||||||
/* aliased to some other local or remote domain).
|
/* aliased to some other local or remote domain).
|
||||||
/* .IP \fBvirtual_mailbox_domains\fT
|
/* .IP \fBvirtual_mailbox_domains\fR
|
||||||
/* List of domains that are given to the \fB$virtual_transport\fR.
|
/* List of domains that are given to the \fB$virtual_transport\fR.
|
||||||
/* .IP \fBrelay_domains\fT
|
/* .IP \fBrelay_domains\fR
|
||||||
/* List of domains that are given to the \fB$relay_transport\fR.
|
/* List of domains that are given to the \fB$relay_transport\fR.
|
||||||
/* .IP \fBresolve_unquoted_address\fR
|
/* .IP \fBresolve_unquoted_address\fR
|
||||||
/* When resolving an address, do not quote the address localpart as
|
/* When resolving an address, do not quote the address localpart as
|
||||||
@@ -176,6 +179,7 @@
|
|||||||
#include <resolve_clnt.h>
|
#include <resolve_clnt.h>
|
||||||
#include <rewrite_clnt.h>
|
#include <rewrite_clnt.h>
|
||||||
#include <tok822.h>
|
#include <tok822.h>
|
||||||
|
#include <mail_addr.h>
|
||||||
|
|
||||||
/* Multi server skeleton. */
|
/* Multi server skeleton. */
|
||||||
|
|
||||||
@@ -206,6 +210,7 @@ char *var_virt_alias_doms;
|
|||||||
char *var_virt_mailbox_doms;
|
char *var_virt_mailbox_doms;
|
||||||
char *var_relocated_maps;
|
char *var_relocated_maps;
|
||||||
char *var_def_transport;
|
char *var_def_transport;
|
||||||
|
char *var_empty_addr;
|
||||||
|
|
||||||
/* rewrite_service - read request and send reply */
|
/* rewrite_service - read request and send reply */
|
||||||
|
|
||||||
@@ -281,6 +286,7 @@ int main(int argc, char **argv)
|
|||||||
VAR_VIRT_TRANSPORT, DEF_VIRT_TRANSPORT, &var_virt_transport, 1, 0,
|
VAR_VIRT_TRANSPORT, DEF_VIRT_TRANSPORT, &var_virt_transport, 1, 0,
|
||||||
VAR_RELAY_TRANSPORT, DEF_RELAY_TRANSPORT, &var_relay_transport, 1, 0,
|
VAR_RELAY_TRANSPORT, DEF_RELAY_TRANSPORT, &var_relay_transport, 1, 0,
|
||||||
VAR_RELOCATED_MAPS, DEF_RELOCATED_MAPS, &var_relocated_maps, 0, 0,
|
VAR_RELOCATED_MAPS, DEF_RELOCATED_MAPS, &var_relocated_maps, 0, 0,
|
||||||
|
VAR_EMPTY_ADDR, DEF_EMPTY_ADDR, &var_empty_addr, 1, 0,
|
||||||
0,
|
0,
|
||||||
};
|
};
|
||||||
static CONFIG_BOOL_TABLE bool_table[] = {
|
static CONFIG_BOOL_TABLE bool_table[] = {
|
||||||
|
@@ -39,7 +39,10 @@
|
|||||||
/* The \fBvirtual\fR delivery agent prepends a "\fBFrom \fIsender
|
/* The \fBvirtual\fR delivery agent prepends a "\fBFrom \fIsender
|
||||||
/* time_stamp\fR" envelope header to each message, prepends a
|
/* time_stamp\fR" envelope header to each message, prepends a
|
||||||
/* \fBDelivered-To:\fR message header with the envelope recipient
|
/* \fBDelivered-To:\fR message header with the envelope recipient
|
||||||
/* address, prepends a \fBReturn-Path:\fR message header with the
|
/* address,
|
||||||
|
/* prepends an \fBX-Original-To:\fR header with the recipient address as
|
||||||
|
/* given to Postfix,
|
||||||
|
/* prepends a \fBReturn-Path:\fR message header with the
|
||||||
/* envelope sender address, prepends a \fB>\fR character to lines
|
/* envelope sender address, prepends a \fB>\fR character to lines
|
||||||
/* beginning with "\fBFrom \fR", and appends an empty line.
|
/* beginning with "\fBFrom \fR", and appends an empty line.
|
||||||
/*
|
/*
|
||||||
|
Reference in New Issue
Block a user