2
0
mirror of https://github.com/vdukhovni/postfix synced 2025-08-29 13:18:12 +00:00

postfix-2.11-20131105

This commit is contained in:
Wietse Venema 2013-11-05 00:00:00 -05:00 committed by Viktor Dukhovni
parent 1fa35743a5
commit 9aa88be230
7 changed files with 146 additions and 123 deletions

View File

@ -19039,7 +19039,7 @@ Apologies for any names omitted.
Security violation: by default, LMDB 0.9.9 writes uninitialized
heap memory to a world-readable database file, as chunks
of up to 4096 bytes. This is a gross memory disclosure
of up to 4096 bytes. This is a huge memory disclosure
vulnerability: memory content that a program does not intend
to share ends up in a world-readable file. The content of
uninitialized heap memory depends on program execution
@ -19068,3 +19068,8 @@ Apologies for any names omitted.
This was primarily an issue with non-HTML output, but it does
not hurt to do this also for HTML. Files: proto/Makefile.in,
proto/MULTI_INSTANCE_README.html.
20121104
Feature: ${queue_id} macro support for the pipe(8) delivery
agent by Andreas Schulze. File: pipe/pipe.c.

View File

@ -223,37 +223,37 @@ PIPE(8) PIPE(8)
and $(<i>name</i>) are also recognized. Specify <b>$$</b> where
a single <b>$</b> is wanted.
<b>${client_address</b>}
<b>${client_address}</b>
This macro expands to the remote client net-
work address.
This feature is available as of Postfix 2.2.
<b>${client_helo</b>}
<b>${client_helo}</b>
This macro expands to the remote client HELO
command parameter.
This feature is available as of Postfix 2.2.
<b>${client_hostname</b>}
<b>${client_hostname}</b>
This macro expands to the remote client
hostname.
This feature is available as of Postfix 2.2.
<b>${client_port</b>}
<b>${client_port}</b>
This macro expands to the remote client TCP
port number.
This feature is available as of Postfix 2.5.
<b>${client_protocol</b>}
<b>${client_protocol}</b>
This macro expands to the remote client pro-
tocol.
This feature is available as of Postfix 2.2.
<b>${domain</b>}
<b>${domain}</b>
This macro expands to the domain portion of
the recipient address. For example, with an
address <i>user+foo@domain</i> the domain is
@ -264,45 +264,45 @@ PIPE(8) PIPE(8)
This feature is available as of Postfix 2.5.
<b>${extension</b>}
<b>${extension}</b>
This macro expands to the extension part of
a recipient address. For example, with an
address <i>user+foo@domain</i> the extension is
<i>foo</i>.
A command-line argument that contains
<b>${extension</b>} expands into as many command-
<b>${extension}</b> expands into as many command-
line arguments as there are recipients.
This information is modified by the <b>u</b> flag
for case folding.
<b>${mailbox</b>}
<b>${mailbox}</b>
This macro expands to the complete local
part of a recipient address. For example,
with an address <i>user+foo@domain</i> the mailbox
is <i>user+foo</i>.
A command-line argument that contains
<b>${mailbox</b>} expands to as many command-line
<b>${mailbox}</b> expands to as many command-line
arguments as there are recipients.
This information is modified by the <b>u</b> flag
for case folding.
<b>${nexthop</b>}
<b>${nexthop}</b>
This macro expands to the next-hop hostname.
This information is modified by the <b>h</b> flag
for case folding.
<b>${original_recipient</b>}
<b>${original_recipient}</b>
This macro expands to the complete recipient
address before any address rewriting or
aliasing.
A command-line argument that contains
<b>${original_recipient</b>} expands to as many
<b>${original_recipient}</b> expands to as many
command-line arguments as there are recipi-
ents.
@ -311,18 +311,24 @@ PIPE(8) PIPE(8)
This feature is available as of Postfix 2.5.
<b>${recipient</b>}
<b>${queue_id}</b>
This macro expands to the queue id.
This feature is available as of Postfix
2.11.
<b>${recipient}</b>
This macro expands to the complete recipient
address.
A command-line argument that contains
<b>${recipient</b>} expands to as many command-line
<b>${recipient}</b> expands to as many command-line
arguments as there are recipients.
This information is modified by the <b>hqu</b>
flags for quoting and case folding.
<b>${sasl_method</b>}
<b>${sasl_method}</b>
This macro expands to the name of the SASL
authentication mechanism in the AUTH command
when the Postfix SMTP server received the
@ -330,7 +336,7 @@ PIPE(8) PIPE(8)
This feature is available as of Postfix 2.2.
<b>${sasl_sender</b>}
<b>${sasl_sender}</b>
This macro expands to the SASL sender name
(i.e. the original submitter as per <a href="http://tools.ietf.org/html/rfc4954">RFC</a>
<a href="http://tools.ietf.org/html/rfc4954">4954</a>) in the MAIL FROM command when the
@ -338,14 +344,14 @@ PIPE(8) PIPE(8)
This feature is available as of Postfix 2.2.
<b>${sasl_username</b>}
<b>${sasl_username}</b>
This macro expands to the SASL user name in
the AUTH command when the Postfix SMTP
server received the message.
This feature is available as of Postfix 2.2.
<b>${sender</b>}
<b>${sender}</b>
This macro expands to the envelope sender
address. By default, the null sender address
expands to MAILER-DAEMON; this can be
@ -355,19 +361,19 @@ PIPE(8) PIPE(8)
This information is modified by the <b>q</b> flag
for quoting.
<b>${size</b>}
<b>${size}</b>
This macro expands to Postfix's idea of the
message size, which is an approximation of
the size of the message as delivered.
<b>${user</b>}
<b>${user}</b>
This macro expands to the username part of a
recipient address. For example, with an
address <i>user+foo@domain</i> the username part is
<i>user</i>.
A command-line argument that contains
<b>${user</b>} expands into as many command-line
<b>${user}</b> expands into as many command-line
arguments as there are recipients.
This information is modified by the <b>u</b> flag
@ -407,8 +413,8 @@ PIPE(8) PIPE(8)
<a href="postconf.5.html"><b>postconf</b>(5)</a> for more details including examples.
<b>RESOURCE AND RATE CONTROLS</b>
In the text below, <i>transport</i> is the first field in a <b>mas-</b>
<b>ter.cf</b> entry.
In the text below, <i>transport</i> is the first field in a <a href="master.5.html"><b>mas-</b>
<b>ter.cf</b></a> entry.
<b><a href="postconf.5.html#transport_destination_concurrency_limit"><i>transport</i>_destination_concurrency_limit</a> ($<a href="postconf.5.html#default_destination_concurrency_limit">default_destina</a>-</b>
<b><a href="postconf.5.html#default_destination_concurrency_limit">tion_concurrency_limit</a>)</b>

