2
0
mirror of https://github.com/vdukhovni/postfix synced 2025-08-31 14:17:41 +00:00

postfix-2.6-20080903

This commit is contained in:
Wietse Venema
2008-09-03 00:00:00 -05:00
committed by Viktor Dukhovni
parent 07a26488b9
commit 295accce09
8 changed files with 140 additions and 128 deletions

View File

@@ -14634,3 +14634,11 @@ Apologies for any names omitted.
implement a denial of service attack on Postfix. Data implement a denial of service attack on Postfix. Data
confidentiality and integrity are not affected. File: confidentiality and integrity are not affected. File:
util/events.c. util/events.c.
20080903
Don't enable kqueue (which requires poll) support on
MacOS X. File: makedefs.
Cleanup: remove obsolete Rhapsody and MacOS targets from
makedefs.

View File

@@ -6108,7 +6108,8 @@ you really want to match subdomains.
<p> <p>
Restrict the use of the <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> SMTP access feature to Restrict the use of the <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> SMTP access feature to
only domains whose primary MX hosts match the listed networks. only domains whose primary MX hosts match the listed networks.
</p> The parameter value syntax is the same as with the <a href="postconf.5.html#mynetworks">mynetworks</a>
parameter; note, however, that the default value is empty. </p>
</DD> </DD>

View File

