mirror of
https://github.com/vdukhovni/postfix
synced 2025-08-30 21:55:20 +00:00
postfix-2.4-20061229
This commit is contained in:
committed by
Viktor Dukhovni
parent
42dbfa896e
commit
c9e081a9dc
@@ -13047,6 +13047,17 @@ Apologies for any names omitted.
|
|||||||
Feature: time unit suffix support in _command_time_limit.
|
Feature: time unit suffix support in _command_time_limit.
|
||||||
Files: pipe/pipe.c, spawn/spawn.c.
|
Files: pipe/pipe.c, spawn/spawn.c.
|
||||||
|
|
||||||
|
20061227
|
||||||
|
|
||||||
|
Bugfix: the MX hostname syntax check was accidentally skipped
|
||||||
|
with reject_unknown_helo_hostname/sender_domain/recipient_domain.
|
||||||
|
File: smtpd/smtpd_check.c.
|
||||||
|
|
||||||
|
20061229
|
||||||
|
|
||||||
|
Cleanup: use separate TLS_LEGACY_README to document the old
|
||||||
|
TLS user interface. This will simplify TLS_README dramatically.
|
||||||
|
|
||||||
Wish list:
|
Wish list:
|
||||||
|
|
||||||
Update MILTER_README with Martinec info.
|
Update MILTER_README with Martinec info.
|
||||||
|
@@ -9,6 +9,7 @@ GGeenneerraall ccoonnffiigguurraattiioonn
|
|||||||
* VIRTUAL_README: Virtual domain hosting
|
* VIRTUAL_README: Virtual domain hosting
|
||||||
* SASL_README: SASL Authentication
|
* SASL_README: SASL Authentication
|
||||||
* TLS_README: TLS Encryption and authentication
|
* TLS_README: TLS Encryption and authentication
|
||||||
|
* TLS_LEGACY_README: Legacy TLS support
|
||||||
* IPV6_README: IP Version 6 Support
|
* IPV6_README: IP Version 6 Support
|
||||||
* INSTALL: Installation from source code
|
* INSTALL: Installation from source code
|
||||||
|
|
||||||
|
1111
postfix/README_FILES/TLS_LEGACY_README
Normal file
1111
postfix/README_FILES/TLS_LEGACY_README
Normal file
File diff suppressed because it is too large
Load Diff
@@ -16,10 +16,10 @@ Transport Layer Security (TLS, formerly called SSL) provides certificate-based
|
|||||||
authentication and encrypted sessions. An encrypted session protects the
|
authentication and encrypted sessions. An encrypted session protects the
|
||||||
information that is transmitted with SMTP mail or with SASL authentication.
|
information that is transmitted with SMTP mail or with SASL authentication.
|
||||||
|
|
||||||
Postfix version 2.2 introduces support for TLS as described in RFC 3207. TLS
|
This document describes a TLS user interface that was introduced with Postfix
|
||||||
Support for older Postfix versions was available as an add-on patch. The
|
version 2.3. Support for an older user interface is documented in
|
||||||
section "Compatibility with Postfix < 2.2 TLS support" below discusses the
|
TLS_LEGACY_README, which also describes the differences between Postfix and the
|
||||||
differences between these implementations.
|
third-party patch on which Postfix version 2.2 TLS support was based.
|
||||||
|
|
||||||
Topics covered in this document:
|
Topics covered in this document:
|
||||||
|
|
||||||
@@ -29,7 +29,6 @@ Topics covered in this document:
|
|||||||
* SMTP Client specific settings
|
* SMTP Client specific settings
|
||||||
* TLS manager specific settings
|
* TLS manager specific settings
|
||||||
* Reporting problems
|
* Reporting problems
|
||||||
* Compatibility with Postfix < 2.2 TLS support
|
|
||||||
* Credits
|
* Credits
|
||||||
|
|
||||||
And last but not least, for the impatient:
|
And last but not least, for the impatient:
|
||||||
@@ -1735,42 +1734,6 @@ www.postfix.org/lists.html for subscription information. When reporting a
|
|||||||
problem, please be thorough in the report. Patches, when possible, are greatly
|
problem, please be thorough in the report. Patches, when possible, are greatly
|
||||||
appreciated too.
|
appreciated too.
|
||||||
|
|
||||||
CCoommppaattiibbiilliittyy wwiitthh PPoossttffiixx << 22..22 TTLLSS ssuuppppoorrtt
|
|
||||||
|
|
||||||
Postfix version 2.2 TLS support is based on the Postfix/TLS patch by Lutz
|
|
||||||
J<EFBFBD>nicke, but differs in a few minor ways.
|
|
||||||
|
|
||||||
* main.cf: Specify "btree" instead of "sdbm" for TLS session cache databases.
|
|
||||||
|
|
||||||
TLS session cache databases are now accessed only by the tlsmgr(8) process,
|
|
||||||
so there are no more concurrency issues. Although Postfix has an sdbm
|
|
||||||
client, the sdbm library (1000 lines of code) is not included with Postfix.
|
|
||||||
|
|
||||||
TLS session caches can use any database that can store objects of several
|
|
||||||
kbytes or more, and that implements the sequence operation. In most cases,
|
|
||||||
btree databases should be adequate.
|
|
||||||
|
|
||||||
NOTE: You cannot use DBM databases. TLS session objects are too large.
|
|
||||||
|
|
||||||
* master.cf: Specify "unix" instead of "fifo" as the tlsmgr service type.
|
|
||||||
|
|
||||||
The smtp(8) and smtpd(8) processes now use a client-server protocol in
|
|
||||||
order to access the tlsmgr(8) pseudo-random number generation (PRNG) pool,
|
|
||||||
and in order to access the TLS session cache databases. Such a protocol
|
|
||||||
cannot be run across fifos.
|
|
||||||
|
|
||||||
* smtp_tls_per_site: the MUST_NOPEERMATCH per-site policy cannot override the
|
|
||||||
global "smtp_tls_enforce_peername = yes" setting.
|
|
||||||
|
|
||||||
* smtp_tls_per_site: a combined (NONE + MAY) lookup result for (hostname and
|
|
||||||
next-hop destination) produces counter-intuitive results for different
|
|
||||||
main.cf settings. TLS is enabled with "smtp_tls_enforce_peername = no", but
|
|
||||||
it is disabled when both "smtp_enforce_tls = yes" and
|
|
||||||
"smtp_tls_enforce_peername = yes".
|
|
||||||
|
|
||||||
The smtp_tls_per_site limitations were removed by the end of the Postfix 2.2
|
|
||||||
support cycle.
|
|
||||||
|
|
||||||
CCrreeddiittss
|
CCrreeddiittss
|
||||||
|
|
||||||
* TLS support for Postfix was originally developed by Lutz J<>nicke at Cottbus
|
* TLS support for Postfix was originally developed by Lutz J<>nicke at Cottbus
|
||||||
|
1596
postfix/html/TLS_LEGACY_README.html
Normal file
1596
postfix/html/TLS_LEGACY_README.html
Normal file
File diff suppressed because it is too large
Load Diff
@@ -34,11 +34,11 @@ certificate-based authentication and encrypted sessions. An
|
|||||||
encrypted session protects the information that is transmitted with
|
encrypted session protects the information that is transmitted with
|
||||||
SMTP mail or with SASL authentication.
|
SMTP mail or with SASL authentication.
|
||||||
|
|
||||||
<p> Postfix version 2.2 introduces support for TLS as described in
|
<p> This document describes a TLS user interface that was introduced
|
||||||
<a href="http://www.faqs.org/rfcs/rfc3207.html">RFC 3207</a>. TLS Support for older Postfix versions was available as
|
with Postfix version 2.3. Support for an older user interface is
|
||||||
an add-on patch. The section "<a href="#compat">Compatibility with
|
documented in <a href="TLS_LEGACY_README.html">TLS_LEGACY_README</a>, which also describes the differences
|
||||||
Postfix < 2.2 TLS support</a>" below discusses the differences
|
between Postfix and the third-party patch on which Postfix version
|
||||||
between these implementations. </p>
|
2.2 TLS support was based. </p>
|
||||||
|
|
||||||
<p> Topics covered in this document: </p>
|
<p> Topics covered in this document: </p>
|
||||||
|
|
||||||
@@ -56,8 +56,6 @@ between these implementations. </p>
|
|||||||
|
|
||||||
<li><a href="#problems"> Reporting problems </a>
|
<li><a href="#problems"> Reporting problems </a>
|
||||||
|
|
||||||
<li><a href="#compat">Compatibility with Postfix < 2.2 TLS support</a>
|
|
||||||
|
|
||||||
<li><a href="#credits"> Credits </a>
|
<li><a href="#credits"> Credits </a>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
@@ -2330,52 +2328,6 @@ See <a href="http://www.postfix.org/lists.html">http://www.postfix.org/lists.htm
|
|||||||
When reporting a problem, please be thorough in the report. Patches,
|
When reporting a problem, please be thorough in the report. Patches,
|
||||||
when possible, are greatly appreciated too. </p>
|
when possible, are greatly appreciated too. </p>
|
||||||
|
|
||||||
<h2><a name="compat">Compatibility with Postfix < 2.2 TLS support</a></h2>
|
|
||||||
|
|
||||||
<p> Postfix version 2.2 TLS support is based on the Postfix/TLS
|
|
||||||
patch by Lutz Jänicke, but differs in a few minor ways. </p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li> <p> <a href="postconf.5.html">main.cf</a>: Specify "btree" instead of "sdbm" for TLS
|
|
||||||
session cache databases. </p>
|
|
||||||
|
|
||||||
<p> TLS session cache databases are now accessed only by the
|
|
||||||
<a href="tlsmgr.8.html">tlsmgr(8)</a> process, so there are no more concurrency issues. Although
|
|
||||||
Postfix has an sdbm client, the sdbm library (1000
|
|
||||||
lines of code) is not included with Postfix. </p>
|
|
||||||
|
|
||||||
<p> TLS session caches can use any database that can store objects
|
|
||||||
of several kbytes or more, and that implements the sequence operation.
|
|
||||||
In most cases, btree databases should be adequate. </p>
|
|
||||||
|
|
||||||
<p> NOTE: You cannot use DBM databases. TLS session objects
|
|
||||||
are too large. </p>
|
|
||||||
|
|
||||||
<li> <p> <a href="master.5.html">master.cf</a>: Specify "unix" instead of "fifo" as
|
|
||||||
the tlsmgr service type. </p>
|
|
||||||
|
|
||||||
<p> The <a href="smtp.8.html">smtp(8)</a> and <a href="smtpd.8.html">smtpd(8)</a> processes now use a client-server
|
|
||||||
protocol in order to access the <a href="tlsmgr.8.html">tlsmgr(8)</a> pseudo-random number
|
|
||||||
generation (PRNG) pool, and in order to access the TLS session
|
|
||||||
cache databases. Such a protocol cannot be run across fifos. </p>
|
|
||||||
|
|
||||||
<li> <p> <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a>: the MUST_NOPEERMATCH per-site policy
|
|
||||||
cannot override the global "<a href="postconf.5.html#smtp_tls_enforce_peername">smtp_tls_enforce_peername</a> = yes" setting.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<li> <p> <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a>: a combined (NONE + MAY) lookup result
|
|
||||||
for (hostname and next-hop destination) produces counter-intuitive
|
|
||||||
results for different <a href="postconf.5.html">main.cf</a> settings. TLS is enabled with
|
|
||||||
"<a href="postconf.5.html#smtp_tls_enforce_peername">smtp_tls_enforce_peername</a> = no", but it is disabled when both
|
|
||||||
"<a href="postconf.5.html#smtp_enforce_tls">smtp_enforce_tls</a> = yes" and "<a href="postconf.5.html#smtp_tls_enforce_peername">smtp_tls_enforce_peername</a> = yes".
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p> The <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> limitations were removed by the end of
|
|
||||||
the Postfix 2.2 support cycle. </p>
|
|
||||||
|
|
||||||
<h2><a name="credits">Credits </a> </h2>
|
<h2><a name="credits">Credits </a> </h2>
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
|
@@ -40,6 +40,8 @@ configuration examples </a>
|
|||||||
|
|
||||||
<li> <a href="TLS_README.html"> TLS Encryption and authentication </a>
|
<li> <a href="TLS_README.html"> TLS Encryption and authentication </a>
|
||||||
|
|
||||||
|
<li> <a href="TLS_LEGACY_README.html"> Legacy TLS support </a>
|
||||||
|
|
||||||
<li> <a href="IPV6_README.html"> IP Version 6 Support </a>
|
<li> <a href="IPV6_README.html"> IP Version 6 Support </a>
|
||||||
|
|
||||||
<li> <a href="INSTALL.html"> Installation from source code </a>
|
<li> <a href="INSTALL.html"> Installation from source code </a>
|
||||||
|
@@ -35,7 +35,7 @@ HTML = ../html/ADDRESS_CLASS_README.html \
|
|||||||
../html/SMTPD_POLICY_README.html \
|
../html/SMTPD_POLICY_README.html \
|
||||||
../html/SMTPD_PROXY_README.html \
|
../html/SMTPD_PROXY_README.html \
|
||||||
../html/STANDARD_CONFIGURATION_README.html \
|
../html/STANDARD_CONFIGURATION_README.html \
|
||||||
../html/TLS_README.html \
|
../html/TLS_README.html ../html/TLS_LEGACY_README.html \
|
||||||
../html/TUNING_README.html \
|
../html/TUNING_README.html \
|
||||||
../html/UUCP_README.html ../html/ULTRIX_README.html \
|
../html/UUCP_README.html ../html/ULTRIX_README.html \
|
||||||
../html/VERP_README.html ../html/VIRTUAL_README.html \
|
../html/VERP_README.html ../html/VIRTUAL_README.html \
|
||||||
@@ -71,7 +71,7 @@ README = ../README_FILES/ADDRESS_CLASS_README \
|
|||||||
../README_FILES/SMTPD_ACCESS_README \
|
../README_FILES/SMTPD_ACCESS_README \
|
||||||
../README_FILES/SMTPD_POLICY_README ../README_FILES/SMTPD_PROXY_README \
|
../README_FILES/SMTPD_POLICY_README ../README_FILES/SMTPD_PROXY_README \
|
||||||
../README_FILES/STANDARD_CONFIGURATION_README \
|
../README_FILES/STANDARD_CONFIGURATION_README \
|
||||||
../README_FILES/TLS_README \
|
../README_FILES/TLS_README ../README_FILES/TLS_LEGACY_README \
|
||||||
../README_FILES/TUNING_README \
|
../README_FILES/TUNING_README \
|
||||||
../README_FILES/UUCP_README ../README_FILES/ULTRIX_README \
|
../README_FILES/UUCP_README ../README_FILES/ULTRIX_README \
|
||||||
../README_FILES/VERP_README ../README_FILES/VIRTUAL_README \
|
../README_FILES/VERP_README ../README_FILES/VIRTUAL_README \
|
||||||
@@ -264,6 +264,9 @@ clobber:
|
|||||||
../html/TLS_README.html: TLS_README.html
|
../html/TLS_README.html: TLS_README.html
|
||||||
$(POSTLINK) $? >$@
|
$(POSTLINK) $? >$@
|
||||||
|
|
||||||
|
../html/TLS_LEGACY_README.html: TLS_LEGACY_README.html
|
||||||
|
$(POSTLINK) $? >$@
|
||||||
|
|
||||||
../README_FILES/ADDRESS_CLASS_README: ADDRESS_CLASS_README.html
|
../README_FILES/ADDRESS_CLASS_README: ADDRESS_CLASS_README.html
|
||||||
$(HT2READ) $? >$@
|
$(HT2READ) $? >$@
|
||||||
|
|
||||||
@@ -405,6 +408,9 @@ clobber:
|
|||||||
../README_FILES/TLS_README: TLS_README.html
|
../README_FILES/TLS_README: TLS_README.html
|
||||||
$(HT2READ) $? >$@
|
$(HT2READ) $? >$@
|
||||||
|
|
||||||
|
../README_FILES/TLS_LEGACY_README: TLS_LEGACY_README.html
|
||||||
|
$(HT2READ) $? >$@
|
||||||
|
|
||||||
../README_FILES/AAAREADME: ../html/index.html $(MAKEAAA)
|
../README_FILES/AAAREADME: ../html/index.html $(MAKEAAA)
|
||||||
$(MAKEAAA) ../html/index.html | $(HT2READ) >$@
|
$(MAKEAAA) ../html/index.html | $(HT2READ) >$@
|
||||||
|
|
||||||
|
1596
postfix/proto/TLS_LEGACY_README.html
Normal file
1596
postfix/proto/TLS_LEGACY_README.html
Normal file
File diff suppressed because it is too large
Load Diff
@@ -34,11 +34,11 @@ certificate-based authentication and encrypted sessions. An
|
|||||||
encrypted session protects the information that is transmitted with
|
encrypted session protects the information that is transmitted with
|
||||||
SMTP mail or with SASL authentication.
|
SMTP mail or with SASL authentication.
|
||||||
|
|
||||||
<p> Postfix version 2.2 introduces support for TLS as described in
|
<p> This document describes a TLS user interface that was introduced
|
||||||
RFC 3207. TLS Support for older Postfix versions was available as
|
with Postfix version 2.3. Support for an older user interface is
|
||||||
an add-on patch. The section "<a href="#compat">Compatibility with
|
documented in TLS_LEGACY_README, which also describes the differences
|
||||||
Postfix < 2.2 TLS support</a>" below discusses the differences
|
between Postfix and the third-party patch on which Postfix version
|
||||||
between these implementations. </p>
|
2.2 TLS support was based. </p>
|
||||||
|
|
||||||
<p> Topics covered in this document: </p>
|
<p> Topics covered in this document: </p>
|
||||||
|
|
||||||
@@ -56,8 +56,6 @@ between these implementations. </p>
|
|||||||
|
|
||||||
<li><a href="#problems"> Reporting problems </a>
|
<li><a href="#problems"> Reporting problems </a>
|
||||||
|
|
||||||
<li><a href="#compat">Compatibility with Postfix < 2.2 TLS support</a>
|
|
||||||
|
|
||||||
<li><a href="#credits"> Credits </a>
|
<li><a href="#credits"> Credits </a>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
@@ -2330,52 +2328,6 @@ See http://www.postfix.org/lists.html for subscription information.
|
|||||||
When reporting a problem, please be thorough in the report. Patches,
|
When reporting a problem, please be thorough in the report. Patches,
|
||||||
when possible, are greatly appreciated too. </p>
|
when possible, are greatly appreciated too. </p>
|
||||||
|
|
||||||
<h2><a name="compat">Compatibility with Postfix < 2.2 TLS support</a></h2>
|
|
||||||
|
|
||||||
<p> Postfix version 2.2 TLS support is based on the Postfix/TLS
|
|
||||||
patch by Lutz Jänicke, but differs in a few minor ways. </p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
<li> <p> main.cf: Specify "btree" instead of "sdbm" for TLS
|
|
||||||
session cache databases. </p>
|
|
||||||
|
|
||||||
<p> TLS session cache databases are now accessed only by the
|
|
||||||
tlsmgr(8) process, so there are no more concurrency issues. Although
|
|
||||||
Postfix has an sdbm client, the sdbm library (1000
|
|
||||||
lines of code) is not included with Postfix. </p>
|
|
||||||
|
|
||||||
<p> TLS session caches can use any database that can store objects
|
|
||||||
of several kbytes or more, and that implements the sequence operation.
|
|
||||||
In most cases, btree databases should be adequate. </p>
|
|
||||||
|
|
||||||
<p> NOTE: You cannot use DBM databases. TLS session objects
|
|
||||||
are too large. </p>
|
|
||||||
|
|
||||||
<li> <p> master.cf: Specify "unix" instead of "fifo" as
|
|
||||||
the tlsmgr service type. </p>
|
|
||||||
|
|
||||||
<p> The smtp(8) and smtpd(8) processes now use a client-server
|
|
||||||
protocol in order to access the tlsmgr(8) pseudo-random number
|
|
||||||
generation (PRNG) pool, and in order to access the TLS session
|
|
||||||
cache databases. Such a protocol cannot be run across fifos. </p>
|
|
||||||
|
|
||||||
<li> <p> smtp_tls_per_site: the MUST_NOPEERMATCH per-site policy
|
|
||||||
cannot override the global "smtp_tls_enforce_peername = yes" setting.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<li> <p> smtp_tls_per_site: a combined (NONE + MAY) lookup result
|
|
||||||
for (hostname and next-hop destination) produces counter-intuitive
|
|
||||||
results for different main.cf settings. TLS is enabled with
|
|
||||||
"smtp_tls_enforce_peername = no", but it is disabled when both
|
|
||||||
"smtp_enforce_tls = yes" and "smtp_tls_enforce_peername = yes".
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p> The smtp_tls_per_site limitations were removed by the end of
|
|
||||||
the Postfix 2.2 support cycle. </p>
|
|
||||||
|
|
||||||
<h2><a name="credits">Credits </a> </h2>
|
<h2><a name="credits">Credits </a> </h2>
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
|
@@ -100,6 +100,12 @@
|
|||||||
/* The DNS query succeeded; the requested information was not found.
|
/* The DNS query succeeded; the requested information was not found.
|
||||||
/* .IP DNS_INVAL
|
/* .IP DNS_INVAL
|
||||||
/* The DNS query succeeded; the result failed the valid_hostname() test.
|
/* The DNS query succeeded; the result failed the valid_hostname() test.
|
||||||
|
/*
|
||||||
|
/* NOTE: the valid_hostname() test is skipped for results that
|
||||||
|
/* the caller suppresses explicitly. For example, when the
|
||||||
|
/* caller requests MX record lookup but specifies a null
|
||||||
|
/* resource record list argument, no syntax check will be done
|
||||||
|
/* for MX server names.
|
||||||
/* .IP DNS_RETRY
|
/* .IP DNS_RETRY
|
||||||
/* The query failed, or the reply was malformed.
|
/* The query failed, or the reply was malformed.
|
||||||
/* The problem is considered transient.
|
/* The problem is considered transient.
|
||||||
|
@@ -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 "20061224"
|
#define MAIL_RELEASE_DATE "20061229"
|
||||||
#define MAIL_VERSION_NUMBER "2.4"
|
#define MAIL_VERSION_NUMBER "2.4"
|
||||||
|
|
||||||
#ifdef SNAPSHOT
|
#ifdef SNAPSHOT
|
||||||
|
@@ -1142,6 +1142,7 @@ static int reject_unknown_hostname(SMTPD_STATE *state, char *name,
|
|||||||
{
|
{
|
||||||
const char *myname = "reject_unknown_hostname";
|
const char *myname = "reject_unknown_hostname";
|
||||||
int dns_status;
|
int dns_status;
|
||||||
|
DNS_RR *dummy;
|
||||||
|
|
||||||
if (msg_verbose)
|
if (msg_verbose)
|
||||||
msg_info("%s: %s", myname, name);
|
msg_info("%s: %s", myname, name);
|
||||||
@@ -1152,15 +1153,20 @@ static int reject_unknown_hostname(SMTPD_STATE *state, char *name,
|
|||||||
#define RR_ADDR_TYPES T_A
|
#define RR_ADDR_TYPES T_A
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
dns_status = dns_lookup_l(name, 0, (DNS_RR **) 0, (VSTRING *) 0,
|
dns_status = dns_lookup_l(name, 0, &dummy, (VSTRING *) 0,
|
||||||
(VSTRING *) 0, DNS_REQ_FLAG_STOP_OK,
|
(VSTRING *) 0, DNS_REQ_FLAG_STOP_OK,
|
||||||
RR_ADDR_TYPES, T_MX, 0);
|
RR_ADDR_TYPES, T_MX, 0);
|
||||||
|
if (dummy)
|
||||||
|
dns_rr_free(dummy);
|
||||||
if (dns_status != DNS_OK) { /* incl. DNS_INVAL */
|
if (dns_status != DNS_OK) { /* incl. DNS_INVAL */
|
||||||
if (dns_status != DNS_RETRY)
|
if (dns_status != DNS_RETRY)
|
||||||
return (smtpd_check_reject(state, MAIL_ERROR_POLICY,
|
return (smtpd_check_reject(state, MAIL_ERROR_POLICY,
|
||||||
var_unk_name_code, "4.7.1",
|
var_unk_name_code, "4.7.1",
|
||||||
"<%s>: %s rejected: Host not found",
|
"<%s>: %s rejected: %s",
|
||||||
reply_name, reply_class));
|
reply_name, reply_class,
|
||||||
|
dns_status == DNS_INVAL ?
|
||||||
|
"Malformed DNS server reply" :
|
||||||
|
"Host not found"));
|
||||||
else
|
else
|
||||||
DEFER_IF_PERMIT2(state, MAIL_ERROR_POLICY,
|
DEFER_IF_PERMIT2(state, MAIL_ERROR_POLICY,
|
||||||
450, "4.7.1",
|
450, "4.7.1",
|
||||||
@@ -1177,23 +1183,29 @@ static int reject_unknown_mailhost(SMTPD_STATE *state, const char *name,
|
|||||||
{
|
{
|
||||||
const char *myname = "reject_unknown_mailhost";
|
const char *myname = "reject_unknown_mailhost";
|
||||||
int dns_status;
|
int dns_status;
|
||||||
|
DNS_RR *dummy;
|
||||||
|
|
||||||
if (msg_verbose)
|
if (msg_verbose)
|
||||||
msg_info("%s: %s", myname, name);
|
msg_info("%s: %s", myname, name);
|
||||||
|
|
||||||
#define MAILHOST_LOOKUP_FLAGS (DNS_REQ_FLAG_STOP_OK | DNS_REQ_FLAG_STOP_INVAL)
|
#define MAILHOST_LOOKUP_FLAGS (DNS_REQ_FLAG_STOP_OK | DNS_REQ_FLAG_STOP_INVAL)
|
||||||
|
|
||||||
dns_status = dns_lookup_l(name, 0, (DNS_RR **) 0, (VSTRING *) 0,
|
dns_status = dns_lookup_l(name, 0, &dummy, (VSTRING *) 0,
|
||||||
(VSTRING *) 0, MAILHOST_LOOKUP_FLAGS,
|
(VSTRING *) 0, MAILHOST_LOOKUP_FLAGS,
|
||||||
T_MX, RR_ADDR_TYPES, 0);
|
T_MX, RR_ADDR_TYPES, 0);
|
||||||
|
if (dummy)
|
||||||
|
dns_rr_free(dummy);
|
||||||
if (dns_status != DNS_OK) { /* incl. DNS_INVAL */
|
if (dns_status != DNS_OK) { /* incl. DNS_INVAL */
|
||||||
if (dns_status != DNS_RETRY)
|
if (dns_status != DNS_RETRY)
|
||||||
return (smtpd_check_reject(state, MAIL_ERROR_POLICY,
|
return (smtpd_check_reject(state, MAIL_ERROR_POLICY,
|
||||||
var_unk_addr_code,
|
var_unk_addr_code,
|
||||||
strcmp(reply_class, SMTPD_NAME_SENDER) == 0 ?
|
strcmp(reply_class, SMTPD_NAME_SENDER) == 0 ?
|
||||||
"4.1.8" : "4.1.2",
|
"4.1.8" : "4.1.2",
|
||||||
"<%s>: %s rejected: Domain not found",
|
"<%s>: %s rejected: %s",
|
||||||
reply_name, reply_class));
|
reply_name, reply_class,
|
||||||
|
dns_status == DNS_INVAL ?
|
||||||
|
"Malformed DNS server reply" :
|
||||||
|
"Domain not found"));
|
||||||
else
|
else
|
||||||
DEFER_IF_PERMIT2(state, MAIL_ERROR_POLICY,
|
DEFER_IF_PERMIT2(state, MAIL_ERROR_POLICY,
|
||||||
450, strcmp(reply_class, SMTPD_NAME_SENDER) == 0 ?
|
450, strcmp(reply_class, SMTPD_NAME_SENDER) == 0 ?
|
||||||
|
Reference in New Issue
Block a user