View File

@ -207,27 +207,27 @@ In addition to the form ${\fIname\fR}, the forms $\fIname\fR and
$(\fIname\fR) are also recognized. Specify \fB$$\fR where a single
\fB$\fR is wanted.
.RS
.IP \fB${\fBclient_address\fR}\fR
.IP \fB${client_address}\fR
This macro expands to the remote client network address.
.sp
This feature is available as of Postfix 2.2.
.IP \fB${\fBclient_helo\fR}\fR
.IP \fB${client_helo}\fR
This macro expands to the remote client HELO command parameter.
.sp
This feature is available as of Postfix 2.2.
.IP \fB${\fBclient_hostname\fR}\fR
.IP \fB${client_hostname}\fR
This macro expands to the remote client hostname.
.sp
This feature is available as of Postfix 2.2.
.IP \fB${\fBclient_port\fR}\fR
.IP \fB${client_port}\fR
This macro expands to the remote client TCP port number.
.sp
This feature is available as of Postfix 2.5.
.IP \fB${\fBclient_protocol\fR}\fR
.IP \fB${client_protocol}\fR
This macro expands to the remote client protocol.
.sp
This feature is available as of Postfix 2.2.
.IP \fB${\fBdomain\fR}\fR
.IP \fB${domain}\fR
This macro expands to the domain portion of the recipient
address. For example, with an address \fIuser+foo@domain\fR
the domain is \fIdomain\fR.
@ -235,81 +235,85 @@ the domain is \fIdomain\fR.
This information is modified by the \fBh\fR flag for case folding.
.sp
This feature is available as of Postfix 2.5.
.IP \fB${\fBextension\fR}\fR
.IP \fB${extension}\fR
This macro expands to the extension part of a recipient address.
For example, with an address \fIuser+foo@domain\fR the extension is
\fIfoo\fR.
.sp
A command-line argument that contains \fB${\fBextension\fR}\fR expands
A command-line argument that contains \fB${extension}\fR expands
into as many command-line arguments as there are recipients.
.sp
This information is modified by the \fBu\fR flag for case folding.
.IP \fB${\fBmailbox\fR}\fR
.IP \fB${mailbox}\fR
This macro expands to the complete local part of a recipient address.
For example, with an address \fIuser+foo@domain\fR the mailbox is
\fIuser+foo\fR.
.sp
A command-line argument that contains \fB${\fBmailbox\fR}\fR
A command-line argument that contains \fB${mailbox}\fR
expands to as many command-line arguments as there are recipients.
.sp
This information is modified by the \fBu\fR flag for case folding.
.IP \fB${\fBnexthop\fR}\fR
.IP \fB${nexthop}\fR
This macro expands to the next-hop hostname.
.sp
This information is modified by the \fBh\fR flag for case folding.
.IP \fB${\fBoriginal_recipient\fR}\fR
.IP \fB${original_recipient}\fR
This macro expands to the complete recipient address before any
address rewriting or aliasing.
.sp
A command-line argument that contains
\fB${\fBoriginal_recipient\fR}\fR expands to as many
\fB${original_recipient}\fR expands to as many
command-line arguments as there are recipients.
.sp
This information is modified by the \fBhqu\fR flags for quoting
and case folding.
.sp
This feature is available as of Postfix 2.5.
.IP \fB${\fBrecipient\fR}\fR
.IP \fB${queue_id}\fR
This macro expands to the queue id.
.sp
This feature is available as of Postfix 2.11.
.IP \fB${recipient}\fR
This macro expands to the complete recipient address.
.sp
A command-line argument that contains \fB${\fBrecipient\fR}\fR
A command-line argument that contains \fB${recipient}\fR
expands to as many command-line arguments as there are recipients.
.sp
This information is modified by the \fBhqu\fR flags for quoting
and case folding.
.IP \fB${\fBsasl_method\fR}\fR
.IP \fB${sasl_method}\fR
This macro expands to the name of the SASL authentication
mechanism in the AUTH command when the Postfix SMTP server
received the message.
.sp
This feature is available as of Postfix 2.2.
.IP \fB${\fBsasl_sender\fR}\fR
.IP \fB${sasl_sender}\fR
This macro expands to the SASL sender name (i.e. the original
submitter as per RFC 4954) in the MAIL FROM command when
the Postfix SMTP server received the message.
.sp
This feature is available as of Postfix 2.2.
.IP \fB${\fBsasl_username\fR}\fR
.IP \fB${sasl_username}\fR
This macro expands to the SASL user name in the AUTH command
when the Postfix SMTP server received the message.
.sp
This feature is available as of Postfix 2.2.
.IP \fB${\fBsender\fR}\fR
.IP \fB${sender}\fR
This macro expands to the envelope sender address. By default,
the null sender address expands to MAILER-DAEMON; this can
be changed with the \fBnull_sender\fR attribute, as described
above.
.sp
This information is modified by the \fBq\fR flag for quoting.
.IP \fB${\fBsize\fR}\fR
.IP \fB${size}\fR
This macro expands to Postfix's idea of the message size, which
is an approximation of the size of the message as delivered.
.IP \fB${\fBuser\fR}\fR
.IP \fB${user}\fR
This macro expands to the username part of a recipient address.
For example, with an address \fIuser+foo@domain\fR the username
part is \fIuser\fR.
.sp
A command-line argument that contains \fB${\fBuser\fR}\fR expands
A command-line argument that contains \fB${user}\fR expands
into as many command-line arguments as there are recipients.
.sp
This information is modified by the \fBu\fR flag for case folding.

