mirror of
https://github.com/vdukhovni/postfix
synced 2025-09-01 22:55:29 +00:00
postfix-2.4.0-RC3
This commit is contained in:
committed by
Viktor Dukhovni
parent
6bb0ea6ed7
commit
e108e23c02
@@ -9851,7 +9851,7 @@ Apologies for any names omitted.
|
|||||||
Bugfix: the test for "no debugger_command" was wrong.
|
Bugfix: the test for "no debugger_command" was wrong.
|
||||||
Leandro Santi. File: global/debugger_command.c.
|
Leandro Santi. File: global/debugger_command.c.
|
||||||
|
|
||||||
20040117
|
20041117
|
||||||
|
|
||||||
Robustness: the master-child protocol now includes a process
|
Robustness: the master-child protocol now includes a process
|
||||||
generation number besides the child process ID. The process
|
generation number besides the child process ID. The process
|
||||||
@@ -13315,6 +13315,12 @@ Apologies for any names omitted.
|
|||||||
for a limited number of times before terminating the process.
|
for a limited number of times before terminating the process.
|
||||||
Files: master/single_server.c, master/multi_server.c.
|
Files: master/single_server.c, master/multi_server.c.
|
||||||
|
|
||||||
|
20070306
|
||||||
|
|
||||||
|
Bugfix (introduced with Postfix 2.3 Milter support): postdrop
|
||||||
|
reported "illegal seek" instead of "file too large". File:
|
||||||
|
postdrop/postdrop.c.
|
||||||
|
|
||||||
Wish list:
|
Wish list:
|
||||||
|
|
||||||
Update message content length when adding/removing headers.
|
Update message content length when adding/removing headers.
|
||||||
@@ -13329,6 +13335,7 @@ Wish list:
|
|||||||
am using now.
|
am using now.
|
||||||
|
|
||||||
Update MILTER_README with Martinec info.
|
Update MILTER_README with Martinec info.
|
||||||
|
http://www.ijs.si/software/amavisd/amavisd-new-docs.html#dkim
|
||||||
|
|
||||||
Make postcat header/body aware so people can grep headers.
|
Make postcat header/body aware so people can grep headers.
|
||||||
|
|
||||||
|
@@ -558,7 +558,7 @@ Their DSA counterparts:
|
|||||||
|
|
||||||
/etc/postfix/main.cf:
|
/etc/postfix/main.cf:
|
||||||
smtp_tls_dcert_file = /etc/postfix/client-dsa.pem
|
smtp_tls_dcert_file = /etc/postfix/client-dsa.pem
|
||||||
smtp_tls_dkey_file = $smtp_tls_cert_file
|
smtp_tls_dkey_file = $smtp_tls_dcert_file
|
||||||
|
|
||||||
To verify a remote SMTP server certificate, the Postfix SMTP client needs to
|
To verify a remote SMTP server certificate, the Postfix SMTP client needs to
|
||||||
trust the certificates of the issuing certification authorities. These
|
trust the certificates of the issuing certification authorities. These
|
||||||
|
@@ -673,7 +673,7 @@ Their DSA counterparts:
|
|||||||
|
|
||||||
/etc/postfix/main.cf:
|
/etc/postfix/main.cf:
|
||||||
smtp_tls_dcert_file = /etc/postfix/client-dsa.pem
|
smtp_tls_dcert_file = /etc/postfix/client-dsa.pem
|
||||||
smtp_tls_dkey_file = $smtp_tls_cert_file
|
smtp_tls_dkey_file = $smtp_tls_dcert_file
|
||||||
|
|
||||||
To verify a remote SMTP server certificate, the Postfix SMTP client needs to
|
To verify a remote SMTP server certificate, the Postfix SMTP client needs to
|
||||||
trust the certificates of the issuing certification authorities. These
|
trust the certificates of the issuing certification authorities. These
|
||||||
|
@@ -316,12 +316,14 @@ Notes:
|
|||||||
NEVER list a virtual MAILBOX domain name as a virtual ALIAS domain!
|
NEVER list a virtual MAILBOX domain name as a virtual ALIAS domain!
|
||||||
|
|
||||||
* Lines 4, 7-13: The virtual_mailbox_maps parameter specifies the lookup
|
* Lines 4, 7-13: The virtual_mailbox_maps parameter specifies the lookup
|
||||||
table with all valid recipient addresses. The lookup result is ignored by
|
table with all valid recipient addresses. The lookup result value is
|
||||||
Postfix. In the above example, info@example.com and sales@example.com are
|
ignored by Postfix. In the above example, info@example.com and
|
||||||
listed as valid addresses, and mail for anything else is rejected with
|
sales@example.com are listed as valid addresses; other mail for example.com
|
||||||
"User unknown". If you intend to use LDAP, MySQL or PgSQL instead of local
|
is rejected with "User unknown" by the Postfix SMTP server. It's left up to
|
||||||
files, be sure to review the "local files versus databases" section at the
|
the non-Postfix delivery agent to reject non-existent recipients from local
|
||||||
top of this document!
|
submission or from local alias expansion. If you intend to use LDAP, MySQL
|
||||||
|
or PgSQL instead of local files, be sure to review the "local files versus
|
||||||
|
databases" section at the top of this document!
|
||||||
|
|
||||||
* Line 12: The commented out entry (text after #) shows how one would inform
|
* Line 12: The commented out entry (text after #) shows how one would inform
|
||||||
Postfix of the existence of a catch-all address. Again, the lookup result
|
Postfix of the existence of a catch-all address. Again, the lookup result
|
||||||
|
@@ -829,7 +829,7 @@ is correctly configured to supply its intermediate CA certificate). </p>
|
|||||||
<pre>
|
<pre>
|
||||||
/etc/postfix/<a href="postconf.5.html">main.cf</a>:
|
/etc/postfix/<a href="postconf.5.html">main.cf</a>:
|
||||||
<a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a> = /etc/postfix/client-dsa.pem
|
<a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a> = /etc/postfix/client-dsa.pem
|
||||||
<a href="postconf.5.html#smtp_tls_dkey_file">smtp_tls_dkey_file</a> = $<a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a>
|
<a href="postconf.5.html#smtp_tls_dkey_file">smtp_tls_dkey_file</a> = $<a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a>
|
||||||
</pre>
|
</pre>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
|
|
||||||
|
@@ -969,7 +969,7 @@ is correctly configured to supply its intermediate CA certificate). </p>
|
|||||||
<pre>
|
<pre>
|
||||||
/etc/postfix/<a href="postconf.5.html">main.cf</a>:
|
/etc/postfix/<a href="postconf.5.html">main.cf</a>:
|
||||||
<a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a> = /etc/postfix/client-dsa.pem
|
<a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a> = /etc/postfix/client-dsa.pem
|
||||||
<a href="postconf.5.html#smtp_tls_dkey_file">smtp_tls_dkey_file</a> = $<a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a>
|
<a href="postconf.5.html#smtp_tls_dkey_file">smtp_tls_dkey_file</a> = $<a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a>
|
||||||
</pre>
|
</pre>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
|
|
||||||
|
@@ -129,7 +129,7 @@ being hosted on the local Postfix machine. </p>
|
|||||||
|
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<pre>
|
<pre>
|
||||||
/etc/postfix/main.cf:
|
/etc/postfix/<a href="postconf.5.html">main.cf</a>:
|
||||||
<a href="postconf.5.html#mydestination">mydestination</a> = $<a href="postconf.5.html#myhostname">myhostname</a> localhost.$<a href="postconf.5.html#mydomain">mydomain</a> ... example.com
|
<a href="postconf.5.html#mydestination">mydestination</a> = $<a href="postconf.5.html#myhostname">myhostname</a> localhost.$<a href="postconf.5.html#mydomain">mydomain</a> ... example.com
|
||||||
</pre>
|
</pre>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
@@ -163,11 +163,11 @@ below shows how to use this mechanism for the example.com domain.
|
|||||||
|
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<pre>
|
<pre>
|
||||||
1 /etc/postfix/main.cf:
|
1 /etc/postfix/<a href="postconf.5.html">main.cf</a>:
|
||||||
2 <a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a> = example.com ...other <a href="VIRTUAL_README.html#canonical">hosted domains</a>...
|
2 <a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a> = example.com ...other <a href="VIRTUAL_README.html#canonical">hosted domains</a>...
|
||||||
3 <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> = hash:/etc/postfix/virtual
|
3 <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> = hash:/etc/postfix/virtual
|
||||||
4
|
4
|
||||||
5 /etc/postfix/virtual:
|
5 /etc/postfix/<a href="virtual.8.html">virtual</a>:
|
||||||
6 postmaster@example.com postmaster
|
6 postmaster@example.com postmaster
|
||||||
7 info@example.com joe
|
7 info@example.com joe
|
||||||
8 sales@example.com jane
|
8 sales@example.com jane
|
||||||
@@ -210,7 +210,7 @@ for spam messages that were sent in the name of anything@example.com.
|
|||||||
|
|
||||||
<p>Execute the command "<b>postmap /etc/postfix/virtual</b>" after
|
<p>Execute the command "<b>postmap /etc/postfix/virtual</b>" after
|
||||||
changing the virtual file, and execute the command "<b>postfix
|
changing the virtual file, and execute the command "<b>postfix
|
||||||
reload</b>" after changing the main.cf file. </p>
|
reload</b>" after changing the <a href="postconf.5.html">main.cf</a> file. </p>
|
||||||
|
|
||||||
<p> Note: virtual aliases can resolve to a local address or to a
|
<p> Note: virtual aliases can resolve to a local address or to a
|
||||||
remote address, or both. They don't have to resolve to UNIX system
|
remote address, or both. They don't have to resolve to UNIX system
|
||||||
@@ -255,7 +255,7 @@ section at the top of this document.</p>
|
|||||||
|
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<pre>
|
<pre>
|
||||||
1 /etc/postfix/main.cf:
|
1 /etc/postfix/<a href="postconf.5.html">main.cf</a>:
|
||||||
2 <a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a> = example.com ...more domains...
|
2 <a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a> = example.com ...more domains...
|
||||||
3 <a href="postconf.5.html#virtual_mailbox_base">virtual_mailbox_base</a> = /var/mail/vhosts
|
3 <a href="postconf.5.html#virtual_mailbox_base">virtual_mailbox_base</a> = /var/mail/vhosts
|
||||||
4 <a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a> = hash:/etc/postfix/vmailbox
|
4 <a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a> = hash:/etc/postfix/vmailbox
|
||||||
@@ -271,7 +271,7 @@ section at the top of this document.</p>
|
|||||||
14 # @example.com example.com/catchall
|
14 # @example.com example.com/catchall
|
||||||
15 ...virtual mailboxes for more domains...
|
15 ...virtual mailboxes for more domains...
|
||||||
16
|
16
|
||||||
17 /etc/postfix/virtual:
|
17 /etc/postfix/<a href="virtual.8.html">virtual</a>:
|
||||||
18 postmaster@example.com postmaster
|
18 postmaster@example.com postmaster
|
||||||
</pre>
|
</pre>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
@@ -329,7 +329,7 @@ mail for example.com's postmaster address to the local postmaster.
|
|||||||
You can use the same mechanism to redirect an address to a remote
|
You can use the same mechanism to redirect an address to a remote
|
||||||
address. </p>
|
address. </p>
|
||||||
|
|
||||||
<li> <p> Line 18: This example assumes that in main.cf, $<a href="postconf.5.html#myorigin">myorigin</a>
|
<li> <p> Line 18: This example assumes that in <a href="postconf.5.html">main.cf</a>, $<a href="postconf.5.html#myorigin">myorigin</a>
|
||||||
is listed under the <a href="postconf.5.html#mydestination">mydestination</a> parameter setting. If that is
|
is listed under the <a href="postconf.5.html#mydestination">mydestination</a> parameter setting. If that is
|
||||||
not the case, specify an explicit domain name on the right-hand
|
not the case, specify an explicit domain name on the right-hand
|
||||||
side of the virtual alias table entries or else mail will go to
|
side of the virtual alias table entries or else mail will go to
|
||||||
@@ -340,7 +340,7 @@ the wrong domain. </p>
|
|||||||
<p> Execute the command "<b>postmap /etc/postfix/virtual</b>" after
|
<p> Execute the command "<b>postmap /etc/postfix/virtual</b>" after
|
||||||
changing the virtual file, execute "<b>postmap /etc/postfix/vmailbox</b>"
|
changing the virtual file, execute "<b>postmap /etc/postfix/vmailbox</b>"
|
||||||
after changing the vmailbox file, and execute the command "<b>postfix
|
after changing the vmailbox file, and execute the command "<b>postfix
|
||||||
reload</b>" after changing the main.cf file. </p>
|
reload</b>" after changing the <a href="postconf.5.html">main.cf</a> file. </p>
|
||||||
|
|
||||||
<p> Note: mail delivery happens with the recipient's UID/GID
|
<p> Note: mail delivery happens with the recipient's UID/GID
|
||||||
privileges specified with <a href="postconf.5.html#virtual_uid_maps">virtual_uid_maps</a> and <a href="postconf.5.html#virtual_gid_maps">virtual_gid_maps</a>.
|
privileges specified with <a href="postconf.5.html#virtual_uid_maps">virtual_uid_maps</a> and <a href="postconf.5.html#virtual_gid_maps">virtual_gid_maps</a>.
|
||||||
@@ -375,7 +375,7 @@ to a non-Postfix delivery agent: </p>
|
|||||||
|
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<pre>
|
<pre>
|
||||||
1 /etc/postfix/main.cf:
|
1 /etc/postfix/<a href="postconf.5.html">main.cf</a>:
|
||||||
2 <a href="postconf.5.html#virtual_transport">virtual_transport</a> = ...see below...
|
2 <a href="postconf.5.html#virtual_transport">virtual_transport</a> = ...see below...
|
||||||
3 <a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a> = example.com ...more domains...
|
3 <a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a> = example.com ...more domains...
|
||||||
4 <a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a> = hash:/etc/postfix/vmailbox
|
4 <a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a> = hash:/etc/postfix/vmailbox
|
||||||
@@ -389,7 +389,7 @@ to a non-Postfix delivery agent: </p>
|
|||||||
12 # @example.com whatever
|
12 # @example.com whatever
|
||||||
13 ...virtual mailboxes for more domains...
|
13 ...virtual mailboxes for more domains...
|
||||||
14
|
14
|
||||||
15 /etc/postfix/virtual:
|
15 /etc/postfix/<a href="virtual.8.html">virtual</a>:
|
||||||
16 postmaster@example.com postmaster
|
16 postmaster@example.com postmaster
|
||||||
</pre>
|
</pre>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
@@ -400,7 +400,7 @@ to a non-Postfix delivery agent: </p>
|
|||||||
|
|
||||||
<li> <p> Line 2: With delivery to a non-Postfix mailbox store for
|
<li> <p> Line 2: With delivery to a non-Postfix mailbox store for
|
||||||
<a href="VIRTUAL_README.html#canonical">hosted domains</a>, the <a href="postconf.5.html#virtual_transport">virtual_transport</a> parameter usually specifies
|
<a href="VIRTUAL_README.html#canonical">hosted domains</a>, the <a href="postconf.5.html#virtual_transport">virtual_transport</a> parameter usually specifies
|
||||||
the Postfix LMTP client, or the name of a master.cf entry that
|
the Postfix LMTP client, or the name of a <a href="master.5.html">master.cf</a> entry that
|
||||||
executes non-Postfix software via the pipe delivery agent. Typical
|
executes non-Postfix software via the pipe delivery agent. Typical
|
||||||
examples (use only one): </p>
|
examples (use only one): </p>
|
||||||
|
|
||||||
@@ -414,7 +414,7 @@ examples (use only one): </p>
|
|||||||
|
|
||||||
<p> Postfix comes ready with support for LMTP. And an example
|
<p> Postfix comes ready with support for LMTP. And an example
|
||||||
maildrop delivery method is already defined in the default Postfix
|
maildrop delivery method is already defined in the default Postfix
|
||||||
master.cf file. See the <a href="MAILDROP_README.html">MAILDROP_README</a> document for more details.
|
<a href="master.5.html">master.cf</a> file. See the <a href="MAILDROP_README.html">MAILDROP_README</a> document for more details.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<li> <p> Line 3: The <a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a> setting tells Postfix
|
<li> <p> Line 3: The <a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a> setting tells Postfix
|
||||||
@@ -432,9 +432,13 @@ domain! </p>
|
|||||||
|
|
||||||
<li> <p> Lines 4, 7-13: The <a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a> parameter specifies
|
<li> <p> Lines 4, 7-13: The <a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a> parameter specifies
|
||||||
the lookup table with all valid recipient addresses. The lookup
|
the lookup table with all valid recipient addresses. The lookup
|
||||||
result is ignored by Postfix. In the above example, info@example.com
|
result value is ignored by Postfix. In the above example,
|
||||||
and sales@example.com are listed as valid addresses, and mail for
|
info@example.com
|
||||||
anything else is rejected with "User unknown". If you intend to
|
and sales@example.com are listed as valid addresses; other mail for
|
||||||
|
example.com is rejected with "User unknown" by the Postfix SMTP
|
||||||
|
server. It's left up to the non-Postfix delivery agent to reject
|
||||||
|
non-existent recipients from local submission or from local alias
|
||||||
|
expansion. If you intend to
|
||||||
use LDAP, MySQL or PgSQL instead of local files, be sure to review
|
use LDAP, MySQL or PgSQL instead of local files, be sure to review
|
||||||
the <a href="#local_vs_database"> "local files versus databases"</a>
|
the <a href="#local_vs_database"> "local files versus databases"</a>
|
||||||
section at the top of this document! </p>
|
section at the top of this document! </p>
|
||||||
@@ -456,7 +460,7 @@ redirect mail for example.com's postmaster address to the local
|
|||||||
postmaster. You can use the same mechanism to redirect any addresses
|
postmaster. You can use the same mechanism to redirect any addresses
|
||||||
to a local or remote address. </p>
|
to a local or remote address. </p>
|
||||||
|
|
||||||
<li> <p> Line 16: This example assumes that in main.cf, $<a href="postconf.5.html#myorigin">myorigin</a>
|
<li> <p> Line 16: This example assumes that in <a href="postconf.5.html">main.cf</a>, $<a href="postconf.5.html#myorigin">myorigin</a>
|
||||||
is listed under the <a href="postconf.5.html#mydestination">mydestination</a> parameter setting. If that is
|
is listed under the <a href="postconf.5.html#mydestination">mydestination</a> parameter setting. If that is
|
||||||
not the case, specify an explicit domain name on the right-hand
|
not the case, specify an explicit domain name on the right-hand
|
||||||
side of the virtual alias table entries or else mail will go to
|
side of the virtual alias table entries or else mail will go to
|
||||||
@@ -467,7 +471,7 @@ the wrong domain. </p>
|
|||||||
<p> Execute the command "<b>postmap /etc/postfix/virtual</b>" after
|
<p> Execute the command "<b>postmap /etc/postfix/virtual</b>" after
|
||||||
changing the virtual file, execute "<b>postmap /etc/postfix/vmailbox</b>"
|
changing the virtual file, execute "<b>postmap /etc/postfix/vmailbox</b>"
|
||||||
after changing the vmailbox file, and execute the command "<b>postfix
|
after changing the vmailbox file, and execute the command "<b>postfix
|
||||||
reload</b>" after changing the main.cf file. </p>
|
reload</b>" after changing the <a href="postconf.5.html">main.cf</a> file. </p>
|
||||||
|
|
||||||
<h2><a name="forwarding">Mail forwarding domains</a></h2>
|
<h2><a name="forwarding">Mail forwarding domains</a></h2>
|
||||||
|
|
||||||
@@ -478,11 +482,11 @@ as a mail forwarding domain: </p>
|
|||||||
|
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<pre>
|
<pre>
|
||||||
1 /etc/postfix/main.cf:
|
1 /etc/postfix/<a href="postconf.5.html">main.cf</a>:
|
||||||
2 <a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a> = example.com ...other <a href="VIRTUAL_README.html#canonical">hosted domains</a>...
|
2 <a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a> = example.com ...other <a href="VIRTUAL_README.html#canonical">hosted domains</a>...
|
||||||
3 <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> = hash:/etc/postfix/virtual
|
3 <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> = hash:/etc/postfix/virtual
|
||||||
4
|
4
|
||||||
5 /etc/postfix/virtual:
|
5 /etc/postfix/<a href="virtual.8.html">virtual</a>:
|
||||||
6 postmaster@example.com postmaster
|
6 postmaster@example.com postmaster
|
||||||
7 joe@example.com joe@somewhere
|
7 joe@example.com joe@somewhere
|
||||||
8 jane@example.com jane@somewhere-else
|
8 jane@example.com jane@somewhere-else
|
||||||
@@ -526,7 +530,7 @@ for spam messages that were sent in the name of anything@example.com.
|
|||||||
|
|
||||||
<p> Execute the command "<b>postmap /etc/postfix/virtual</b>" after
|
<p> Execute the command "<b>postmap /etc/postfix/virtual</b>" after
|
||||||
changing the virtual file, and execute the command "<b>postfix
|
changing the virtual file, and execute the command "<b>postfix
|
||||||
reload</b>" after changing the main.cf file. </p>
|
reload</b>" after changing the <a href="postconf.5.html">main.cf</a> file. </p>
|
||||||
|
|
||||||
<p> More details about the virtual alias file are given in the
|
<p> More details about the virtual alias file are given in the
|
||||||
<a href="virtual.5.html">virtual(5)</a> manual page, including multiple addresses on the right-hand
|
<a href="virtual.5.html">virtual(5)</a> manual page, including multiple addresses on the right-hand
|
||||||
@@ -546,10 +550,10 @@ virtual addresses to the local delivery agent: </p>
|
|||||||
|
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<pre>
|
<pre>
|
||||||
/etc/postfix/main.cf:
|
/etc/postfix/<a href="postconf.5.html">main.cf</a>:
|
||||||
<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> = hash:/etc/postfix/virtual
|
<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> = hash:/etc/postfix/virtual
|
||||||
|
|
||||||
/etc/postfix/virtual:
|
/etc/postfix/<a href="virtual.8.html">virtual</a>:
|
||||||
listname-request@example.com listname-request
|
listname-request@example.com listname-request
|
||||||
listname@example.com listname
|
listname@example.com listname
|
||||||
owner-listname@example.com owner-listname
|
owner-listname@example.com owner-listname
|
||||||
@@ -561,7 +565,7 @@ virtual addresses to the local delivery agent: </p>
|
|||||||
</pre>
|
</pre>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
|
|
||||||
<p> This example assumes that in main.cf, $<a href="postconf.5.html#myorigin">myorigin</a> is listed under
|
<p> This example assumes that in <a href="postconf.5.html">main.cf</a>, $<a href="postconf.5.html#myorigin">myorigin</a> is listed under
|
||||||
the <a href="postconf.5.html#mydestination">mydestination</a> parameter setting. If that is not the case,
|
the <a href="postconf.5.html#mydestination">mydestination</a> parameter setting. If that is not the case,
|
||||||
specify an explicit domain name on the right-hand side of the
|
specify an explicit domain name on the right-hand side of the
|
||||||
virtual alias table entries or else mail will go to the wrong
|
virtual alias table entries or else mail will go to the wrong
|
||||||
@@ -594,10 +598,10 @@ table: </p>
|
|||||||
|
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<pre>
|
<pre>
|
||||||
/etc/postfix/main.cf:
|
/etc/postfix/<a href="postconf.5.html">main.cf</a>:
|
||||||
<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> = hash:/etc/postfix/virtual
|
<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> = hash:/etc/postfix/virtual
|
||||||
|
|
||||||
/etc/postfix/virtual:
|
/etc/postfix/<a href="virtual.8.html">virtual</a>:
|
||||||
user@domain.tld user@domain.tld, user@domain.tld@autoreply.<a href="postconf.5.html#mydomain">mydomain</a>.tld
|
user@domain.tld user@domain.tld, user@domain.tld@autoreply.<a href="postconf.5.html#mydomain">mydomain</a>.tld
|
||||||
</pre>
|
</pre>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
@@ -613,13 +617,13 @@ reply back to the sender. </p>
|
|||||||
|
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<pre>
|
<pre>
|
||||||
/etc/postfix/main.cf:
|
/etc/postfix/<a href="postconf.5.html">main.cf</a>:
|
||||||
<a href="postconf.5.html#transport_maps">transport_maps</a> = hash:/etc/postfix/transport
|
<a href="postconf.5.html#transport_maps">transport_maps</a> = hash:/etc/postfix/transport
|
||||||
|
|
||||||
/etc/postfix/transport:
|
/etc/postfix/transport:
|
||||||
autoreply.<a href="postconf.5.html#mydomain">mydomain</a>.tld autoreply:
|
autoreply.<a href="postconf.5.html#mydomain">mydomain</a>.tld autoreply:
|
||||||
|
|
||||||
/etc/postfix/master.cf:
|
/etc/postfix/<a href="master.5.html">master.cf</a>:
|
||||||
# =============================================================
|
# =============================================================
|
||||||
# service type private unpriv chroot wakeup maxproc command
|
# service type private unpriv chroot wakeup maxproc command
|
||||||
# (yes) (yes) (yes) (never) (100)
|
# (yes) (yes) (yes) (never) (100)
|
||||||
@@ -633,7 +637,7 @@ reply back to the sender. </p>
|
|||||||
the user@domain.tld recipient address on the command line. </p>
|
the user@domain.tld recipient address on the command line. </p>
|
||||||
|
|
||||||
<p> For more information, see the <a href="pipe.8.html">pipe(8)</a> manual page, and the
|
<p> For more information, see the <a href="pipe.8.html">pipe(8)</a> manual page, and the
|
||||||
comments in the Postfix master.cf file. </p>
|
comments in the Postfix <a href="master.5.html">master.cf</a> file. </p>
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
@@ -139,11 +139,11 @@ PIPE(8) PIPE(8)
|
|||||||
ware.
|
ware.
|
||||||
|
|
||||||
<b>null_sender</b>=<i>replacement</i> (default: MAILER-DAEMON)
|
<b>null_sender</b>=<i>replacement</i> (default: MAILER-DAEMON)
|
||||||
Replace the null sender address, which is typically
|
Replace the null sender address (typically used for
|
||||||
used for delivery status notifications, with the
|
delivery status notifications) with the specified
|
||||||
specified text when expanding the <b>$sender</b> command-
|
text when expanding the <b>$sender</b> command-line macro,
|
||||||
line macro, and when generating a From_ or Return-
|
and when generating a From_ or Return-Path: message
|
||||||
Path: message header.
|
header.
|
||||||
|
|
||||||
If the null sender replacement text is a non-empty
|
If the null sender replacement text is a non-empty
|
||||||
string then it is affected by the <b>q</b> flag for
|
string then it is affected by the <b>q</b> flag for
|
||||||
|
@@ -282,9 +282,9 @@ SENDMAIL(1) SENDMAIL(1)
|
|||||||
|
|
||||||
<b>SECURITY</b>
|
<b>SECURITY</b>
|
||||||
By design, this program is not set-user (or group) id.
|
By design, this program is not set-user (or group) id.
|
||||||
However, it must handle data from untrusted users or
|
However, it must handle data from untrusted, possibly
|
||||||
untrusted machines. Thus, the usual precautions need to
|
remote, users. Thus, the usual precautions need to be
|
||||||
be taken against malicious inputs.
|
taken against malicious inputs.
|
||||||
|
|
||||||
<b>DIAGNOSTICS</b>
|
<b>DIAGNOSTICS</b>
|
||||||
Problems are logged to <b>syslogd</b>(8) and to the standard
|
Problems are logged to <b>syslogd</b>(8) and to the standard
|
||||||
|
@@ -230,7 +230,7 @@ Log mailer traffic. Use the \fBdebug_peer_list\fR and
|
|||||||
.ad
|
.ad
|
||||||
.fi
|
.fi
|
||||||
By design, this program is not set-user (or group) id. However,
|
By design, this program is not set-user (or group) id. However,
|
||||||
it must handle data from untrusted users or untrusted machines.
|
it must handle data from untrusted, possibly remote, users.
|
||||||
Thus, the usual precautions need to be taken against malicious
|
Thus, the usual precautions need to be taken against malicious
|
||||||
inputs.
|
inputs.
|
||||||
.SH DIAGNOSTICS
|
.SH DIAGNOSTICS
|
||||||
|
@@ -128,8 +128,8 @@ Prepend "\fB>\fR" to lines starting with "\fBFrom \fR". This is expected
|
|||||||
by, for example, \fBUUCP\fR software.
|
by, for example, \fBUUCP\fR software.
|
||||||
.RE
|
.RE
|
||||||
.IP "\fBnull_sender\fR=\fIreplacement\fR (default: MAILER-DAEMON)"
|
.IP "\fBnull_sender\fR=\fIreplacement\fR (default: MAILER-DAEMON)"
|
||||||
Replace the null sender address, which is typically used
|
Replace the null sender address (typically used for delivery
|
||||||
for delivery status notifications, with the specified text
|
status notifications) with the specified text
|
||||||
when expanding the \fB$sender\fR command-line macro, and
|
when expanding the \fB$sender\fR command-line macro, and
|
||||||
when generating a From_ or Return-Path: message header.
|
when generating a From_ or Return-Path: message header.
|
||||||
|
|
||||||
|
@@ -829,7 +829,7 @@ is correctly configured to supply its intermediate CA certificate). </p>
|
|||||||
<pre>
|
<pre>
|
||||||
/etc/postfix/main.cf:
|
/etc/postfix/main.cf:
|
||||||
smtp_tls_dcert_file = /etc/postfix/client-dsa.pem
|
smtp_tls_dcert_file = /etc/postfix/client-dsa.pem
|
||||||
smtp_tls_dkey_file = $smtp_tls_cert_file
|
smtp_tls_dkey_file = $smtp_tls_dcert_file
|
||||||
</pre>
|
</pre>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
|
|
||||||
|
@@ -969,7 +969,7 @@ is correctly configured to supply its intermediate CA certificate). </p>
|
|||||||
<pre>
|
<pre>
|
||||||
/etc/postfix/main.cf:
|
/etc/postfix/main.cf:
|
||||||
smtp_tls_dcert_file = /etc/postfix/client-dsa.pem
|
smtp_tls_dcert_file = /etc/postfix/client-dsa.pem
|
||||||
smtp_tls_dkey_file = $smtp_tls_cert_file
|
smtp_tls_dkey_file = $smtp_tls_dcert_file
|
||||||
</pre>
|
</pre>
|
||||||
</blockquote>
|
</blockquote>
|
||||||
|
|
||||||
|
@@ -432,9 +432,13 @@ domain! </p>
|
|||||||
|
|
||||||
<li> <p> Lines 4, 7-13: The virtual_mailbox_maps parameter specifies
|
<li> <p> Lines 4, 7-13: The virtual_mailbox_maps parameter specifies
|
||||||
the lookup table with all valid recipient addresses. The lookup
|
the lookup table with all valid recipient addresses. The lookup
|
||||||
result is ignored by Postfix. In the above example, info@example.com
|
result value is ignored by Postfix. In the above example,
|
||||||
and sales@example.com are listed as valid addresses, and mail for
|
info@example.com
|
||||||
anything else is rejected with "User unknown". If you intend to
|
and sales@example.com are listed as valid addresses; other mail for
|
||||||
|
example.com is rejected with "User unknown" by the Postfix SMTP
|
||||||
|
server. It's left up to the non-Postfix delivery agent to reject
|
||||||
|
non-existent recipients from local submission or from local alias
|
||||||
|
expansion. If you intend to
|
||||||
use LDAP, MySQL or PgSQL instead of local files, be sure to review
|
use LDAP, MySQL or PgSQL instead of local files, be sure to review
|
||||||
the <a href="#local_vs_database"> "local files versus databases"</a>
|
the <a href="#local_vs_database"> "local files versus databases"</a>
|
||||||
section at the top of this document! </p>
|
section at the top of this document! </p>
|
||||||
|
@@ -20,8 +20,8 @@
|
|||||||
* Patches change both the patchlevel and the release date. Snapshots have no
|
* Patches change both the patchlevel and the release date. Snapshots have no
|
||||||
* patchlevel; they change the release date only.
|
* patchlevel; they change the release date only.
|
||||||
*/
|
*/
|
||||||
#define MAIL_RELEASE_DATE "20070301"
|
#define MAIL_RELEASE_DATE "20070306"
|
||||||
#define MAIL_VERSION_NUMBER "2.4.0-RC2"
|
#define MAIL_VERSION_NUMBER "2.4.0-RC3"
|
||||||
|
|
||||||
#ifdef SNAPSHOT
|
#ifdef SNAPSHOT
|
||||||
# define MAIL_VERSION_DATE "-" MAIL_RELEASE_DATE
|
# define MAIL_VERSION_DATE "-" MAIL_RELEASE_DATE
|
||||||
|
@@ -315,7 +315,7 @@ static void trigger_server_accept_local(int unused_event, char *context)
|
|||||||
msg_fatal("select unlock: %m");
|
msg_fatal("select unlock: %m");
|
||||||
if (fd < 0) {
|
if (fd < 0) {
|
||||||
if (errno != EAGAIN)
|
if (errno != EAGAIN)
|
||||||
msg_fatal("accept connection: %m");
|
msg_error("accept connection: %m");
|
||||||
if (time_left >= 0)
|
if (time_left >= 0)
|
||||||
event_request_timer(trigger_server_timeout, (char *) 0, time_left);
|
event_request_timer(trigger_server_timeout, (char *) 0, time_left);
|
||||||
return;
|
return;
|
||||||
@@ -361,7 +361,7 @@ static void trigger_server_accept_pass(int unused_event, char *context)
|
|||||||
msg_fatal("select unlock: %m");
|
msg_fatal("select unlock: %m");
|
||||||
if (fd < 0) {
|
if (fd < 0) {
|
||||||
if (errno != EAGAIN)
|
if (errno != EAGAIN)
|
||||||
msg_fatal("accept connection: %m");
|
msg_error("accept connection: %m");
|
||||||
if (time_left >= 0)
|
if (time_left >= 0)
|
||||||
event_request_timer(trigger_server_timeout, (char *) 0, time_left);
|
event_request_timer(trigger_server_timeout, (char *) 0, time_left);
|
||||||
return;
|
return;
|
||||||
|
@@ -118,8 +118,8 @@
|
|||||||
/* by, for example, \fBUUCP\fR software.
|
/* by, for example, \fBUUCP\fR software.
|
||||||
/* .RE
|
/* .RE
|
||||||
/* .IP "\fBnull_sender\fR=\fIreplacement\fR (default: MAILER-DAEMON)"
|
/* .IP "\fBnull_sender\fR=\fIreplacement\fR (default: MAILER-DAEMON)"
|
||||||
/* Replace the null sender address, which is typically used
|
/* Replace the null sender address (typically used for delivery
|
||||||
/* for delivery status notifications, with the specified text
|
/* status notifications) with the specified text
|
||||||
/* when expanding the \fB$sender\fR command-line macro, and
|
/* when expanding the \fB$sender\fR command-line macro, and
|
||||||
/* when generating a From_ or Return-Path: message header.
|
/* when generating a From_ or Return-Path: message header.
|
||||||
/*
|
/*
|
||||||
|
@@ -229,6 +229,7 @@ int main(int argc, char **argv)
|
|||||||
const char *errstr;
|
const char *errstr;
|
||||||
char *junk;
|
char *junk;
|
||||||
struct timeval start;
|
struct timeval start;
|
||||||
|
int saved_errno;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Be consistent with file permissions.
|
* Be consistent with file permissions.
|
||||||
@@ -427,9 +428,12 @@ int main(int argc, char **argv)
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (REC_PUT_BUF(dst->stream, rec_type, buf) < 0) {
|
if (REC_PUT_BUF(dst->stream, rec_type, buf) < 0) {
|
||||||
while ((rec_type = rec_get(VSTREAM_IN, buf, var_line_limit)) > 0
|
/* rec_get() errors must not clobber errno. */
|
||||||
&& rec_type != REC_TYPE_END)
|
saved_errno = errno;
|
||||||
|
while (rec_get_raw(VSTREAM_IN, buf, var_line_limit,
|
||||||
|
REC_FLAG_NONE) > 0)
|
||||||
/* void */ ;
|
/* void */ ;
|
||||||
|
errno = saved_errno;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (rec_type == REC_TYPE_END)
|
if (rec_type == REC_TYPE_END)
|
||||||
@@ -441,8 +445,8 @@ int main(int argc, char **argv)
|
|||||||
* Finish the file.
|
* Finish the file.
|
||||||
*/
|
*/
|
||||||
if ((status = mail_stream_finish(dst, (VSTRING *) 0)) != 0) {
|
if ((status = mail_stream_finish(dst, (VSTRING *) 0)) != 0) {
|
||||||
postdrop_cleanup();
|
|
||||||
msg_warn("uid=%ld: %m", (long) uid);
|
msg_warn("uid=%ld: %m", (long) uid);
|
||||||
|
postdrop_cleanup();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@@ -222,7 +222,7 @@
|
|||||||
/* .ad
|
/* .ad
|
||||||
/* .fi
|
/* .fi
|
||||||
/* By design, this program is not set-user (or group) id. However,
|
/* By design, this program is not set-user (or group) id. However,
|
||||||
/* it must handle data from untrusted users or untrusted machines.
|
/* it must handle data from untrusted, possibly remote, users.
|
||||||
/* Thus, the usual precautions need to be taken against malicious
|
/* Thus, the usual precautions need to be taken against malicious
|
||||||
/* inputs.
|
/* inputs.
|
||||||
/* DIAGNOSTICS
|
/* DIAGNOSTICS
|
||||||
|
Reference in New Issue
Block a user