@@ -114,28 +114,20 @@ SMTP-SINK(1) SMTP-SINK(1)
descriptors. Excess connections will stay queued in descriptors. Excess connections will stay queued in
the TCP/IP stack. the TCP/IP stack.
<b>-n</b> <i>count</i> <b>-M</b> <i>count</i>
Terminate after <i>count</i> sessions. This is for testing Terminate after receiving <i>count</i> messages.
purposes.
<b>-p</b> Do not announce support for ESMTP command pipelin- <b>-n</b> <i>count</i>
Terminate after <i>count</i> sessions.
<b>-p</b> Do not announce support for ESMTP command pipelin-
ing. ing.
<b>-P</b> Change the server greeting so that it appears to <b>-P</b> Change the server greeting so that it appears to
come through a CISCO PIX system. Implies <b>-e</b>. come through a CISCO PIX system. Implies <b>-e</b>.
<b>-q</b> <i>command,command,...</i> <b>-q</b> <i>command,command,...</i>
Disconnect (without replying) after receiving one Disconnect (without replying) after receiving one
of the specified commands.
Examples of commands are CONNECT, HELO, EHLO, LHLO,
MAIL, RCPT, VRFY, DATA, ., RSET, NOOP, and QUIT.
Separate command names by white space or commas,
and use quotes to protect white space from the
shell. Command names are case-insensitive.
<b>-Q</b> <i>command,command,...</i>
Send a 421 reply and disconnect after receiving one
of the specified commands. of the specified commands.
Examples of commands are CONNECT, HELO, EHLO, LHLO, Examples of commands are CONNECT, HELO, EHLO, LHLO,
@@ -144,9 +136,9 @@ SMTP-SINK(1) SMTP-SINK(1)
and use quotes to protect white space from the and use quotes to protect white space from the
shell. Command names are case-insensitive. shell. Command names are case-insensitive.
<b>-r</b> <i>command,command,...</i> <b>-Q</b> <i>command,command,...</i>
Reject the specified commands with a soft (4xx) Send a 421 reply and disconnect after receiving one
error code. This option implies <b>-p</b>. of the specified commands.
Examples of commands are CONNECT, HELO, EHLO, LHLO, Examples of commands are CONNECT, HELO, EHLO, LHLO,
MAIL, RCPT, VRFY, DATA, ., RSET, NOOP, and QUIT. MAIL, RCPT, VRFY, DATA, ., RSET, NOOP, and QUIT.
@@ -154,39 +146,49 @@ SMTP-SINK(1) SMTP-SINK(1)
and use quotes to protect white space from the and use quotes to protect white space from the
shell. Command names are case-insensitive. shell. Command names are case-insensitive.
<b>-r</b> <i>command,command,...</i>
Reject the specified commands with a soft (4xx)
error code. This option implies <b>-p</b>.
Examples of commands are CONNECT, HELO, EHLO, LHLO,
MAIL, RCPT, VRFY, DATA, ., RSET, NOOP, and QUIT.
Separate command names by white space or commas,
and use quotes to protect white space from the
shell. Command names are case-insensitive.
<b>-R</b> <i>root-directory</i> <b>-R</b> <i>root-directory</i>
Change the process root directory to the specified Change the process root directory to the specified
location. This option requires super-user privi- location. This option requires super-user privi-
leges. See also the <b>-u</b> option. leges. See also the <b>-u</b> option.
<b>-s</b> <i>command,command,...</i> <b>-s</b> <i>command,command,...</i>
Log the named commands to syslogd. Log the named commands to syslogd.
Examples of commands are CONNECT, HELO, EHLO, LHLO, Examples of commands are CONNECT, HELO, EHLO, LHLO,
MAIL, RCPT, VRFY, DATA, ., RSET, NOOP, and QUIT. MAIL, RCPT, VRFY, DATA, ., RSET, NOOP, and QUIT.
Separate command names by white space or commas, Separate command names by white space or commas,
and use quotes to protect white space from the and use quotes to protect white space from the
shell. Command names are case-insensitive. shell. Command names are case-insensitive.
<b>-S start-string</b> <b>-S start-string</b>
An optional string that is prepended to each mes- An optional string that is prepended to each mes-
sage that is written to a dump file (see the dump sage that is written to a dump file (see the dump
file format description below). The following C file format description below). The following C
escape sequences are supported: \a (bell), \b escape sequences are supported: \a (bell), \b
(backslace), \f (formfeed), \n (newline), \r (car- (backslace), \f (formfeed), \n (newline), \r (car-
riage return), \t (horizontal tab), \v (vertical riage return), \t (horizontal tab), \v (vertical
tab), \<i>ddd</i> (up to three octal digits) and \\ (the tab), \<i>ddd</i> (up to three octal digits) and \\ (the
backslash character). backslash character).
<b>-t</b> <i>timeout</i> (default: 100) <b>-t</b> <i>timeout</i> (default: 100)
Limit the time for receiving a command or sending a Limit the time for receiving a command or sending a
response. The time limit is specified in seconds. response. The time limit is specified in seconds.
<b>-u</b> <i>username</i> <b>-u</b> <i>username</i>
Switch to the specified user privileges after open- Switch to the specified user privileges after open-
ing the network socket and optionally changing the ing the network socket and optionally changing the
process root directory. This option is required process root directory. This option is required
when the process runs with super-user privileges. when the process runs with super-user privileges.
See also the <b>-R</b> option. See also the <b>-R</b> option.
<b>-v</b> Show the SMTP conversations. <b>-v</b> Show the SMTP conversations.
@@ -196,16 +198,16 @@ SMTP-SINK(1) SMTP-SINK(1)
mand. mand.
<b>-W</b> <i>command:delay[:odds]</i> <b>-W</b> <i>command:delay[:odds]</i>
Wait <i>delay</i> seconds before responding to <i>command</i>. Wait <i>delay</i> seconds before responding to <i>command</i>.
If <i>odds</i> is also specified (a number between 1-99 If <i>odds</i> is also specified (a number between 1-99
inclusive), wait for a random multiple of <i>delay</i>. inclusive), wait for a random multiple of <i>delay</i>.
The random multiplier is equal to the number of The random multiplier is equal to the number of
times the program needs to roll a dice with a range times the program needs to roll a dice with a range
of 0..99 inclusive, before the dice produces a of 0..99 inclusive, before the dice produces a
result greater than or equal to <i>odds</i>. result greater than or equal to <i>odds</i>.
[<b>inet:</b>][<i>host</i>]:<i>port</i> [<b>inet:</b>][<i>host</i>]:<i>port</i>
Listen on network interface <i>host</i> (default: any Listen on network interface <i>host</i> (default: any
interface) TCP port <i>port</i>. Both <i>host</i> and <i>port</i> may be interface) TCP port <i>port</i>. Both <i>host</i> and <i>port</i> may be
specified in numeric or symbolic form. specified in numeric or symbolic form.
@@ -213,68 +215,68 @@ SMTP-SINK(1) SMTP-SINK(1)
Listen on the UNIX-domain socket at <i>pathname</i>. Listen on the UNIX-domain socket at <i>pathname</i>.
<i>backlog</i> <i>backlog</i>
The maximum length the queue of pending connec- The maximum length the queue of pending connec-
tions, as defined by the <b>listen</b>(2) system call. tions, as defined by the <b>listen</b>(2) system call.
<b>DUMP FILE FORMAT</b> <b>DUMP FILE FORMAT</b>
Each dumped message contains a sequence of text lines, Each dumped message contains a sequence of text lines,
terminated with the newline character. The sequence of terminated with the newline character. The sequence of
information is as follows: information is as follows:
<b>o</b> The optional string specified with the <b>-S</b> option. <b>o</b> The optional string specified with the <b>-S</b> option.
<b>o</b> The <b>smtp-sink</b> generated headers as documented <b>o</b> The <b>smtp-sink</b> generated headers as documented
below. below.
<b>o</b> The message header and body as received from the <b>o</b> The message header and body as received from the
SMTP client. SMTP client.
<b>o</b> An empty line. <b>o</b> An empty line.
The format of the <b>smtp-sink</b> generated headers is as fol- The format of the <b>smtp-sink</b> generated headers is as fol-
lows: lows:
<b>X-Client-Addr:</b> <i>text</i> <b>X-Client-Addr:</b> <i>text</i>
The client IP address without enclosing []. An IPv6 The client IP address without enclosing []. An IPv6
address is prefixed with "ipv6:". This record is address is prefixed with "ipv6:". This record is
always present. always present.
<b>X-Client-Proto:</b> <i>text</i> <b>X-Client-Proto:</b> <i>text</i>
The client protocol: SMTP, ESMTP or LMTP. This The client protocol: SMTP, ESMTP or LMTP. This
record is always present. record is always present.
<b>X-Helo-Args:</b> <i>text</i> <b>X-Helo-Args:</b> <i>text</i>
The arguments of the last HELO or EHLO command The arguments of the last HELO or EHLO command
before this mail delivery transaction. This record before this mail delivery transaction. This record
is present only if the client sent a recognizable is present only if the client sent a recognizable
HELO or EHLO command before the DATA command. HELO or EHLO command before the DATA command.
<b>X-Mail-Args:</b> <i>text</i> <b>X-Mail-Args:</b> <i>text</i>
The arguments of the MAIL command that started this The arguments of the MAIL command that started this
mail delivery transaction. This record is present mail delivery transaction. This record is present
exactly once. exactly once.
<b>X-Rcpt-Args:</b> <i>text</i> <b>X-Rcpt-Args:</b> <i>text</i>
The arguments of an RCPT command within this mail The arguments of an RCPT command within this mail
delivery transaction. There is one record for each delivery transaction. There is one record for each
RCPT command, and they are in the order as sent by RCPT command, and they are in the order as sent by
the client. the client.
<b>Received:</b> <i>text</i> <b>Received:</b> <i>text</i>
A message header for compatibility with mail pro- A message header for compatibility with mail pro-
cessing software. This three-line header marks the cessing software. This three-line header marks the
end of the headers provided by <b>smtp-sink</b>, and is end of the headers provided by <b>smtp-sink</b>, and is
formatted as follows: formatted as follows:
<b>from</b> <i>helo</i> <b>([</b><i>addr</i><b>])</b> <b>from</b> <i>helo</i> <b>([</b><i>addr</i><b>])</b>
The HELO or EHLO command argument and client The HELO or EHLO command argument and client
IP address. If the client did not send HELO IP address. If the client did not send HELO
or EHLO, the client IP address is used or EHLO, the client IP address is used
instead. instead.
<b>by</b> <i>host</i> <b>(smtp-sink) with</b> <i>proto</i> <b>id</b> <i>random</i><b>;</b> <b>by</b> <i>host</i> <b>(smtp-sink) with</b> <i>proto</i> <b>id</b> <i>random</i><b>;</b>
The hostname specified with the <b>-h</b> option, The hostname specified with the <b>-h</b> option,
the client protocol (see <b>X-Client-Proto</b> the client protocol (see <b>X-Client-Proto</b>
above), and the pseudo-random portion of the above), and the pseudo-random portion of the
per-message capture file name. per-message capture file name.
@@ -285,7 +287,7 @@ SMTP-SINK(1) SMTP-SINK(1)
<a href="smtp-source.1.html">smtp-source(1)</a>, SMTP/LMTP message generator <a href="smtp-source.1.html">smtp-source(1)</a>, SMTP/LMTP message generator
<b>LICENSE</b> <b>LICENSE</b>
The Secure Mailer license must be distributed with this The Secure Mailer license must be distributed with this
software. software.
<b>AUTHOR(S)</b> <b>AUTHOR(S)</b>

