mirror of
https://github.com/vdukhovni/postfix
synced 2025-08-22 09:57:34 +00:00
postfix-3.9-20240213
This commit is contained in:
parent
403f8ce4a1
commit
2f77adce4e
@ -27841,8 +27841,36 @@ Apologies for any names omitted.
|
|||||||
global/mail_params.h.
|
global/mail_params.h.
|
||||||
|
|
||||||
Performance: eliminate worst-case behavior where the queue
|
Performance: eliminate worst-case behavior where the queue
|
||||||
manager defers delivery to all destinations over a specific
|
manager deferred delivery to all destinations over a specific
|
||||||
delivery transport, after only a single delivery agent
|
delivery transport, after only a single delivery agent
|
||||||
failure. The scheduler now throttles one destination, and
|
failure. The scheduler now throttles one destination, and
|
||||||
allows deliveries to other destinations to keep making
|
allows deliveries to other destinations to keep making
|
||||||
progress. Files: *qmgr/qmgr_deliver.c.
|
progress. Files: *qmgr/qmgr_deliver.c.
|
||||||
|
|
||||||
|
20240210
|
||||||
|
|
||||||
|
Documentation: introductory text for SMTP and LMTP lookup
|
||||||
|
strategies. File: smtp/smtp.c.
|
||||||
|
|
||||||
|
20240211
|
||||||
|
|
||||||
|
Documentation: updated the text for the new "notes=" attribute
|
||||||
|
in SMTP server "disconnect" logging. File: proto/postconf.proto.
|
||||||
|
|
||||||
|
20240212
|
||||||
|
|
||||||
|
Documentation: emphasize that email address patterns and
|
||||||
|
host name/address patterns for indexed etc. files are really
|
||||||
|
for indexed etc. files. File: proto/access.
|
||||||
|
|
||||||
|
Documentation: mail_date(3) manpage. File: global/mail_date.c.
|
||||||
|
|
||||||
|
20240213
|
||||||
|
|
||||||
|
Tests: updated tests that had suffered from bit rot. Files:
|
||||||
|
bounce/with-msgid-with-filter-no-thread.ref,
|
||||||
|
bounce/with-msgid-with-filter-with-thread.ref,
|
||||||
|
src/dns/mxonly_test.ref, dns/no-mx.ref.
|
||||||
|
|
||||||
|
Logging: indicate which (usually, substring) lookups are
|
||||||
|
skipped. File: global/maps.c.
|
||||||
|
@ -59,7 +59,7 @@
|
|||||||
# line that starts with whitespace continues a logi-
|
# line that starts with whitespace continues a logi-
|
||||||
# cal line.
|
# cal line.
|
||||||
#
|
#
|
||||||
# EMAIL ADDRESS PATTERNS
|
# EMAIL ADDRESS PATTERNS IN INDEXED TABLES
|
||||||
# With lookups from indexed files such as DB or DBM, or from
|
# With lookups from indexed files such as DB or DBM, or from
|
||||||
# networked tables such as NIS, LDAP or SQL, patterns are
|
# networked tables such as NIS, LDAP or SQL, patterns are
|
||||||
# tried in the order as listed below:
|
# tried in the order as listed below:
|
||||||
@ -97,7 +97,7 @@
|
|||||||
# becomes: user+foo@domain, user@domain, domain, user+foo@,
|
# becomes: user+foo@domain, user@domain, domain, user+foo@,
|
||||||
# and user@.
|
# and user@.
|
||||||
#
|
#
|
||||||
# HOST NAME/ADDRESS PATTERNS
|
# HOST NAME/ADDRESS PATTERNS IN INDEXED TABLES
|
||||||
# With lookups from indexed files such as DB or DBM, or from
|
# With lookups from indexed files such as DB or DBM, or from
|
||||||
# networked tables such as NIS, LDAP or SQL, the following
|
# networked tables such as NIS, LDAP or SQL, the following
|
||||||
# lookup patterns are examined in the order as listed:
|
# lookup patterns are examined in the order as listed:
|
||||||
|
@ -60,7 +60,7 @@ ACCESS(5) ACCESS(5)
|
|||||||
A logical line starts with non-whitespace text. A line that
|
A logical line starts with non-whitespace text. A line that
|
||||||
starts with whitespace continues a logical line.
|
starts with whitespace continues a logical line.
|
||||||
|
|
||||||
<b>EMAIL ADDRESS PATTERNS</b>
|
<b>EMAIL ADDRESS PATTERNS IN INDEXED TABLES</b>
|
||||||
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
|
||||||
tables such as NIS, LDAP or SQL, patterns are tried in the order as
|
tables such as NIS, LDAP or SQL, patterns are tried in the order as
|
||||||
listed below:
|
listed below:
|
||||||
@ -92,7 +92,7 @@ ACCESS(5) ACCESS(5)
|
|||||||
(e.g., <i>user+foo</i>@<i>domain</i>), the lookup order becomes: <i>user+foo</i>@<i>domain</i>,
|
(e.g., <i>user+foo</i>@<i>domain</i>), the lookup order becomes: <i>user+foo</i>@<i>domain</i>,
|
||||||
<i>user</i>@<i>domain</i>, <i>domain</i>, <i>user+foo</i>@, and <i>user</i>@.
|
<i>user</i>@<i>domain</i>, <i>domain</i>, <i>user+foo</i>@, and <i>user</i>@.
|
||||||
|
|
||||||
<b>HOST NAME/ADDRESS PATTERNS</b>
|
<b>HOST NAME/ADDRESS PATTERNS IN INDEXED TABLES</b>
|
||||||
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
|
||||||
tables such as NIS, LDAP or SQL, the following lookup patterns are
|
tables such as NIS, LDAP or SQL, the following lookup patterns are
|
||||||
examined in the order as listed:
|
examined in the order as listed:
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -15986,7 +15986,7 @@ can be excluded with <a href="postconf.5.html#smtpd_forbid_bare_newline_exclusio
|
|||||||
<dt> <b>note</b> </dt> <dd> Same as "normalize", but also notes in
|
<dt> <b>note</b> </dt> <dd> Same as "normalize", but also notes in
|
||||||
the log whether the Postfix SMTP server received any lines with
|
the log whether the Postfix SMTP server received any lines with
|
||||||
"bare <LF>". The information is formatted as "<tt>disconnect
|
"bare <LF>". The information is formatted as "<tt>disconnect
|
||||||
from name[address] ... notes=bare_lf</tt>". The new value is
|
from name[address] ... notes=bare_lf</tt>". The notes value is
|
||||||
expected to become a list of comma-separated names. <br> <br> This
|
expected to become a list of comma-separated names. <br> <br> This
|
||||||
feature is available in Postfix 3.9 and later. </dd>
|
feature is available in Postfix 3.9 and later. </dd>
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -62,7 +62,7 @@ are lines whose first non\-whitespace character is a `#'.
|
|||||||
.IP "multi\-line text"
|
.IP "multi\-line text"
|
||||||
A logical line starts with non\-whitespace text. A line that
|
A logical line starts with non\-whitespace text. A line that
|
||||||
starts with whitespace continues a logical line.
|
starts with whitespace continues a logical line.
|
||||||
.SH "EMAIL ADDRESS PATTERNS"
|
.SH "EMAIL ADDRESS PATTERNS IN INDEXED TABLES"
|
||||||
.na
|
.na
|
||||||
.nf
|
.nf
|
||||||
.ad
|
.ad
|
||||||
@ -99,7 +99,7 @@ When a mail address localpart contains the optional recipient delimiter
|
|||||||
(e.g., \fIuser+foo\fR@\fIdomain\fR), the lookup order becomes:
|
(e.g., \fIuser+foo\fR@\fIdomain\fR), the lookup order becomes:
|
||||||
\fIuser+foo\fR@\fIdomain\fR, \fIuser\fR@\fIdomain\fR, \fIdomain\fR,
|
\fIuser+foo\fR@\fIdomain\fR, \fIuser\fR@\fIdomain\fR, \fIdomain\fR,
|
||||||
\fIuser+foo\fR@, and \fIuser\fR@.
|
\fIuser+foo\fR@, and \fIuser\fR@.
|
||||||
.SH "HOST NAME/ADDRESS PATTERNS"
|
.SH "HOST NAME/ADDRESS PATTERNS IN INDEXED TABLES"
|
||||||
.na
|
.na
|
||||||
.nf
|
.nf
|
||||||
.ad
|
.ad
|
||||||
|
@ -11062,7 +11062,7 @@ can be excluded with smtpd_forbid_bare_newline_exclusions.
|
|||||||
Same as "normalize", but also notes in
|
Same as "normalize", but also notes in
|
||||||
the log whether the Postfix SMTP server received any lines with
|
the log whether the Postfix SMTP server received any lines with
|
||||||
"bare <LF>". The information is formatted as "disconnect
|
"bare <LF>". The information is formatted as "disconnect
|
||||||
from name[address] ... notes=bare_lf". The new value is
|
from name[address] ... notes=bare_lf". The notes value is
|
||||||
expected to become a list of comma\-separated names.
|
expected to become a list of comma\-separated names.
|
||||||
.br
|
.br
|
||||||
.br
|
.br
|
||||||
|
@ -29,9 +29,9 @@ be tried again at a later time. Delivery status reports are sent
|
|||||||
to the \fBbounce\fR(8), \fBdefer\fR(8) or \fBtrace\fR(8) daemon as
|
to the \fBbounce\fR(8), \fBdefer\fR(8) or \fBtrace\fR(8) daemon as
|
||||||
appropriate.
|
appropriate.
|
||||||
|
|
||||||
The server lookup strategy is different for SMTP and LMTP.
|
The server lookup strategy is different for SMTP and LMTP,
|
||||||
The details are given below under in the sections "SMTP
|
as described in the sections "SMTP SERVER LOOKUP" and "LMTP
|
||||||
DESTINATION SYNTAX" and "LMTP DESTINATION SYNTAX".
|
SERVER LOOKUP".
|
||||||
|
|
||||||
After a successful mail transaction, a connection may be saved
|
After a successful mail transaction, a connection may be saved
|
||||||
to the \fBscache\fR(8) connection cache server, so that it
|
to the \fBscache\fR(8) connection cache server, so that it
|
||||||
@ -41,7 +41,7 @@ By default, connection caching is enabled temporarily for
|
|||||||
destinations that have a high volume of mail in the active
|
destinations that have a high volume of mail in the active
|
||||||
queue. Connection caching can be enabled permanently for
|
queue. Connection caching can be enabled permanently for
|
||||||
specific destinations.
|
specific destinations.
|
||||||
.SH "SMTP DESTINATION SYNTAX"
|
.SH "SMTP SERVER LOOKUP"
|
||||||
.na
|
.na
|
||||||
.nf
|
.nf
|
||||||
.ad
|
.ad
|
||||||
@ -67,7 +67,7 @@ the specified service (default: \fBsmtp\fR).
|
|||||||
Connect to the host at the specified address, and connect
|
Connect to the host at the specified address, and connect
|
||||||
to the specified service (default: \fBsmtp\fR). An IPv6 address
|
to the specified service (default: \fBsmtp\fR). An IPv6 address
|
||||||
must be formatted as [\fBipv6\fR:\fIaddress\fR].
|
must be formatted as [\fBipv6\fR:\fIaddress\fR].
|
||||||
.SH "LMTP DESTINATION SYNTAX"
|
.SH "LMTP SERVER LOOKUP"
|
||||||
.na
|
.na
|
||||||
.nf
|
.nf
|
||||||
.ad
|
.ad
|
||||||
|
@ -52,7 +52,7 @@
|
|||||||
# .IP "multi-line text"
|
# .IP "multi-line text"
|
||||||
# A logical line starts with non-whitespace text. A line that
|
# A logical line starts with non-whitespace text. A line that
|
||||||
# starts with whitespace continues a logical line.
|
# starts with whitespace continues a logical line.
|
||||||
# EMAIL ADDRESS PATTERNS
|
# EMAIL ADDRESS PATTERNS IN INDEXED TABLES
|
||||||
# .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
|
||||||
@ -85,7 +85,7 @@
|
|||||||
# (e.g., \fIuser+foo\fR@\fIdomain\fR), the lookup order becomes:
|
# (e.g., \fIuser+foo\fR@\fIdomain\fR), the lookup order becomes:
|
||||||
# \fIuser+foo\fR@\fIdomain\fR, \fIuser\fR@\fIdomain\fR, \fIdomain\fR,
|
# \fIuser+foo\fR@\fIdomain\fR, \fIuser\fR@\fIdomain\fR, \fIdomain\fR,
|
||||||
# \fIuser+foo\fR@, and \fIuser\fR@.
|
# \fIuser+foo\fR@, and \fIuser\fR@.
|
||||||
# HOST NAME/ADDRESS PATTERNS
|
# HOST NAME/ADDRESS PATTERNS IN INDEXED TABLES
|
||||||
# .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
|
||||||
|
@ -19085,7 +19085,7 @@ can be excluded with smtpd_forbid_bare_newline_exclusions. </dd>
|
|||||||
<dt> <b>note</b> </dt> <dd> Same as "normalize", but also notes in
|
<dt> <b>note</b> </dt> <dd> Same as "normalize", but also notes in
|
||||||
the log whether the Postfix SMTP server received any lines with
|
the log whether the Postfix SMTP server received any lines with
|
||||||
"bare <LF>". The information is formatted as "<tt>disconnect
|
"bare <LF>". The information is formatted as "<tt>disconnect
|
||||||
from name[address] ... notes=bare_lf</tt>". The new value is
|
from name[address] ... notes=bare_lf</tt>". The notes value is
|
||||||
expected to become a list of comma-separated names. <br> <br> This
|
expected to become a list of comma-separated names. <br> <br> This
|
||||||
feature is available in Postfix 3.9 and later. </dd>
|
feature is available in Postfix 3.9 and later. </dd>
|
||||||
|
|
||||||
|
@ -107,3 +107,4 @@ proto proto aliases proto virtual proto ADDRESS_REWRITING_README html
|
|||||||
postdrop postdrop c postsuper postsuper c sendmail sendmail c
|
postdrop postdrop c postsuper postsuper c sendmail sendmail c
|
||||||
postlogd postlogd c
|
postlogd postlogd c
|
||||||
qmgr qmgr c qmqpd qmqpd c trivial rewrite trivial rewrite c
|
qmgr qmgr c qmqpd qmqpd c trivial rewrite trivial rewrite c
|
||||||
|
strategies File smtp smtp c
|
||||||
|
@ -75,3 +75,4 @@ Refactored
|
|||||||
Vijay
|
Vijay
|
||||||
Sakaguchi
|
Sakaguchi
|
||||||
Toshifumi
|
Toshifumi
|
||||||
|
mxonly
|
||||||
|
@ -24,7 +24,7 @@ Reporting-MTA: dns; mail.example
|
|||||||
Original-Envelope-Id: TEST-ENVID
|
Original-Envelope-Id: TEST-ENVID
|
||||||
X-Postfix-Queue-ID: msgid
|
X-Postfix-Queue-ID: msgid
|
||||||
X-Postfix-Sender: rfc822; sender@sender.example
|
X-Postfix-Sender: rfc822; sender@sender.example
|
||||||
Arrival-Date: Sat, 5 Dec 2020 13:31:48 -0500 (EST)
|
Arrival-Date: Sat, 05 Dec 2020 13:31:48 -0500 (EST)
|
||||||
|
|
||||||
Final-Recipient: rfc822; rcpt-address
|
Final-Recipient: rfc822; rcpt-address
|
||||||
Original-Recipient: rfc822; rcpt-orig_addr
|
Original-Recipient: rfc822; rcpt-orig_addr
|
||||||
|
@ -26,7 +26,7 @@ Reporting-MTA: dns; mail.example
|
|||||||
Original-Envelope-Id: TEST-ENVID
|
Original-Envelope-Id: TEST-ENVID
|
||||||
X-Postfix-Queue-ID: msgid
|
X-Postfix-Queue-ID: msgid
|
||||||
X-Postfix-Sender: rfc822; sender@sender.example
|
X-Postfix-Sender: rfc822; sender@sender.example
|
||||||
Arrival-Date: Sat, 5 Dec 2020 13:31:48 -0500 (EST)
|
Arrival-Date: Sat, 05 Dec 2020 13:31:48 -0500 (EST)
|
||||||
|
|
||||||
Final-Recipient: rfc822; rcpt-address
|
Final-Recipient: rfc822; rcpt-address
|
||||||
Original-Recipient: rfc822; rcpt-orig_addr
|
Original-Recipient: rfc822; rcpt-orig_addr
|
||||||
|
@ -6,6 +6,6 @@
|
|||||||
./test_dns_lookup: lookup porcupine.org type A flags RES_USE_DNSSEC
|
./test_dns_lookup: lookup porcupine.org type A flags RES_USE_DNSSEC
|
||||||
./test_dns_lookup: dns_query: porcupine.org (A): Host found but no data record of requested type
|
./test_dns_lookup: dns_query: porcupine.org (A): Host found but no data record of requested type
|
||||||
ad: 0, rr: porcupine.org. 3600 IN MX 10 spike.porcupine.org.
|
ad: 0, rr: porcupine.org. 3600 IN MX 10 spike.porcupine.org.
|
||||||
ad: 0, rr: porcupine.org. 3600 IN MX 30 m1.porcupine.org.
|
|
||||||
ad: 0, rr: porcupine.org. 3600 IN MX 30 vz.porcupine.org.
|
ad: 0, rr: porcupine.org. 3600 IN MX 30 vz.porcupine.org.
|
||||||
|
ad: 0, rr: porcupine.org. 3600 IN MX 40 m1.porcupine.org.
|
||||||
porcupine.org: fqdn: porcupine.org
|
porcupine.org: fqdn: porcupine.org
|
||||||
|
@ -1,15 +1,15 @@
|
|||||||
./test_dns_lookup: dict_regexp_lookup: no-mx.reg: porcupine.org. 3600 IN MX 10 spike.porcupine.org.
|
./test_dns_lookup: dict_regexp_lookup: no-mx.reg: porcupine.org. 3600 IN MX 10 spike.porcupine.org.
|
||||||
./test_dns_lookup: dict_regexp_lookup: no-mx.reg: porcupine.org. 3600 IN MX 30 m1.porcupine.org.
|
|
||||||
./test_dns_lookup: dict_regexp_lookup: no-mx.reg: porcupine.org. 3600 IN MX 30 vz.porcupine.org.
|
./test_dns_lookup: dict_regexp_lookup: no-mx.reg: porcupine.org. 3600 IN MX 30 vz.porcupine.org.
|
||||||
|
./test_dns_lookup: dict_regexp_lookup: no-mx.reg: porcupine.org. 3600 IN MX 40 m1.porcupine.org.
|
||||||
./test_dns_lookup: dns_get_answer: type MX for porcupine.org
|
./test_dns_lookup: dns_get_answer: type MX for porcupine.org
|
||||||
./test_dns_lookup: dns_get_answer: type MX for porcupine.org
|
./test_dns_lookup: dns_get_answer: type MX for porcupine.org
|
||||||
./test_dns_lookup: dns_get_answer: type MX for porcupine.org
|
./test_dns_lookup: dns_get_answer: type MX for porcupine.org
|
||||||
./test_dns_lookup: dns_query: porcupine.org (MX): OK
|
./test_dns_lookup: dns_query: porcupine.org (MX): OK
|
||||||
./test_dns_lookup: ignoring DNS RR: porcupine.org. 3600 IN MX 10 spike.porcupine.org.
|
./test_dns_lookup: ignoring DNS RR: porcupine.org. 3600 IN MX 10 spike.porcupine.org.
|
||||||
./test_dns_lookup: ignoring DNS RR: porcupine.org. 3600 IN MX 30 m1.porcupine.org.
|
|
||||||
./test_dns_lookup: ignoring DNS RR: porcupine.org. 3600 IN MX 30 vz.porcupine.org.
|
./test_dns_lookup: ignoring DNS RR: porcupine.org. 3600 IN MX 30 vz.porcupine.org.
|
||||||
|
./test_dns_lookup: ignoring DNS RR: porcupine.org. 3600 IN MX 40 m1.porcupine.org.
|
||||||
./test_dns_lookup: lookup porcupine.org type MX flags RES_USE_DNSSEC
|
./test_dns_lookup: lookup porcupine.org type MX flags RES_USE_DNSSEC
|
||||||
./test_dns_lookup: maps_find: DNS reply filter: regexp:no-mx.reg(0,lock|fold_fix): porcupine.org. 3600 IN MX 10 spike.porcupine.org. = ignore
|
./test_dns_lookup: maps_find: DNS reply filter: regexp:no-mx.reg(0,lock|fold_fix): porcupine.org. 3600 IN MX 10 spike.porcupine.org. = ignore
|
||||||
./test_dns_lookup: maps_find: DNS reply filter: regexp:no-mx.reg(0,lock|fold_fix): porcupine.org. 3600 IN MX 30 m1.porcupine.org. = ignore
|
|
||||||
./test_dns_lookup: maps_find: DNS reply filter: regexp:no-mx.reg(0,lock|fold_fix): porcupine.org. 3600 IN MX 30 vz.porcupine.org. = ignore
|
./test_dns_lookup: maps_find: DNS reply filter: regexp:no-mx.reg(0,lock|fold_fix): porcupine.org. 3600 IN MX 30 vz.porcupine.org. = ignore
|
||||||
|
./test_dns_lookup: maps_find: DNS reply filter: regexp:no-mx.reg(0,lock|fold_fix): porcupine.org. 3600 IN MX 40 m1.porcupine.org. = ignore
|
||||||
./test_dns_lookup: warning: Error looking up name=porcupine.org type=MX: DNS reply filter drops all results (rcode=0)
|
./test_dns_lookup: warning: Error looking up name=porcupine.org type=MX: DNS reply filter drops all results (rcode=0)
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
/* time_t when;
|
/* time_t when;
|
||||||
/* DESCRIPTION
|
/* DESCRIPTION
|
||||||
/* mail_date() converts the time specified in \fIwhen\fR to the
|
/* mail_date() converts the time specified in \fIwhen\fR to the
|
||||||
/* form: "Mon, 9 Dec 1996 05:38:26 -0500 (EST)" and returns
|
/* form: "Mon, 09 Dec 1996 05:38:26 -0500 (EST)" and returns
|
||||||
/* a pointer to the result. The result is overwritten upon
|
/* a pointer to the result. The result is overwritten upon
|
||||||
/* each call.
|
/* each call.
|
||||||
/* DIAGNOSTICS
|
/* DIAGNOSTICS
|
||||||
@ -104,7 +104,7 @@ const char *mail_date(time_t when)
|
|||||||
* potentially breaking change, we prefer the %d (two-digit day) format,
|
* potentially breaking change, we prefer the %d (two-digit day) format,
|
||||||
* i.e. days 1-9 now have a leading zero instead of a leading space.
|
* i.e. days 1-9 now have a leading zero instead of a leading space.
|
||||||
*/
|
*/
|
||||||
#if defined(MISSING_STRFTIME_E) || defined (TWO_DIGIT_DAY_IN_DATE_TIME)
|
#if defined(MISSING_STRFTIME_E) || defined(TWO_DIGIT_DAY_IN_DATE_TIME)
|
||||||
#define STRFTIME_FMT "%a, %d %b %Y %H:%M:%S "
|
#define STRFTIME_FMT "%a, %d %b %Y %H:%M:%S "
|
||||||
#else
|
#else
|
||||||
#define STRFTIME_FMT "%a, %e %b %Y %H:%M:%S "
|
#define STRFTIME_FMT "%a, %e %b %Y %H:%M:%S "
|
||||||
|
@ -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 "20240209"
|
#define MAIL_RELEASE_DATE "20240213"
|
||||||
#define MAIL_VERSION_NUMBER "3.9"
|
#define MAIL_VERSION_NUMBER "3.9"
|
||||||
|
|
||||||
#ifdef SNAPSHOT
|
#ifdef SNAPSHOT
|
||||||
|
@ -195,8 +195,12 @@ const char *maps_find(MAPS *maps, const char *name, int flags)
|
|||||||
for (map_name = maps->argv->argv; *map_name; map_name++) {
|
for (map_name = maps->argv->argv; *map_name; map_name++) {
|
||||||
if ((dict = dict_handle(*map_name)) == 0)
|
if ((dict = dict_handle(*map_name)) == 0)
|
||||||
msg_panic("%s: dictionary not found: %s", myname, *map_name);
|
msg_panic("%s: dictionary not found: %s", myname, *map_name);
|
||||||
if (flags != 0 && (dict->flags & flags) == 0)
|
if (flags != 0 && (dict->flags & flags) == 0) {
|
||||||
|
if (msg_verbose)
|
||||||
|
msg_info("%s: %s: skipping %s lookup for %s",
|
||||||
|
myname, maps->title, *map_name, name);
|
||||||
continue;
|
continue;
|
||||||
|
}
|
||||||
if ((expansion = dict_get(dict, name)) != 0) {
|
if ((expansion = dict_get(dict, name)) != 0) {
|
||||||
if (*expansion == 0) {
|
if (*expansion == 0) {
|
||||||
msg_warn("%s lookup of %s returns an empty string result",
|
msg_warn("%s lookup of %s returns an empty string result",
|
||||||
@ -252,8 +256,12 @@ const char *maps_file_find(MAPS *maps, const char *name, int flags)
|
|||||||
if ((dict->flags & DICT_FLAG_SRC_RHS_IS_FILE) == 0)
|
if ((dict->flags & DICT_FLAG_SRC_RHS_IS_FILE) == 0)
|
||||||
msg_panic("%s: %s: opened without DICT_FLAG_SRC_RHS_IS_FILE",
|
msg_panic("%s: %s: opened without DICT_FLAG_SRC_RHS_IS_FILE",
|
||||||
myname, maps->title);
|
myname, maps->title);
|
||||||
if (flags != 0 && (dict->flags & flags) == 0)
|
if (flags != 0 && (dict->flags & flags) == 0) {
|
||||||
|
if (msg_verbose)
|
||||||
|
msg_info("%s: %s: skipping %s lookup for %s",
|
||||||
|
myname, maps->title, *map_name, name);
|
||||||
continue;
|
continue;
|
||||||
|
}
|
||||||
if ((expansion = dict_get(dict, name)) != 0) {
|
if ((expansion = dict_get(dict, name)) != 0) {
|
||||||
if (*expansion == 0) {
|
if (*expansion == 0) {
|
||||||
msg_warn("%s lookup of %s returns an empty string result",
|
msg_warn("%s lookup of %s returns an empty string result",
|
||||||
|
@ -23,9 +23,9 @@
|
|||||||
/* to the \fBbounce\fR(8), \fBdefer\fR(8) or \fBtrace\fR(8) daemon as
|
/* to the \fBbounce\fR(8), \fBdefer\fR(8) or \fBtrace\fR(8) daemon as
|
||||||
/* appropriate.
|
/* appropriate.
|
||||||
/*
|
/*
|
||||||
/* The server lookup strategy is different for SMTP and LMTP.
|
/* The server lookup strategy is different for SMTP and LMTP,
|
||||||
/* The details are given below under in the sections "SMTP
|
/* as described in the sections "SMTP SERVER LOOKUP" and "LMTP
|
||||||
/* DESTINATION SYNTAX" and "LMTP DESTINATION SYNTAX".
|
/* SERVER LOOKUP".
|
||||||
/*
|
/*
|
||||||
/* After a successful mail transaction, a connection may be saved
|
/* After a successful mail transaction, a connection may be saved
|
||||||
/* to the \fBscache\fR(8) connection cache server, so that it
|
/* to the \fBscache\fR(8) connection cache server, so that it
|
||||||
@ -35,7 +35,7 @@
|
|||||||
/* destinations that have a high volume of mail in the active
|
/* destinations that have a high volume of mail in the active
|
||||||
/* queue. Connection caching can be enabled permanently for
|
/* queue. Connection caching can be enabled permanently for
|
||||||
/* specific destinations.
|
/* specific destinations.
|
||||||
/* SMTP DESTINATION SYNTAX
|
/* SMTP SERVER LOOKUP
|
||||||
/* .ad
|
/* .ad
|
||||||
/* .fi
|
/* .fi
|
||||||
/* The Postfix SMTP client supports multiple destinations
|
/* The Postfix SMTP client supports multiple destinations
|
||||||
@ -59,7 +59,7 @@
|
|||||||
/* Connect to the host at the specified address, and connect
|
/* Connect to the host at the specified address, and connect
|
||||||
/* to the specified service (default: \fBsmtp\fR). An IPv6 address
|
/* to the specified service (default: \fBsmtp\fR). An IPv6 address
|
||||||
/* must be formatted as [\fBipv6\fR:\fIaddress\fR].
|
/* must be formatted as [\fBipv6\fR:\fIaddress\fR].
|
||||||
/* LMTP DESTINATION SYNTAX
|
/* LMTP SERVER LOOKUP
|
||||||
/* .ad
|
/* .ad
|
||||||
/* .fi
|
/* .fi
|
||||||
/* The Postfix LMTP client supports multiple destinations
|
/* The Postfix LMTP client supports multiple destinations
|
||||||
|
@ -164,6 +164,7 @@ int main(int argc, char **argv)
|
|||||||
msg_info("PASS %s/%d", str_name_code(af_map, tp->in_af),
|
msg_info("PASS %s/%d", str_name_code(af_map, tp->in_af),
|
||||||
tp->in_prefix_len);
|
tp->in_prefix_len);
|
||||||
}
|
}
|
||||||
|
myfree(act_prefix);
|
||||||
}
|
}
|
||||||
msg_info("PASS=%d FAIL=%d", pass, fail);
|
msg_info("PASS=%d FAIL=%d", pass, fail);
|
||||||
return (fail > 0);
|
return (fail > 0);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user