2
0
mirror of https://github.com/vdukhovni/postfix synced 2025-09-03 07:35:20 +00:00

postfix-3.3-20171221

This commit is contained in:
Wietse Venema
2017-12-21 00:00:00 -05:00
committed by Viktor Dukhovni
parent 17d5f8949c
commit 0caa1bf9cc
7 changed files with 103 additions and 61 deletions

View File

@@ -23198,9 +23198,16 @@ Apologies for any names omitted.
20171218
Workaround: reportedly, FreeBSD 11.1 res_query(3) can return
-1 while h_errno==0. The DNS client now logs a warning and
sets h_errno to TRY_AGAIN. File: dns/dns_lookup.c.
Workaround: reportedly, some res_query(3) implementation
can return -1 with h_errno==0. Instead of terminating with
a panic, the DNS client now logs a warning and sets h_errno
to TRY_AGAIN. File: dns/dns_lookup.c.
Cleanup: allow XCLIENT before STARTTLS, when TLS is required.
File: smtpd/smtpd.c.
20171219
Feature: preliminary support to run Postfix in the foreground.
This requires that multi-instance support is disabled.
Files: conf/postfix-script, postfix/postfix.c.

View File

@@ -117,7 +117,7 @@ stop_msg)
echo "Stop postfix"
;;
start)
start|start-fg)
$daemon_directory/master -t 2>/dev/null || {
$FATAL the Postfix mail system is already running
@@ -135,12 +135,29 @@ start)
$daemon_directory/postfix-script check-warn
fi
$INFO starting the Postfix mail system
case $1 in
start)
# NOTE: wait in foreground process to get the initialization status.
$daemon_directory/master -w || {
$FATAL "mail system startup failed"
exit 1
}
;;
start-fg)
# Foreground start-up is incompatible with multi-instance mode.
# We can't use "exec $daemon_directory/master" here: that would
# break process group management, and "postfix stop" would kill
# too many processes.
case $instances in
"") $daemon_directory/master
;;
*) $FATAL "start-fg does not support multi_instance_directories"
exit 1
;;
esac
;;
esac
;;
drain)

View File

@@ -36,6 +36,11 @@ POSTFIX(1) POSTFIX(1)
<b>start</b> Start the Postfix mail system. This also runs the configuration
check described above.
<b>start-fg</b>
Like <b>start</b>, but keep the master daemon running in the fore-
ground. This requires that multi-instance support is disabled
(i.e. the <a href="postconf.5.html#multi_instance_directories">multi_instance_directories</a> parameter value is empty).
<b>stop</b> Stop the Postfix mail system in an orderly fashion. If possible,
running processes are allowed to terminate at their earliest
convenience.
@@ -206,8 +211,9 @@ POSTFIX(1) POSTFIX(1)
Other configuration parameters:
<b><a href="postconf.5.html#import_environment">import_environment</a> (see 'postconf -d' output)</b>
The list of environment parameters that a Postfix process will
import from a non-Postfix parent process.
The list of environment parameters that a privileged Postfix
process will import from a non-Postfix parent process, or
name=value environment overrides.
<b><a href="postconf.5.html#syslog_facility">syslog_facility</a> (mail)</b>
The syslog facility of Postfix logging.

View File

@@ -37,6 +37,11 @@ and create missing directories.
.IP \fBstart\fR
Start the Postfix mail system. This also runs the configuration
check described above.
.IP \fBstart\-fg\fR
Like \fBstart\fR, but keep the master daemon running in the
foreground. This requires that multi\-instance support is
disabled (i.e. the multi_instance_directories parameter
value is empty).
.IP \fBstop\fR
Stop the Postfix mail system in an orderly fashion. If
possible, running processes are allowed to terminate at
@@ -187,8 +192,9 @@ The location of the OpenSSL command line program \fBopenssl\fR(1).
.PP
Other configuration parameters:
.IP "\fBimport_environment (see 'postconf -d' output)\fR"
The list of environment parameters that a Postfix process will
import from a non\-Postfix parent process.
The list of environment parameters that a privileged Postfix
process will import from a non\-Postfix parent process, or name=value
environment overrides.
.IP "\fBsyslog_facility (mail)\fR"
The syslog facility of Postfix logging.
.IP "\fBsyslog_name (see 'postconf -d' output)\fR"

View File

@@ -397,14 +397,14 @@ static int dns_res_search(const char *name, int class, int type,
/* Prepare for returning a null-padded server reply. */
memset(answer, 0, anslen);
len = res_query(name, class, type, answer, anslen);
/* Begin FreeBSD 11.1 workaround. */
/* Begin API creep workaround. */
if (len < 0 && h_errno == 0) {
SET_H_ERRNO(TRY_AGAIN);
msg_warn("res_query(\"%s\", %d, %d, %p, %d) returns %d with h_errno==0"
" -- setting h_errno=TRY_AGAIN",
name, class, type, answer, anslen, len);
}
/* End FreeBSD 11.1 workaround. */
/* End API creep workaround. */
if (len > 0) {
SET_H_ERRNO(0);
} else if (keep_notfound && NOT_FOUND_H_ERRNO(h_errno)) {

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 "20171218"
#define MAIL_RELEASE_DATE "20171221"
#define MAIL_VERSION_NUMBER "3.3"
#ifdef SNAPSHOT

View File

@@ -31,6 +31,11 @@
/* .IP \fBstart\fR
/* Start the Postfix mail system. This also runs the configuration
/* check described above.
/* .IP \fBstart-fg\fR
/* Like \fBstart\fR, but keep the master daemon running in the
/* foreground. This requires that multi-instance support is
/* disabled (i.e. the multi_instance_directories parameter
/* value is empty).
/* .IP \fBstop\fR
/* Stop the Postfix mail system in an orderly fashion. If
/* possible, running processes are allowed to terminate at
@@ -177,8 +182,9 @@
/* .PP
/* Other configuration parameters:
/* .IP "\fBimport_environment (see 'postconf -d' output)\fR"
/* The list of environment parameters that a Postfix process will
/* import from a non-Postfix parent process.
/* The list of environment parameters that a privileged Postfix
/* process will import from a non-Postfix parent process, or name=value
/* environment overrides.
/* .IP "\fBsyslog_facility (mail)\fR"
/* The syslog facility of Postfix logging.
/* .IP "\fBsyslog_name (see 'postconf -d' output)\fR"