View File

@@ -408,68 +408,64 @@ ReliantUNIX-?.5.43) SYSTYPE=ReliantUnix543
[1-6].*) CCARGS="$CCARGS -DNO_IPV6";; [1-6].*) CCARGS="$CCARGS -DNO_IPV6";;
*) CCARGS="$CCARGS -DBIND_8_COMPAT -DNO_NETINFO";; *) CCARGS="$CCARGS -DBIND_8_COMPAT -DNO_NETINFO";;
esac esac
# Darwin 8.11.1 has kqueue support, but let's play safe # kqueue and/or poll are broken up to and including MacOS X 10.5
case $RELEASE in CCARGS="$CCARGS -DNO_KQUEUE"
[1-8].*) CCARGS="$CCARGS -DNO_KQUEUE";; # # Darwin 8.11.1 has kqueue support, but let's play safe
*) trap 'rm -f makedefs.test makedefs.test.[co]' 1 2 3 15 # case $RELEASE in
cat >makedefs.test.c <<'EOF' # [1-8].*) CCARGS="$CCARGS -DNO_KQUEUE";;
/* Adapted from libevent. */ # *) trap 'rm -f makedefs.test makedefs.test.[co]' 1 2 3 15
# cat >makedefs.test.c <<'EOF'
#include <sys/types.h> #/* Adapted from libevent. */
#include <sys/event.h> #
#include <sys/time.h> ##include <sys/types.h>
#include <string.h> ##include <sys/event.h>
#include <stdlib.h> ##include <sys/time.h>
#include <stdio.h> ##include <string.h>
##include <stdlib.h>
#ifndef EV_SET ##include <stdio.h>
#define EV_SET(kp, id, fi, fl, ffl, da, ud) do { \ #
struct kevent *__kp = (kp); \ ##ifndef EV_SET
__kp->ident = (id); \ ##define EV_SET(kp, id, fi, fl, ffl, da, ud) do { \
__kp->filter = (fi); \ # struct kevent *__kp = (kp); \
__kp->flags = (fl); \ # __kp->ident = (id); \
__kp->fflags = (ffl); \ # __kp->filter = (fi); \
__kp->data = (da); \ # __kp->flags = (fl); \
__kp->udata = (ud); \ # __kp->fflags = (ffl); \
} while(0) # __kp->data = (da); \
#endif # __kp->udata = (ud); \
# } while(0)
int main(int argc, char **argv) ##endif
{ #
int kq; #int main(int argc, char **argv)
struct kevent test_change; #{
struct kevent test_result; # int kq;
# struct kevent test_change;
if ((kq = kqueue()) < 0) { # struct kevent test_result;
perror("kqueue"); #
exit(1); # if ((kq = kqueue()) < 0) {
} # perror("kqueue");
#define TEST_FD (-1) # exit(1);
# }
EV_SET(&test_change, TEST_FD, EVFILT_READ, EV_ADD, 0, 0, 0); ##define TEST_FD (-1)
if (kevent(kq, #
&test_change, sizeof(test_change) / sizeof(struct kevent), # EV_SET(&test_change, TEST_FD, EVFILT_READ, EV_ADD, 0, 0, 0);
&test_result, sizeof(test_result) / sizeof(struct kevent), # if (kevent(kq,
(struct timespec *) 0) != 1 || # &test_change, sizeof(test_change) / sizeof(struct kevent),
test_result.ident != TEST_FD || # &test_result, sizeof(test_result) / sizeof(struct kevent),
test_result.flags != EV_ERROR) { # (struct timespec *) 0) != 1 ||
fprintf(stderr, "Error: kevent reports errors incorrectly\n"); # test_result.ident != TEST_FD ||
exit(1); # test_result.flags != EV_ERROR) {
} # fprintf(stderr, "Error: kevent reports errors incorrectly\n");
exit(0); # exit(1);
} # }
EOF # exit(0);
$CC -o makedefs.test makedefs.test.c || exit 1 #}
./makedefs.test 2>/dev/null || #EOF
CCARGS="$CCARGS -DNO_KQUEUE" # $CC -o makedefs.test makedefs.test.c || exit 1
rm -f makedefs.test makedefs.test.[co];; # ./makedefs.test 2>/dev/null ||
esac # CCARGS="$CCARGS -DNO_KQUEUE"
;; # rm -f makedefs.test makedefs.test.[co];;
Rhapsody.5*|"Mac OS".10*) # esac
SYSTYPE=MACOSX
# Use the native compiler by default
: ${CC=cc}
AWK=gawk
;; ;;
dcosx.1*) SYSTYPE=DCOSX1 dcosx.1*) SYSTYPE=DCOSX1
RANLIB=echo RANLIB=echo