View File

@ -830,7 +830,7 @@ while (<>) {
s/[<bB>]*header_checks[<\/bB>]*\(5\)/<a href="header_checks.5.html">$&<\/a>/g;
s/[<bB>]*main\.cf[<\/bB>]*/<a href="postconf.5.html">$&<\/a>/g;
s/[<bB>]*master\.cf[<\/bB>]*/<a href="master.5.html">$&<\/a>/g;
s/[<bB>]*mas[-<\/bB>]*\n* *[<bB>]*ter\.cf[<\/bB>]*/<a href="master.5.html">$&<\/a>/g;
# Hyperlink README document names

View File

@ -20,7 +20,7 @@
* Patches change both the patchlevel and the release date. Snapshots have no
* patchlevel; they change the release date only.
*/
#define MAIL_RELEASE_DATE "20131104"
#define MAIL_RELEASE_DATE "20131105"
#define MAIL_VERSION_NUMBER "2.11"
#ifdef SNAPSHOT

View File

@ -197,27 +197,27 @@
/* $(\fIname\fR) are also recognized. Specify \fB$$\fR where a single
/* \fB$\fR is wanted.
/* .RS
/* .IP \fB${\fBclient_address\fR}\fR
/* .IP \fB${client_address}\fR
/* This macro expands to the remote client network address.
/* .sp
/* This feature is available as of Postfix 2.2.
/* .IP \fB${\fBclient_helo\fR}\fR
/* .IP \fB${client_helo}\fR
/* This macro expands to the remote client HELO command parameter.
/* .sp
/* This feature is available as of Postfix 2.2.
/* .IP \fB${\fBclient_hostname\fR}\fR
/* .IP \fB${client_hostname}\fR
/* This macro expands to the remote client hostname.
/* .sp
/* This feature is available as of Postfix 2.2.
/* .IP \fB${\fBclient_port\fR}\fR
/* .IP \fB${client_port}\fR
/* This macro expands to the remote client TCP port number.
/* .sp
/* This feature is available as of Postfix 2.5.
/* .IP \fB${\fBclient_protocol\fR}\fR
/* .IP \fB${client_protocol}\fR
/* This macro expands to the remote client protocol.
/* .sp
/* This feature is available as of Postfix 2.2.
/* .IP \fB${\fBdomain\fR}\fR
/* .IP \fB${domain}\fR
/* This macro expands to the domain portion of the recipient
/* address. For example, with an address \fIuser+foo@domain\fR
/* the domain is \fIdomain\fR.
@ -225,81 +225,85 @@
/* This information is modified by the \fBh\fR flag for case folding.
/* .sp
/* This feature is available as of Postfix 2.5.
/* .IP \fB${\fBextension\fR}\fR
/* .IP \fB${extension}\fR
/* This macro expands to the extension part of a recipient address.
/* For example, with an address \fIuser+foo@domain\fR the extension is
/* \fIfoo\fR.
/* .sp
/* A command-line argument that contains \fB${\fBextension\fR}\fR expands
/* A command-line argument that contains \fB${extension}\fR expands
/* into as many command-line arguments as there are recipients.
/* .sp
/* This information is modified by the \fBu\fR flag for case folding.
/* .IP \fB${\fBmailbox\fR}\fR
/* .IP \fB${mailbox}\fR
/* This macro expands to the complete local part of a recipient address.
/* For example, with an address \fIuser+foo@domain\fR the mailbox is
/* \fIuser+foo\fR.
/* .sp
/* A command-line argument that contains \fB${\fBmailbox\fR}\fR
/* A command-line argument that contains \fB${mailbox}\fR
/* expands to as many command-line arguments as there are recipients.
/* .sp
/* This information is modified by the \fBu\fR flag for case folding.
/* .IP \fB${\fBnexthop\fR}\fR
/* .IP \fB${nexthop}\fR
/* This macro expands to the next-hop hostname.
/* .sp
/* This information is modified by the \fBh\fR flag for case folding.
/* .IP \fB${\fBoriginal_recipient\fR}\fR
/* .IP \fB${original_recipient}\fR
/* This macro expands to the complete recipient address before any
/* address rewriting or aliasing.
/* .sp
/* A command-line argument that contains
/* \fB${\fBoriginal_recipient\fR}\fR expands to as many
/* \fB${original_recipient}\fR expands to as many
/* command-line arguments as there are recipients.
/* .sp
/* This information is modified by the \fBhqu\fR flags for quoting
/* and case folding.
/* .sp
/* This feature is available as of Postfix 2.5.
/* .IP \fB${\fBrecipient\fR}\fR
/* .IP \fB${queue_id}\fR
/* This macro expands to the queue id.
/* .sp
/* This feature is available as of Postfix 2.11.
/* .IP \fB${recipient}\fR
/* This macro expands to the complete recipient address.
/* .sp
/* A command-line argument that contains \fB${\fBrecipient\fR}\fR
/* A command-line argument that contains \fB${recipient}\fR
/* expands to as many command-line arguments as there are recipients.
/* .sp
/* This information is modified by the \fBhqu\fR flags for quoting
/* and case folding.
/* .IP \fB${\fBsasl_method\fR}\fR
/* .IP \fB${sasl_method}\fR
/* This macro expands to the name of the SASL authentication
/* mechanism in the AUTH command when the Postfix SMTP server
/* received the message.
/* .sp
/* This feature is available as of Postfix 2.2.
/* .IP \fB${\fBsasl_sender\fR}\fR
/* .IP \fB${sasl_sender}\fR
/* This macro expands to the SASL sender name (i.e. the original
/* submitter as per RFC 4954) in the MAIL FROM command when
/* the Postfix SMTP server received the message.
/* .sp
/* This feature is available as of Postfix 2.2.
/* .IP \fB${\fBsasl_username\fR}\fR
/* .IP \fB${sasl_username}\fR
/* This macro expands to the SASL user name in the AUTH command
/* when the Postfix SMTP server received the message.
/* .sp
/* This feature is available as of Postfix 2.2.
/* .IP \fB${\fBsender\fR}\fR
/* .IP \fB${sender}\fR
/* This macro expands to the envelope sender address. By default,
/* the null sender address expands to MAILER-DAEMON; this can
/* be changed with the \fBnull_sender\fR attribute, as described
/* above.
/* .sp
/* This information is modified by the \fBq\fR flag for quoting.
/* .IP \fB${\fBsize\fR}\fR
/* .IP \fB${size}\fR
/* This macro expands to Postfix's idea of the message size, which
/* is an approximation of the size of the message as delivered.
/* .IP \fB${\fBuser\fR}\fR
/* .IP \fB${user}\fR
/* This macro expands to the username part of a recipient address.
/* For example, with an address \fIuser+foo@domain\fR the username
/* part is \fIuser\fR.
/* .sp
/* A command-line argument that contains \fB${\fBuser\fR}\fR expands
/* A command-line argument that contains \fB${user}\fR expands
/* into as many command-line arguments as there are recipients.
/* .sp
/* This information is modified by the \fBu\fR flag for case folding.
@ -501,6 +505,7 @@
#define PIPE_DICT_SASL_METHOD "sasl_method" /* key */
#define PIPE_DICT_SASL_USERNAME "sasl_username" /* key */
#define PIPE_DICT_SASL_SENDER "sasl_sender" /* key */
#define PIPE_DICT_QUEUE_ID "queue_id" /* key */
/*
* Flags used to pass back the type of special parameter found by
@ -600,6 +605,7 @@ static int parse_callback(int type, VSTRING *buf, char *context)
PIPE_DICT_SASL_METHOD, 0,
PIPE_DICT_SASL_USERNAME, 0,
PIPE_DICT_SASL_SENDER, 0,
PIPE_DICT_QUEUE_ID, 0,
0, 0,
};
struct cmd_flags *p;
@ -1220,6 +1226,8 @@ static int deliver_message(DELIVER_REQUEST *request, char *service, char **argv)
request->sasl_username);
dict_update(PIPE_DICT_TABLE, PIPE_DICT_SASL_SENDER,
request->sasl_sender);
dict_update(PIPE_DICT_TABLE, PIPE_DICT_QUEUE_ID,
request->queue_id);
vstring_free(buf);
if ((expanded_argv = expand_argv(service, attr.command,

View File

@ -566,7 +566,7 @@ DICT *dict_lmdb_open(const char *path, int open_flags, int dict_flags)
*
* By default, LMDB 0.9.9 writes uninitialized heap memory to a
* world-readable database file, as chunks of up to 4096 bytes. This is a
* gross memory disclosure vulnerability: memory content that a program
* huge memory disclosure vulnerability: memory content that a program
* does not intend to share ends up in a world-readable file. The content
* of uninitialized heap memory depends on program execution history.
* That history includes code execution in other libraries that are