View File

@@ -102,8 +102,10 @@ An upper bound on the maximal number of simultaneous
connections that \fBsmtp-sink\fR will handle. This prevents connections that \fBsmtp-sink\fR will handle. This prevents
the process from running out of file descriptors. Excess the process from running out of file descriptors. Excess
connections will stay queued in the TCP/IP stack. connections will stay queued in the TCP/IP stack.
.IP "\fB-M \fIcount\fR"
Terminate after receiving \fIcount\fR messages.
.IP "\fB-n \fIcount\fR" .IP "\fB-n \fIcount\fR"
Terminate after \fIcount\fR sessions. This is for testing purposes. Terminate after \fIcount\fR sessions.
.IP \fB-p\fR .IP \fB-p\fR
Do not announce support for ESMTP command pipelining. Do not announce support for ESMTP command pipelining.
.IP \fB-P\fR .IP \fB-P\fR

View File

@@ -3409,6 +3409,8 @@ you really want to match subdomains.
.SH permit_mx_backup_networks (default: empty) .SH permit_mx_backup_networks (default: empty)
Restrict the use of the permit_mx_backup SMTP access feature to Restrict the use of the permit_mx_backup SMTP access feature to
only domains whose primary MX hosts match the listed networks. only domains whose primary MX hosts match the listed networks.
The parameter value syntax is the same as with the mynetworks
parameter; note, however, that the default value is empty.
.SH pickup_service_name (default: pickup) .SH pickup_service_name (default: pickup)
The name of the \fBpickup\fR(8) service. This service picks up local mail The name of the \fBpickup\fR(8) service. This service picks up local mail
submissions from the Postfix maildrop queue. submissions from the Postfix maildrop queue.

View File

@@ -7281,7 +7281,8 @@ mailing lists.
<p> <p>
Restrict the use of the permit_mx_backup SMTP access feature to Restrict the use of the permit_mx_backup SMTP access feature to
only domains whose primary MX hosts match the listed networks. only domains whose primary MX hosts match the listed networks.
</p> The parameter value syntax is the same as with the mynetworks
parameter; note, however, that the default value is empty. </p>
%PARAM pickup_service_name pickup %PARAM pickup_service_name pickup

View File

@@ -20,7 +20,7 @@
* 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 "20080902" #define MAIL_RELEASE_DATE "20080903"
#define MAIL_VERSION_NUMBER "2.6" #define MAIL_VERSION_NUMBER "2.6"
#ifdef SNAPSHOT #ifdef SNAPSHOT