Import sendmail 8.14.6
This commit is contained in:
parent
8601cea5b1
commit
9deed03348
4
LICENSE
4
LICENSE
@ -35,7 +35,7 @@ each of the following conditions is met:
|
||||
forth as paragraph 6 below, in the documentation and/or other materials
|
||||
provided with the distribution. For the purposes of binary distribution
|
||||
the "Copyright Notice" refers to the following language:
|
||||
"Copyright (c) 1998-2010 Sendmail, Inc. All rights reserved."
|
||||
"Copyright (c) 1998-2012 Sendmail, Inc. All rights reserved."
|
||||
|
||||
4. Neither the name of Sendmail, Inc. nor the University of California nor
|
||||
names of their contributors may be used to endorse or promote
|
||||
@ -78,4 +78,4 @@ each of the following conditions is met:
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
$Revision: 8.17 $, Last updated $Date: 2010/12/03 01:10:00 $, Document 139848.1
|
||||
$Revision: 8.18 $, Last updated $Date: 2012/05/15 21:49:03 $, Document 139848.1
|
||||
|
302
PGPKEYS
302
PGPKEYS
@ -142,7 +142,149 @@ gpExpdV7qPrw9k01j5rod5PjZlG8zV0=
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
Type Bits KeyID Created Expires Algorithm Use
|
||||
pub 2048 A97884B0 2011-01-04 ------- RSA Sign & Encrypt
|
||||
pub 2048 CEEEF43B 2011-12-14 ------- RSA Sign & Encrypt
|
||||
fingerprint: CA7A 8F39 A241 9FFF B0A9 AB27 8E5A E9FB CEEE F43B
|
||||
uid Sendmail Signing Key/2012 <sendmail@Sendmail.ORG>
|
||||
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Version: GnuPG v1.4.9 (OpenBSD)
|
||||
|
||||
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
|
||||
=qHzF
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
Type Bits KeyID Created Expires Algorithm Use
|
||||
pub 2048 A97884B0 2011-01-04 ------- RSA Sign & Encrypt
|
||||
fingerprint: 5872 6218 A913 400D E660 3601 39A4 C77D A978 84B0
|
||||
uid Sendmail Signing Key/2011 <sendmail@Sendmail.ORG>
|
||||
|
||||
@ -251,7 +393,7 @@ KH6d5q94eHcPD56A4cYD275DIZzAYqRpwzmB9O845HrHAPmQ
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
Type Bits KeyID Created Expires Algorithm Use
|
||||
pub 2048 85410ABE 2010-02-19 ------- RSA Sign
|
||||
pub 2048 85410ABE 2010-02-19 ------- RSA Sign
|
||||
fingerprint: B175 9644 5303 5DCE DD7B E919 604D FBF2 8541 0ABE
|
||||
uid Sendmail Signing Key/2010 <sendmail@Sendmail.ORG>
|
||||
|
||||
@ -1453,13 +1595,79 @@ aBteGdu18ACeNXYmxUhQN/ogZuSaBhd/51aBD8SIRgQQEQIABgUCP9X7SwAKCRCk
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
Type Bits KeyID Created Expires Algorithm Use
|
||||
pub 1024 0xA0F8AA0C 2006-03-17 ---------- DSA Sign & Encrypt
|
||||
f20 Fingerprint20 = 770E 4AC8 8A97 B69E 6E75 0605 1043 2518 A0F8 AA0C
|
||||
sub 2048 0x6E613854 2006-03-17 ---------- Diffie-Hellman
|
||||
pub 2048 0x0C8B8333 2011-12-14 ---------- RSA Sign & Encrypt
|
||||
f20 Fingerprint20 = B080 979F 4D04 3E19 D05A 369C 629E F8EE 0C8B 8333
|
||||
sub 2048 0x6763ED11 2011-12-14 ---------- RSA
|
||||
uid Sendmail, Inc. Security Officer <security-officer@sendmail.com>
|
||||
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Version: GnuPG v1.2.4 (Darwin)
|
||||
Version: GnuPG v1.4.11 (Darwin)
|
||||
|
||||
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
|
||||
G09zJuZGoDdC9KhhogEVj4Ow+ydV
|
||||
=qF87
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
Type Bits KeyID Created Expires Algorithm Use
|
||||
pub 1024 0xA0F8AA0C 2006-03-17 ---------- DSA Sign & Encrypt
|
||||
f20 Fingerprint20 = 770E 4AC8 8A97 B69E 6E75 0605 1043 2518 A0F8 AA0C
|
||||
sub 2048 0x6E613854 2006-03-17 ---------- Diffie-Hellman
|
||||
uid Sendmail, Inc. Security Officer <security-officer@sendmail.com> [REVOKED]
|
||||
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Version: GnuPG v1.4.11 (Darwin)
|
||||
|
||||
mQGiBEQbQzgRBAC7QmIW2r0oJ9Ixk1ewPxfwN1CU15k2ORBzRVIcO1UcLm6I5t3Z
|
||||
Gorbj22J8xNyY67yQ3pi5O+pffl5LujEKTco3D3sHhHnpz8vIaBiLyVUG3dCHZwU
|
||||
@ -1469,42 +1677,50 @@ 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
|
||||
3plWjAkK4jGDVnkcVv2eMGfTP20=
|
||||
=Ylc5
|
||||
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
|
||||
Z9M/bQ==
|
||||
=nJIt
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
Type Bits KeyID Created Expires Algorithm Use
|
||||
@ -2082,4 +2298,4 @@ DnF3FZZEzV7oqPwC2jzv/1dD6GFhtgy0cnyoPGUJCyc=
|
||||
=nES8
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
$Revision: 8.36 $, Last updated $Date: 2011/01/28 21:17:54 $
|
||||
$Revision: 8.40 $, Last updated $Date: 2012/01/09 04:44:59 $
|
||||
|
@ -1,11 +1,60 @@
|
||||
SENDMAIL RELEASE NOTES
|
||||
$Id: RELEASE_NOTES,v 8.1991 2011/05/15 04:28:16 ca Exp $
|
||||
$Id: RELEASE_NOTES,v 8.2011 2012/12/21 18:42:16 ca Exp $
|
||||
|
||||
|
||||
This listing shows the version of the sendmail binary, the version
|
||||
of the sendmail configuration files, the date of release, and a
|
||||
summary of the changes in that release.
|
||||
|
||||
8.14.6/8.14.6 2012/12/23
|
||||
Fix a regression introduced in 8.14.5: if a server offers
|
||||
two AUTH lines, the MTA would not read them after
|
||||
STARTTLS has been used and hence SMTP AUTH for
|
||||
the client side would fail. Problem noted by Lena.
|
||||
Do not cache hostnames internally in a non case sensitive way
|
||||
as that may cause addresses to change from lower case
|
||||
to upper case or vice versa. These header modifications
|
||||
can cause problems with milters that rely on receiving
|
||||
headers in the same way as they are being sent out such
|
||||
as a DKIM signing milter.
|
||||
If MaxQueueChildren is set then it was possible that new queue
|
||||
runners could not be started anymore because an
|
||||
internal counter was subject to a race condition.
|
||||
If a milter decreases the timeout it waits for a communication
|
||||
with the MTA, the MTA might experience a write() timeout.
|
||||
In some situations, the resulting error might have been
|
||||
ignored. Problem noted by Werner Wiethege.
|
||||
Note: decreasing the communication timeout in a milter
|
||||
should not be done without considering the potential
|
||||
problems.
|
||||
smfi_setsymlist() now properly sets the list of macros for
|
||||
the milter which invoked it, instead of a global
|
||||
list for all milters. Problem reported by
|
||||
David Shrimpton of the University of Queensland.
|
||||
If Timeout.resolver.retrans is set to a value larger than 20,
|
||||
then resolver.retry was temporarily set to 0 for
|
||||
gethostbyaddr() lookups. Now it is set to 1 instead.
|
||||
Patch from Peter.
|
||||
If sendmail could not lock the statistics file due to a system
|
||||
error, and sendmail later sends a DSN for a mail that
|
||||
triggered such an error, then sendmail tried to access
|
||||
memory that was freed before (causing a crash on some
|
||||
systems). Problem reported by Ryan Stone.
|
||||
Do not log negative values for size= nor pri= to avoid confusing
|
||||
log parsers, instead limit the values to LONG_MAX.
|
||||
Account for an API change in newer versions of Cyrus-SASL.
|
||||
Patch from Hajimu UMEMOTO from FreeBSD.
|
||||
Do not try to resolve link-local addresses for IPv4 (just as it
|
||||
is done for IPv6). Patch from John Beck of Oracle.
|
||||
Improve logging of client and server STARTTLS connection failures
|
||||
that may be due to incompatible cipher lists by including
|
||||
the reason for the failure in a single log line. Suggested
|
||||
by James Carey of Boeing.
|
||||
Portability:
|
||||
Add support for Darwin 11.x and 12.x (Mac OS X 10.7 and 10.8).
|
||||
Add support for SunOS 5.12 (aka Solaris 12). Patch from
|
||||
John Beck of Oracle.
|
||||
|
||||
8.14.5/8.14.5 2011/05/17
|
||||
Do not cache SMTP extensions across connections as the cache
|
||||
is based on hostname which may not be a unique identifier
|
||||
|
@ -1144,7 +1144,7 @@ relay_hosts_only
|
||||
For example, if you specify ``foo.com'', then mail to or
|
||||
from foo.com, abc.foo.com, or a.very.deep.domain.foo.com
|
||||
will all be accepted for relaying. This feature changes
|
||||
the behaviour to lookup individual host names only.
|
||||
the behaviour to look up individual host names only.
|
||||
|
||||
relay_based_on_MX
|
||||
Turns on the ability to allow relaying based on the MX
|
||||
@ -2230,9 +2230,9 @@ command:
|
||||
FEATURE(`ldap_routing', <mailHost>, <mailRoutingAddress>, <bounce>,
|
||||
<detail>, <nodomain>, <tempfail>)
|
||||
|
||||
where <mailHost> is a map definition describing how to lookup an alternative
|
||||
where <mailHost> is a map definition describing how to look up an alternative
|
||||
mail host for a particular address; <mailRoutingAddress> is a map definition
|
||||
describing how to lookup an alternative address for a particular address;
|
||||
describing how to look up an alternative address for a particular address;
|
||||
the <bounce> argument, if present and not the word "passthru", dictates
|
||||
that mail should be bounced if neither a mailHost nor mailRoutingAddress
|
||||
is found, if set to "sendertoo", the sender will be rejected if not
|
||||
@ -4701,4 +4701,4 @@ M4 DIVERSIONS
|
||||
8 DNS based blacklists
|
||||
9 special local rulesets (1 and 2)
|
||||
|
||||
$Revision: 8.727 $, Last updated $Date: 2009/05/07 23:46:17 $
|
||||
$Revision: 8.728 $, Last updated $Date: 2012/09/07 16:29:13 $
|
||||
|
@ -16,8 +16,8 @@
|
||||
#####
|
||||
##### SENDMAIL CONFIGURATION FILE
|
||||
#####
|
||||
##### built by ca@wiz.smi.sendmail.com on Sat May 14 21:31:13 PDT 2011
|
||||
##### in /extra/home/ca/sm-8.14.5/OpenSource/sendmail-8.14.5/cf/cf
|
||||
##### built by ca@wiz.smi.sendmail.com on Fri Dec 21 10:45:14 PST 2012
|
||||
##### in /extra/home/ca/sm-8.14.6/OpenSource/sendmail-8.14.6/cf/cf
|
||||
##### using ../ as configuration include directory
|
||||
#####
|
||||
######################################################################
|
||||
@ -41,7 +41,7 @@
|
||||
|
||||
|
||||
|
||||
##### $Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $ #####
|
||||
##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ #####
|
||||
|
||||
# level 10 config file format
|
||||
V10/Berkeley
|
||||
@ -122,7 +122,7 @@ DnMAILER-DAEMON
|
||||
CPREDIRECT
|
||||
|
||||
# Configuration version number
|
||||
DZ8.14.5
|
||||
DZ8.14.6
|
||||
|
||||
|
||||
###############
|
||||
@ -934,6 +934,8 @@ R$* < @ $+ .REDIRECT. > < $- > $#error $@ 5.1.1 $: "551 User has moved; please t
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
######################################################################
|
||||
### CanonAddr -- Convert an address into a standard form for
|
||||
### relay checking. Route address syntax is
|
||||
|
@ -16,8 +16,8 @@
|
||||
#####
|
||||
##### SENDMAIL CONFIGURATION FILE
|
||||
#####
|
||||
##### built by ca@wiz.smi.sendmail.com on Sat May 14 21:31:13 PDT 2011
|
||||
##### in /extra/home/ca/sm-8.14.5/OpenSource/sendmail-8.14.5/cf/cf
|
||||
##### built by ca@wiz.smi.sendmail.com on Fri Dec 21 10:45:15 PST 2012
|
||||
##### in /extra/home/ca/sm-8.14.6/OpenSource/sendmail-8.14.6/cf/cf
|
||||
##### using ../ as configuration include directory
|
||||
#####
|
||||
######################################################################
|
||||
@ -42,7 +42,7 @@
|
||||
|
||||
|
||||
|
||||
##### $Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $ #####
|
||||
##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ #####
|
||||
|
||||
# level 10 config file format
|
||||
V10/Berkeley
|
||||
@ -123,7 +123,7 @@ DnMAILER-DAEMON
|
||||
CPREDIRECT
|
||||
|
||||
# Configuration version number
|
||||
DZ8.14.5
|
||||
DZ8.14.6
|
||||
|
||||
|
||||
###############
|
||||
@ -935,6 +935,8 @@ R$* < @ $+ .REDIRECT. > < $- > $#error $@ 5.1.1 $: "551 User has moved; please t
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
######################################################################
|
||||
### CanonAddr -- Convert an address into a standard form for
|
||||
### relay checking. Route address syntax is
|
||||
|
@ -16,8 +16,8 @@
|
||||
#####
|
||||
##### SENDMAIL CONFIGURATION FILE
|
||||
#####
|
||||
##### built by ca@wiz.smi.sendmail.com on Sat May 14 21:31:13 PDT 2011
|
||||
##### in /extra/home/ca/sm-8.14.5/OpenSource/sendmail-8.14.5/cf/cf
|
||||
##### built by ca@wiz.smi.sendmail.com on Fri Dec 21 10:45:14 PST 2012
|
||||
##### in /extra/home/ca/sm-8.14.6/OpenSource/sendmail-8.14.6/cf/cf
|
||||
##### using ../ as configuration include directory
|
||||
#####
|
||||
######################################################################
|
||||
@ -42,7 +42,7 @@
|
||||
|
||||
|
||||
|
||||
##### $Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $ #####
|
||||
##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ #####
|
||||
|
||||
# level 10 config file format
|
||||
V10/Berkeley
|
||||
@ -123,7 +123,7 @@ DnMAILER-DAEMON
|
||||
CPREDIRECT
|
||||
|
||||
# Configuration version number
|
||||
DZ8.14.5
|
||||
DZ8.14.6
|
||||
|
||||
|
||||
###############
|
||||
@ -935,6 +935,8 @@ R$* < @ $+ .REDIRECT. > < $- > $#error $@ 5.1.1 $: "551 User has moved; please t
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
######################################################################
|
||||
### CanonAddr -- Convert an address into a standard form for
|
||||
### relay checking. Route address syntax is
|
||||
|
@ -16,8 +16,8 @@
|
||||
#####
|
||||
##### SENDMAIL CONFIGURATION FILE
|
||||
#####
|
||||
##### built by ca@wiz.smi.sendmail.com on Sat May 14 21:31:13 PDT 2011
|
||||
##### in /extra/home/ca/sm-8.14.5/OpenSource/sendmail-8.14.5/cf/cf
|
||||
##### built by ca@wiz.smi.sendmail.com on Fri Dec 21 10:45:15 PST 2012
|
||||
##### in /extra/home/ca/sm-8.14.6/OpenSource/sendmail-8.14.6/cf/cf
|
||||
##### using ../ as configuration include directory
|
||||
#####
|
||||
######################################################################
|
||||
@ -46,7 +46,7 @@
|
||||
|
||||
|
||||
|
||||
##### $Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $ #####
|
||||
##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ #####
|
||||
|
||||
# level 10 config file format
|
||||
V10/Berkeley
|
||||
@ -127,7 +127,7 @@ DnMAILER-DAEMON
|
||||
CPREDIRECT
|
||||
|
||||
# Configuration version number
|
||||
DZ8.14.5
|
||||
DZ8.14.6
|
||||
|
||||
|
||||
###############
|
||||
@ -939,6 +939,8 @@ R$* < @ $+ .REDIRECT. > < $- > $#error $@ 5.1.1 $: "551 User has moved; please t
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
######################################################################
|
||||
### CanonAddr -- Convert an address into a standard form for
|
||||
### relay checking. Route address syntax is
|
||||
|
@ -16,8 +16,8 @@
|
||||
#####
|
||||
##### SENDMAIL CONFIGURATION FILE
|
||||
#####
|
||||
##### built by ca@wiz.smi.sendmail.com on Sat May 14 21:31:13 PDT 2011
|
||||
##### in /extra/home/ca/sm-8.14.5/OpenSource/sendmail-8.14.5/cf/cf
|
||||
##### built by ca@wiz.smi.sendmail.com on Fri Dec 21 10:45:15 PST 2012
|
||||
##### in /extra/home/ca/sm-8.14.6/OpenSource/sendmail-8.14.6/cf/cf
|
||||
##### using ../ as configuration include directory
|
||||
#####
|
||||
######################################################################
|
||||
@ -42,7 +42,7 @@
|
||||
|
||||
|
||||
|
||||
##### $Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $ #####
|
||||
##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ #####
|
||||
|
||||
# level 10 config file format
|
||||
V10/Berkeley
|
||||
@ -123,7 +123,7 @@ DnMAILER-DAEMON
|
||||
CPREDIRECT
|
||||
|
||||
# Configuration version number
|
||||
DZ8.14.5
|
||||
DZ8.14.6
|
||||
|
||||
|
||||
###############
|
||||
@ -935,6 +935,8 @@ R$* < @ $+ .REDIRECT. > < $- > $#error $@ 5.1.1 $: "551 User has moved; please t
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
######################################################################
|
||||
### CanonAddr -- Convert an address into a standard form for
|
||||
### relay checking. Route address syntax is
|
||||
|
@ -16,8 +16,8 @@
|
||||
#####
|
||||
##### SENDMAIL CONFIGURATION FILE
|
||||
#####
|
||||
##### built by ca@wiz.smi.sendmail.com on Sat May 14 21:31:13 PDT 2011
|
||||
##### in /extra/home/ca/sm-8.14.5/OpenSource/sendmail-8.14.5/cf/cf
|
||||
##### built by ca@wiz.smi.sendmail.com on Fri Dec 21 10:45:15 PST 2012
|
||||
##### in /extra/home/ca/sm-8.14.6/OpenSource/sendmail-8.14.6/cf/cf
|
||||
##### using ../ as configuration include directory
|
||||
#####
|
||||
######################################################################
|
||||
@ -41,7 +41,7 @@
|
||||
|
||||
|
||||
|
||||
##### $Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $ #####
|
||||
##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ #####
|
||||
|
||||
# level 10 config file format
|
||||
V10/Berkeley
|
||||
@ -122,7 +122,7 @@ DnMAILER-DAEMON
|
||||
CPREDIRECT
|
||||
|
||||
# Configuration version number
|
||||
DZ8.14.5
|
||||
DZ8.14.6
|
||||
|
||||
|
||||
###############
|
||||
@ -934,6 +934,8 @@ R$* < @ $+ .REDIRECT. > < $- > $#error $@ 5.1.1 $: "551 User has moved; please t
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
######################################################################
|
||||
### CanonAddr -- Convert an address into a standard form for
|
||||
### relay checking. Route address syntax is
|
||||
|
@ -16,8 +16,8 @@
|
||||
#####
|
||||
##### SENDMAIL CONFIGURATION FILE
|
||||
#####
|
||||
##### built by ca@wiz.smi.sendmail.com on Sat May 14 21:31:13 PDT 2011
|
||||
##### in /extra/home/ca/sm-8.14.5/OpenSource/sendmail-8.14.5/cf/cf
|
||||
##### built by ca@wiz.smi.sendmail.com on Fri Dec 21 10:45:15 PST 2012
|
||||
##### in /extra/home/ca/sm-8.14.6/OpenSource/sendmail-8.14.6/cf/cf
|
||||
##### using ../ as configuration include directory
|
||||
#####
|
||||
######################################################################
|
||||
@ -42,7 +42,7 @@
|
||||
|
||||
|
||||
|
||||
##### $Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $ #####
|
||||
##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ #####
|
||||
|
||||
# level 10 config file format
|
||||
V10/Berkeley
|
||||
@ -123,7 +123,7 @@ DnMAILER-DAEMON
|
||||
CPREDIRECT
|
||||
|
||||
# Configuration version number
|
||||
DZ8.14.5
|
||||
DZ8.14.6
|
||||
|
||||
|
||||
###############
|
||||
@ -935,6 +935,8 @@ R$* < @ $+ .REDIRECT. > < $- > $#error $@ 5.1.1 $: "551 User has moved; please t
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
######################################################################
|
||||
### CanonAddr -- Convert an address into a standard form for
|
||||
### relay checking. Route address syntax is
|
||||
|
@ -16,8 +16,8 @@
|
||||
#####
|
||||
##### SENDMAIL CONFIGURATION FILE
|
||||
#####
|
||||
##### built by ca@wiz.smi.sendmail.com on Sat May 14 21:31:13 PDT 2011
|
||||
##### in /extra/home/ca/sm-8.14.5/OpenSource/sendmail-8.14.5/cf/cf
|
||||
##### built by ca@wiz.smi.sendmail.com on Fri Dec 21 10:45:15 PST 2012
|
||||
##### in /extra/home/ca/sm-8.14.6/OpenSource/sendmail-8.14.6/cf/cf
|
||||
##### using ../ as configuration include directory
|
||||
#####
|
||||
######################################################################
|
||||
@ -41,7 +41,7 @@
|
||||
|
||||
|
||||
|
||||
##### $Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $ #####
|
||||
##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ #####
|
||||
|
||||
# level 10 config file format
|
||||
V10/Berkeley
|
||||
@ -122,7 +122,7 @@ DnMAILER-DAEMON
|
||||
CPREDIRECT
|
||||
|
||||
# Configuration version number
|
||||
DZ8.14.5
|
||||
DZ8.14.6
|
||||
|
||||
|
||||
###############
|
||||
@ -934,6 +934,8 @@ R$* < @ $+ .REDIRECT. > < $- > $#error $@ 5.1.1 $: "551 User has moved; please t
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
######################################################################
|
||||
### CanonAddr -- Convert an address into a standard form for
|
||||
### relay checking. Route address syntax is
|
||||
|
@ -16,8 +16,8 @@
|
||||
#####
|
||||
##### SENDMAIL CONFIGURATION FILE
|
||||
#####
|
||||
##### built by ca@wiz.smi.sendmail.com on Sat May 14 21:31:14 PDT 2011
|
||||
##### in /extra/home/ca/sm-8.14.5/OpenSource/sendmail-8.14.5/cf/cf
|
||||
##### built by ca@wiz.smi.sendmail.com on Fri Dec 21 10:45:15 PST 2012
|
||||
##### in /extra/home/ca/sm-8.14.6/OpenSource/sendmail-8.14.6/cf/cf
|
||||
##### using ../ as configuration include directory
|
||||
#####
|
||||
######################################################################
|
||||
@ -42,7 +42,7 @@
|
||||
|
||||
|
||||
|
||||
##### $Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $ #####
|
||||
##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ #####
|
||||
|
||||
# level 10 config file format
|
||||
V10/Berkeley
|
||||
@ -123,7 +123,7 @@ DnMAILER-DAEMON
|
||||
CPREDIRECT
|
||||
|
||||
# Configuration version number
|
||||
DZ8.14.5
|
||||
DZ8.14.6
|
||||
|
||||
|
||||
###############
|
||||
@ -935,6 +935,8 @@ R$* < @ $+ .REDIRECT. > < $- > $#error $@ 5.1.1 $: "551 User has moved; please t
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
######################################################################
|
||||
### CanonAddr -- Convert an address into a standard form for
|
||||
### relay checking. Route address syntax is
|
||||
|
@ -16,8 +16,8 @@
|
||||
#####
|
||||
##### SENDMAIL CONFIGURATION FILE
|
||||
#####
|
||||
##### built by ca@wiz.smi.sendmail.com on Sat May 14 21:31:14 PDT 2011
|
||||
##### in /extra/home/ca/sm-8.14.5/OpenSource/sendmail-8.14.5/cf/cf
|
||||
##### built by ca@wiz.smi.sendmail.com on Fri Dec 21 10:45:15 PST 2012
|
||||
##### in /extra/home/ca/sm-8.14.6/OpenSource/sendmail-8.14.6/cf/cf
|
||||
##### using ../ as configuration include directory
|
||||
#####
|
||||
######################################################################
|
||||
@ -42,7 +42,7 @@
|
||||
|
||||
|
||||
|
||||
##### $Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $ #####
|
||||
##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ #####
|
||||
|
||||
# level 10 config file format
|
||||
V10/Berkeley
|
||||
@ -123,7 +123,7 @@ DnMAILER-DAEMON
|
||||
CPREDIRECT
|
||||
|
||||
# Configuration version number
|
||||
DZ8.14.5
|
||||
DZ8.14.6
|
||||
|
||||
|
||||
###############
|
||||
@ -935,6 +935,8 @@ R$* < @ $+ .REDIRECT. > < $- > $#error $@ 5.1.1 $: "551 User has moved; please t
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
######################################################################
|
||||
### CanonAddr -- Convert an address into a standard form for
|
||||
### relay checking. Route address syntax is
|
||||
|
@ -16,8 +16,8 @@
|
||||
#####
|
||||
##### SENDMAIL CONFIGURATION FILE
|
||||
#####
|
||||
##### built by ca@wiz.smi.sendmail.com on Sat May 14 21:31:14 PDT 2011
|
||||
##### in /extra/home/ca/sm-8.14.5/OpenSource/sendmail-8.14.5/cf/cf
|
||||
##### built by ca@wiz.smi.sendmail.com on Fri Dec 21 10:45:15 PST 2012
|
||||
##### in /extra/home/ca/sm-8.14.6/OpenSource/sendmail-8.14.6/cf/cf
|
||||
##### using ../ as configuration include directory
|
||||
#####
|
||||
######################################################################
|
||||
@ -35,7 +35,7 @@
|
||||
##### $Id: no_default_msa.m4,v 8.2 2001/02/14 05:03:22 gshapiro Exp $ #####
|
||||
|
||||
|
||||
##### $Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $ #####
|
||||
##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ #####
|
||||
|
||||
# level 10 config file format
|
||||
V10/Berkeley
|
||||
@ -114,7 +114,7 @@ D{MTAHost}[127.0.0.1]
|
||||
|
||||
|
||||
# Configuration version number
|
||||
DZ8.14.5/Submit
|
||||
DZ8.14.6/Submit
|
||||
|
||||
|
||||
###############
|
||||
@ -926,6 +926,8 @@ SParseLocal=98
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
######################################################################
|
||||
### CanonAddr -- Convert an address into a standard form for
|
||||
### relay checking. Route address syntax is
|
||||
|
@ -10,7 +10,7 @@ divert(-1)
|
||||
#
|
||||
|
||||
divert(0)
|
||||
VERSIONID(`$Id: ldap_routing.m4,v 8.18 2010/01/05 00:57:27 ca Exp $')
|
||||
VERSIONID(`$Id: ldap_routing.m4,v 8.20 2012/01/18 22:27:06 ca Exp $')
|
||||
divert(-1)
|
||||
|
||||
# Check first two arguments. If they aren't set, may need to warn in proto.m4
|
||||
|
@ -13,7 +13,7 @@ divert(-1)
|
||||
#
|
||||
divert(0)
|
||||
|
||||
VERSIONID(`$Id: proto.m4,v 8.744 2010/11/23 20:29:47 guenther Exp $')
|
||||
VERSIONID(`$Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $')
|
||||
|
||||
# level CF_LEVEL config file format
|
||||
V`'CF_LEVEL`'ifdef(`NO_VENDOR',`', `/ifdef(`VENDOR_NAME', `VENDOR_NAME', `Berkeley')')
|
||||
@ -1532,8 +1532,9 @@ R<?> <e s> <$+> $#error $@ nouser $: "550 User unknown"')
|
||||
R<?> <$*> <$+> $@ $2',
|
||||
`dnl
|
||||
# return the original address
|
||||
R<> <> <$+> <@ $+> <$*> $@ $1')',
|
||||
`dnl')
|
||||
R<> <> <$+> <@ $+> <$*> $@ $1')
|
||||
')
|
||||
|
||||
|
||||
ifelse(substr(confDELIVERY_MODE,0,1), `d', `errprint(`WARNING: Antispam rules not available in deferred delivery mode.
|
||||
')')
|
||||
|
@ -1,6 +1,6 @@
|
||||
divert(-1)
|
||||
#
|
||||
# Copyright (c) 1998-2011 Sendmail, Inc. and its suppliers.
|
||||
# Copyright (c) 1998-2012 Sendmail, Inc. and its suppliers.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 1983 Eric P. Allman. All rights reserved.
|
||||
# Copyright (c) 1988, 1993
|
||||
@ -11,8 +11,8 @@ divert(-1)
|
||||
# the sendmail distribution.
|
||||
#
|
||||
#
|
||||
VERSIONID(`$Id: version.m4,v 8.214 2011/04/26 23:02:36 ca Exp $')
|
||||
VERSIONID(`$Id: version.m4,v 8.222 2012/12/19 05:11:43 ca Exp $')
|
||||
#
|
||||
divert(0)
|
||||
# Configuration version number
|
||||
DZ8.14.5`'ifdef(`confCF_VERSION', `/confCF_VERSION')
|
||||
DZ8.14.6`'ifdef(`confCF_VERSION', `/confCF_VERSION')
|
||||
|
@ -10,7 +10,7 @@ divert(-1)
|
||||
#
|
||||
# Definitions for Makefile construction for sendmail
|
||||
#
|
||||
# $Id: defines.m4,v 8.47 2006/10/06 05:44:44 ca Exp $
|
||||
# $Id: defines.m4,v 8.48 2012/01/21 00:07:08 ashish Exp $
|
||||
#
|
||||
# temporary hack: if confREQUIRE_LIBSM is set then also set confREQUIRE_SM_OS_H
|
||||
ifdef(`confREQUIRE_LIBSM',`
|
||||
|
@ -10,7 +10,7 @@ divert(-1)
|
||||
#
|
||||
# Definitions for Makefile construction for sendmail
|
||||
#
|
||||
# $Id: links.m4,v 8.5 1999/07/25 03:53:08 gshapiro Exp $
|
||||
# $Id: links.m4,v 8.6 2012/01/21 00:07:08 ashish Exp $
|
||||
#
|
||||
divert(0)dnl
|
||||
define(`bldMAKE_SOURCE_LINK',
|
||||
|
@ -10,7 +10,7 @@ divert(-1)
|
||||
#
|
||||
# Definitions for Makefile construction for sendmail
|
||||
#
|
||||
# $Id: manpage.m4,v 8.15 2006/09/07 22:13:07 ca Exp $
|
||||
# $Id: manpage.m4,v 8.16 2012/01/21 00:07:08 ashish Exp $
|
||||
#
|
||||
divert(0)dnl
|
||||
|
||||
|
@ -10,7 +10,7 @@ divert(-1)
|
||||
#
|
||||
# Definitions for Makefile construction for sendmail
|
||||
#
|
||||
# $Id: list.m4,v 8.3 1999/07/15 22:46:05 rand Exp $
|
||||
# $Id: list.m4,v 8.4 2012/01/21 00:07:07 ashish Exp $
|
||||
#
|
||||
divert(0)dnl
|
||||
define(`bldLIST_PUSH_ITEM',
|
||||
|
@ -10,7 +10,7 @@ divert(-1)
|
||||
#
|
||||
# Definitions for Makefile construction for sendmail
|
||||
#
|
||||
# $Id: switch.m4,v 8.17 2008/08/06 22:41:33 guenther Exp $
|
||||
# $Id: switch.m4,v 8.18 2012/01/21 00:07:07 ashish Exp $
|
||||
#
|
||||
divert(0)dnl
|
||||
include(confBUILDTOOLSDIR`/M4/string.m4')dnl
|
||||
|
25
devtools/OS/Darwin.11.x
Normal file
25
devtools/OS/Darwin.11.x
Normal file
@ -0,0 +1,25 @@
|
||||
# $Id: Darwin.11.x,v 1.1 2011/11/23 01:08:48 gshapiro Exp $
|
||||
|
||||
dnl DO NOT EDIT THIS FILE.
|
||||
dnl Place personal settings in devtools/Site/site.config.m4
|
||||
|
||||
#
|
||||
define(`confCC', `cc -pipe ${Extra_CC_Flags}')
|
||||
define(`confMAPDEF', `-DNEWDB -DNIS -DMAP_REGEX')
|
||||
define(`confENVDEF', `-DDARWIN=110000 -DBIND_8_COMPAT -DNETINET6')
|
||||
define(`confLDOPTS', `${Extra_LD_Flags}')
|
||||
define(`confMTLDOPTS', `-lpthread')
|
||||
define(`confMILTER_STATIC', `')
|
||||
define(`confDEPEND_TYPE', `CC-M')
|
||||
define(`confOPTIMIZE', `-O3')
|
||||
define(`confRANLIBOPTS', `-c')
|
||||
define(`confHFDIR', `/usr/share/sendmail')
|
||||
define(`confINSTALL_RAWMAN')
|
||||
define(`confMANOWN', `root')
|
||||
define(`confMANGRP', `wheel')
|
||||
define(`confUBINOWN', `root')
|
||||
define(`confUBINGRP', `wheel')
|
||||
define(`confSBINOWN', `root')
|
||||
define(`confSBINGRP', `wheel')
|
||||
define(`confLDOPTS_SO', `-dynamiclib -flat_namespace -undefined suppress -single_module')
|
||||
define(`confSHAREDLIB_EXT', `.dylib')
|
@ -1,4 +1,4 @@
|
||||
# $Id: HP-UX.11.x,v 8.26 2003/11/21 01:05:09 lijian Exp $
|
||||
# $Id: HP-UX.11.x,v 8.27 2012/01/21 00:07:09 ashish Exp $
|
||||
|
||||
dnl DO NOT EDIT THIS FILE.
|
||||
dnl Place personal settings in devtools/Site/site.config.m4
|
||||
|
@ -1,4 +1,4 @@
|
||||
# $Id: IRIX.6.5,v 8.23 2002/03/21 23:59:25 gshapiro Exp $
|
||||
# $Id: IRIX.6.5,v 8.24 2012/01/21 00:07:09 ashish Exp $
|
||||
|
||||
dnl DO NOT EDIT THIS FILE.
|
||||
dnl Place personal settings in devtools/Site/site.config.m4
|
||||
|
@ -1,4 +1,4 @@
|
||||
# $Id: IRIX.6.x,v 8.30 2002/03/21 23:59:25 gshapiro Exp $
|
||||
# $Id: IRIX.6.x,v 8.31 2012/01/21 00:07:09 ashish Exp $
|
||||
|
||||
dnl DO NOT EDIT THIS FILE.
|
||||
dnl Place personal settings in devtools/Site/site.config.m4
|
||||
|
@ -1,4 +1,4 @@
|
||||
# $Id: IRIX64.6.0,v 8.21 2002/03/21 23:59:25 gshapiro Exp $
|
||||
# $Id: IRIX64.6.0,v 8.22 2012/01/21 00:07:09 ashish Exp $
|
||||
|
||||
dnl DO NOT EDIT THIS FILE.
|
||||
dnl Place personal settings in devtools/Site/site.config.m4
|
||||
|
@ -1,4 +1,4 @@
|
||||
# $Id: IRIX64.6.1,v 8.21 2002/03/21 23:59:25 gshapiro Exp $
|
||||
# $Id: IRIX64.6.1,v 8.22 2012/01/21 00:07:09 ashish Exp $
|
||||
|
||||
dnl DO NOT EDIT THIS FILE.
|
||||
dnl Place personal settings in devtools/Site/site.config.m4
|
||||
|
@ -1,4 +1,4 @@
|
||||
# $Id: IRIX64.6.5,v 8.21 2002/03/21 23:59:25 gshapiro Exp $
|
||||
# $Id: IRIX64.6.5,v 8.22 2012/01/21 00:07:09 ashish Exp $
|
||||
|
||||
dnl DO NOT EDIT THIS FILE.
|
||||
dnl Place personal settings in devtools/Site/site.config.m4
|
||||
|
@ -1,4 +1,4 @@
|
||||
# $Id: IRIX64.6.x,v 8.30 2002/03/21 23:59:25 gshapiro Exp $
|
||||
# $Id: IRIX64.6.x,v 8.31 2012/01/21 00:07:09 ashish Exp $
|
||||
|
||||
dnl DO NOT EDIT THIS FILE.
|
||||
dnl Place personal settings in devtools/Site/site.config.m4
|
||||
|
26
devtools/OS/SunOS.5.12
Normal file
26
devtools/OS/SunOS.5.12
Normal file
@ -0,0 +1,26 @@
|
||||
# $Id: SunOS.5.12,v 1.1 2012/12/12 02:34:40 ca Exp $
|
||||
|
||||
dnl DO NOT EDIT THIS FILE.
|
||||
dnl Place personal settings in devtools/Site/site.config.m4
|
||||
|
||||
define(`confCC', `gcc')
|
||||
define(`confLDOPTS_SO', `-G')
|
||||
define(`confBEFORE', `sysexits.h')
|
||||
define(`confMAPDEF', `-DNDBM -DNIS -DMAP_REGEX')
|
||||
define(`confENVDEF', `-DSOLARIS=21200 -DNETINET6')
|
||||
define(`confSM_OS_HEADER', `sm_os_sunos')
|
||||
define(`confLIBS', `-lsocket -lnsl')
|
||||
define(`confMTCCOPTS', `-D_REENTRANT')
|
||||
define(`confMTLDOPTS', `-lpthread')
|
||||
define(`confMBINDIR', `/usr/lib')
|
||||
define(`confEBINDIR', `/usr/lib')
|
||||
define(`confSBINGRP', `sys')
|
||||
define(`confINSTALL', `${BUILDBIN}/install.sh')
|
||||
define(`confDEPEND_TYPE', `CC-M')
|
||||
PUSHDIVERT(3)
|
||||
sysexits.h:
|
||||
if [ -r /usr/include/sysexits.h ]; \
|
||||
then \
|
||||
ln -s /usr/include/sysexits.h; \
|
||||
fi
|
||||
POPDIVERT
|
@ -1,4 +1,4 @@
|
||||
# $Id: UNICOS-mp,v 8.1 2003/04/21 17:03:52 ca Exp $
|
||||
# $Id: UNICOS-mp,v 8.2 2012/01/21 00:07:09 ashish Exp $
|
||||
|
||||
dnl DO NOT EDIT THIS FILE.
|
||||
dnl Place personal settings in devtools/Site/site.config.m4
|
||||
|
@ -395,4 +395,4 @@ files that make up the library.
|
||||
bldINSTALLABLE - This should be set if the library should be installed in
|
||||
confLIBDIR.
|
||||
|
||||
$Revision: 8.103 $, Last updated $Date: 2009/01/22 02:15:07 $
|
||||
$Revision: 8.104 $, Last updated $Date: 2012/01/21 00:07:06 $
|
||||
|
12
doc/op/op.me
12
doc/op/op.me
@ -9,7 +9,7 @@
|
||||
.\" the sendmail distribution.
|
||||
.\"
|
||||
.\"
|
||||
.\" $Id: op.me,v 8.747 2010/05/08 04:18:27 ca Exp $
|
||||
.\" $Id: op.me,v 8.749 2012/03/02 22:37:11 ca Exp $
|
||||
.\"
|
||||
.\" eqn op.me | pic | troff -me
|
||||
.\"
|
||||
@ -90,7 +90,7 @@ Sendmail, Inc.
|
||||
.de Ve
|
||||
Version \\$2
|
||||
..
|
||||
.Ve $Revision: 8.747 $
|
||||
.Ve $Revision: 8.749 $
|
||||
.rm Ve
|
||||
.sp
|
||||
For Sendmail Version 8.14
|
||||
@ -5999,7 +5999,7 @@ mailer.
|
||||
.ip @
|
||||
Look up addresses in the user database.
|
||||
.ip %
|
||||
Do not attempt delivery on initial recipient of a message
|
||||
Do not attempt delivery on initial receipt of a message
|
||||
or on queue runs
|
||||
unless the queued message is selected
|
||||
using one of the -qI/-qR/-qS queue run modifiers
|
||||
@ -7540,6 +7540,10 @@ This is intended to allow you to get responsiveness
|
||||
by processing the queue fairly frequently
|
||||
without thrashing your system by trying jobs too often.
|
||||
The default units are minutes.
|
||||
Note:
|
||||
This option is ignored for queue runs that select a subset
|
||||
of the queue, i.e.,
|
||||
.q \-q[!][I|R|S|Q][string]
|
||||
.ip MustQuoteChars=\fIs\fP
|
||||
[no short name]
|
||||
Sets the list of characters that must be quoted if used in a full name
|
||||
@ -11467,7 +11471,7 @@ replace it with a blank sheet for double-sided output.
|
||||
.\".sz 10
|
||||
.\"Eric Allman
|
||||
.\".sp
|
||||
.\"Version $Revision: 8.747 $
|
||||
.\"Version $Revision: 8.749 $
|
||||
.\".ce 0
|
||||
.bp 3
|
||||
.ce
|
||||
|
781
doc/op/op.ps
781
doc/op/op.ps
File diff suppressed because it is too large
Load Diff
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1999-2004, 2006, 2008 Sendmail, Inc. and its suppliers.
|
||||
* Copyright (c) 1999-2004, 2006, 2008, 2012 Sendmail, Inc. and its suppliers.
|
||||
* All rights reserved.
|
||||
*
|
||||
* By using this file, you agree to the terms and conditions set
|
||||
@ -7,7 +7,7 @@
|
||||
* the sendmail distribution.
|
||||
*
|
||||
*
|
||||
* $Id: mfapi.h,v 8.80 2009/11/06 00:57:08 ca Exp $
|
||||
* $Id: mfapi.h,v 8.82 2012/11/16 20:25:04 ca Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -96,6 +96,8 @@ typedef int sfsistat;
|
||||
# ifndef bool
|
||||
# ifndef __bool_true_false_are_defined
|
||||
typedef int bool;
|
||||
# define false 0
|
||||
# define true 1
|
||||
# define __bool_true_false_are_defined 1
|
||||
# endif /* ! __bool_true_false_are_defined */
|
||||
# endif /* bool */
|
||||
@ -204,6 +206,7 @@ LIBMILTER_API int smfi_version __P((unsigned int *, unsigned int *, unsigned int
|
||||
** (hence the list is not sorted by the SMT protocol steps).
|
||||
*/
|
||||
|
||||
#define SMFIM_NOMACROS (-1) /* Do NOT use, internal only */
|
||||
#define SMFIM_FIRST 0 /* Do NOT use, internal marker only */
|
||||
#define SMFIM_CONNECT 0 /* connect */
|
||||
#define SMFIM_HELO 1 /* HELO/EHLO */
|
||||
|
@ -9,7 +9,7 @@
|
||||
* forth in the LICENSE file which can be found at the top level of
|
||||
* the sendmail distribution.
|
||||
*
|
||||
* $Id: clock.h,v 1.12 2004/08/03 19:57:21 ca Exp $
|
||||
* $Id: clock.h,v 1.13 2011/11/03 03:13:24 ca Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -59,7 +59,7 @@ extern SIGFUNC_DECL sm_tick __P((int));
|
||||
/*
|
||||
** SM_SETEVENT -- set an event to happen at a specific time in seconds.
|
||||
**
|
||||
** Translates the seconds into millseconds and calls sm_seteventm()
|
||||
** Translates the seconds into milliseconds and calls sm_seteventm()
|
||||
** to get a specific event to happen in the future at a specific time.
|
||||
**
|
||||
** Parameters:
|
||||
|
@ -36,7 +36,7 @@
|
||||
#define SM_TAILQ_H_
|
||||
|
||||
/*
|
||||
* $Id: tailq.h,v 1.2 2007/06/29 23:09:57 ca Exp $
|
||||
* $Id: tailq.h,v 1.3 2012/01/21 00:12:14 ashish Exp $
|
||||
*
|
||||
* This file is a modified copy of queue.h from a BSD system:
|
||||
* we only need tail queues here.
|
||||
|
@ -1,4 +1,4 @@
|
||||
dnl $Id: Makefile.m4,v 8.85 2009/11/24 21:59:33 ca Exp $
|
||||
dnl $Id: Makefile.m4,v 8.88 2012/09/25 17:40:32 ca Exp $
|
||||
include(confBUILDTOOLSDIR`/M4/switch.m4')
|
||||
|
||||
dnl only required for compilation of EXTRAS
|
||||
|
@ -2,7 +2,7 @@
|
||||
<HEAD><TITLE>Milter API</TITLE></HEAD>
|
||||
<BODY>
|
||||
<!--
|
||||
$Id: api.html,v 1.37 2009/05/19 00:40:52 ca Exp $
|
||||
$Id: api.html,v 1.38 2012/03/29 03:18:37 ca Exp $
|
||||
-->
|
||||
<H1>Milter API</H1>
|
||||
|
||||
@ -214,7 +214,6 @@ other callbacks are message-oriented.
|
||||
<TD>SMFIS_REJECT</TD>
|
||||
<TD>For a connection-oriented routine, reject this connection; call <A HREF="xxfi_close.html">xxfi_close</A>.<BR>
|
||||
For a message-oriented routine (except
|
||||
<A HREF="xxfi_eom.html">xxfi_eom</A> or
|
||||
<A HREF="xxfi_abort.html">xxfi_abort</A>), reject this message.<BR>
|
||||
For a recipient-oriented routine, reject the current recipient (but continue processing the current message).
|
||||
</TD>
|
||||
|
@ -2,7 +2,7 @@
|
||||
<HEAD><TITLE>smfi_setsymlist</TITLE></HEAD>
|
||||
<BODY>
|
||||
<!--
|
||||
$Id: smfi_setsymlist.html,v 1.5 2006/12/21 18:30:35 ca Exp $
|
||||
$Id: smfi_setsymlist.html,v 1.6 2012/05/11 17:34:23 ca Exp $
|
||||
-->
|
||||
<H1>smfi_setsymlist</H1>
|
||||
|
||||
@ -86,8 +86,10 @@ Otherwise MI_SUCCESS is returned.
|
||||
<!----------- Notes ---------->
|
||||
<TR align="left" valign=top>
|
||||
<TH>NOTES</TH>
|
||||
<TD>There is an internal limit on the number of macros that can be
|
||||
set (currently 5),
|
||||
<TD>There is an internal limit on the number of macros
|
||||
that can be set
|
||||
<!-- XREF: MAXFILTERMACROS -->
|
||||
(currently 50),
|
||||
however, this limit is not enforced by libmilter, only by the MTA,
|
||||
but a possible violation of this restriction is not communicated back to
|
||||
the milter.</TD>
|
||||
@ -97,7 +99,7 @@ the milter.</TD>
|
||||
|
||||
<HR size="1">
|
||||
<FONT size="-1">
|
||||
Copyright (c) 2006 Sendmail, Inc. and its suppliers.
|
||||
Copyright (c) 2006, 2012 Sendmail, Inc. and its suppliers.
|
||||
All rights reserved.
|
||||
<BR>
|
||||
By using this file, you agree to the terms and conditions set
|
||||
|
@ -2,7 +2,7 @@
|
||||
<HEAD><TITLE>smfi_settimeout</TITLE></HEAD>
|
||||
<BODY>
|
||||
<!--
|
||||
$Id: smfi_settimeout.html,v 1.14 2006/12/21 18:30:35 ca Exp $
|
||||
$Id: smfi_settimeout.html,v 1.15 2011/10/03 16:21:33 ca Exp $
|
||||
-->
|
||||
<H1>smfi_settimeout</H1>
|
||||
|
||||
@ -52,11 +52,24 @@ If smfi_settimeout is not called, a default timeout of 7210 seconds is used.
|
||||
<TD>smfi_settimeout always returns MI_SUCCESS.</TD>
|
||||
</TR>
|
||||
|
||||
<!----------- Notes ---------->
|
||||
<TR>
|
||||
<TH valign="top" align=left>NOTES</TH>
|
||||
<TD>
|
||||
Decreasing the timeout is strongly discouraged
|
||||
and may break the communication with the MTA.
|
||||
Do <EM>not</EM> decrease this value without making sure that
|
||||
the MTA also uses lower timeouts for communication
|
||||
(with the milter and with the SMTP client).
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
|
||||
</TABLE>
|
||||
|
||||
<HR size="1">
|
||||
<FONT size="-1">
|
||||
Copyright (c) 2000, 2002-2003, 2006 Sendmail, Inc. and its suppliers.
|
||||
Copyright (c) 2000, 2002-2003, 2006, 2011 Sendmail, Inc. and its suppliers.
|
||||
All rights reserved.
|
||||
<BR>
|
||||
By using this file, you agree to the terms and conditions set
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2003-2004, 2007, 2009-2011 Sendmail, Inc. and its suppliers.
|
||||
* Copyright (c) 2003-2004, 2007, 2009-2012 Sendmail, Inc. and its suppliers.
|
||||
* All rights reserved.
|
||||
*
|
||||
* By using this file, you agree to the terms and conditions set
|
||||
@ -11,7 +11,7 @@
|
||||
*/
|
||||
|
||||
#include <sm/gen.h>
|
||||
SM_RCSID("@(#)$Id: worker.c,v 8.19 2011/02/14 23:33:48 ca Exp $")
|
||||
SM_RCSID("@(#)$Id: worker.c,v 8.24 2012/03/13 15:37:46 ca Exp $")
|
||||
|
||||
#include "libmilter.h"
|
||||
|
||||
@ -141,7 +141,8 @@ static int mi_list_del_ctx __P((SMFICTX_PTR));
|
||||
|
||||
#if POOL_DEBUG
|
||||
# define POOL_LEV_DPRINTF(lev, x) \
|
||||
do { \
|
||||
do \
|
||||
{ \
|
||||
if ((lev) < ctx->ctx_dbg) \
|
||||
sm_dprintf x; \
|
||||
} while (0)
|
||||
@ -377,7 +378,7 @@ mi_pool_controller(arg)
|
||||
for (;;)
|
||||
{
|
||||
SMFICTX_PTR ctx;
|
||||
int nfd, rfd, i;
|
||||
int nfd, r, i;
|
||||
time_t now;
|
||||
|
||||
POOL_LEV_DPRINTF(4, ("Let's %s again...", WAITFN));
|
||||
@ -498,19 +499,19 @@ mi_pool_controller(arg)
|
||||
TASKMGR_UNLOCK();
|
||||
|
||||
/* Everything is ready, let's wait for an event */
|
||||
rfd = poll(pfd, nfd, POLL_TIMEOUT);
|
||||
r = poll(pfd, nfd, POLL_TIMEOUT);
|
||||
|
||||
POOL_LEV_DPRINTF(4, ("%s returned: at epoch %d value %d",
|
||||
WAITFN, now, nfd));
|
||||
|
||||
/* timeout */
|
||||
if (rfd == 0)
|
||||
if (r == 0)
|
||||
continue;
|
||||
|
||||
rebuild_set = true;
|
||||
|
||||
/* error */
|
||||
if (rfd < 0)
|
||||
if (r < 0)
|
||||
{
|
||||
if (errno == EINTR)
|
||||
continue;
|
||||
@ -522,6 +523,7 @@ mi_pool_controller(arg)
|
||||
|
||||
if (pcnt >= MAX_FAILS_S)
|
||||
goto err;
|
||||
continue;
|
||||
}
|
||||
pcnt = 0;
|
||||
|
||||
@ -535,7 +537,7 @@ mi_pool_controller(arg)
|
||||
WAITFN, i, nfd,
|
||||
WAIT_FD(i)));
|
||||
|
||||
/* has a worker signaled an end of task ? */
|
||||
/* has a worker signaled an end of task? */
|
||||
if (WAIT_FD(i) == RD_PIPE)
|
||||
{
|
||||
char evts[256];
|
||||
@ -563,7 +565,12 @@ mi_pool_controller(arg)
|
||||
continue;
|
||||
}
|
||||
|
||||
/* no ! sendmail wants to send a command */
|
||||
/*
|
||||
** Not the pipe for workers waking us,
|
||||
** so must be something on an MTA connection.
|
||||
*/
|
||||
|
||||
TASKMGR_LOCK();
|
||||
SM_TAILQ_FOREACH(ctx, &WRK_CTX_HEAD, ctx_link)
|
||||
{
|
||||
if (ctx->ctx_wstate != WKST_WAITING)
|
||||
@ -575,7 +582,6 @@ mi_pool_controller(arg)
|
||||
|
||||
if (ctx->ctx_sd == pfd[i].fd)
|
||||
{
|
||||
TASKMGR_LOCK();
|
||||
|
||||
POOL_LEV_DPRINTF(4,
|
||||
("TASK: found %d for fd[%d]=%d",
|
||||
@ -591,10 +597,10 @@ mi_pool_controller(arg)
|
||||
ctx->ctx_wstate = WKST_RUNNING;
|
||||
LAUNCH_WORKER(ctx);
|
||||
}
|
||||
TASKMGR_UNLOCK();
|
||||
break;
|
||||
}
|
||||
}
|
||||
TASKMGR_UNLOCK();
|
||||
|
||||
POOL_LEV_DPRINTF(4,
|
||||
("TASK %s FOUND - Checking PIPE for fd[%d]",
|
||||
@ -607,6 +613,14 @@ mi_pool_controller(arg)
|
||||
free(pfd);
|
||||
|
||||
Tskmgr.tm_signature = 0;
|
||||
#if 0
|
||||
/*
|
||||
** Do not clean up ctx -- it can cause double-free()s.
|
||||
** The program is shutting down anyway, so it's not worth the trouble.
|
||||
** There is a more complex solution that prevents race conditions
|
||||
** while accessing ctx, but that's maybe for a later version.
|
||||
*/
|
||||
|
||||
for (;;)
|
||||
{
|
||||
SMFICTX_PTR ctx;
|
||||
@ -616,6 +630,7 @@ mi_pool_controller(arg)
|
||||
break;
|
||||
mi_close_session(ctx);
|
||||
}
|
||||
#endif
|
||||
|
||||
(void) smutex_destroy(&Tskmgr.tm_w_mutex);
|
||||
(void) scond_destroy(&Tskmgr.tm_w_cond);
|
||||
|
@ -1,4 +1,4 @@
|
||||
dnl $Id: Makefile.m4,v 8.126 2010/11/24 19:59:54 gshapiro Exp $
|
||||
dnl $Id: Makefile.m4,v 8.132 2012/09/11 20:02:44 ca Exp $
|
||||
include(confBUILDTOOLSDIR`/M4/switch.m4')
|
||||
|
||||
define(`confREQUIRE_LIBSM', `true')
|
||||
|
@ -1,4 +1,4 @@
|
||||
# $Id: TRACEFLAGS,v 8.48 2008/11/03 21:09:26 gshapiro Exp $
|
||||
# $Id: TRACEFLAGS,v 8.52 2012/03/03 00:10:42 ca Exp $
|
||||
0, 4 main.c main canonical name, UUCP node name, a.k.a.s
|
||||
0, 15 main.c main print configuration
|
||||
0, 44 util.c printav print address of each string
|
||||
@ -92,6 +92,7 @@
|
||||
83 collect.c timeout
|
||||
84 deliver.c timeout
|
||||
85 map.c dprintf map
|
||||
89 conf.c >=8 use sm_dprintf() instead of syslog()
|
||||
91 mci.c syslogging of MCI cache information
|
||||
93,>99 * Prevent daemon connection fork for profiling/debugging
|
||||
94,>99 srvrsmtp.c cause commands to fail (for protocol testing)
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
#include <sendmail.h>
|
||||
|
||||
SM_RCSID("@(#)$Id: collect.c,v 8.284 2008/08/06 05:26:24 ca Exp $")
|
||||
SM_RCSID("@(#)$Id: collect.c,v 8.285 2012/06/14 23:54:02 ca Exp $")
|
||||
|
||||
static void eatfrom __P((char *volatile, ENVELOPE *));
|
||||
static void collect_doheader __P((ENVELOPE *));
|
||||
@ -869,7 +869,8 @@ collect(fp, smtpmode, hdrp, e, rsetsize)
|
||||
if (LogLevel > 6)
|
||||
sm_syslog(LOG_NOTICE, e->e_id,
|
||||
"message size (%ld) exceeds maximum (%ld)",
|
||||
e->e_msgsize, MaxMessageSize);
|
||||
PRT_NONNEGL(e->e_msgsize),
|
||||
MaxMessageSize);
|
||||
}
|
||||
}
|
||||
|
||||
|
28
src/conf.c
28
src/conf.c
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998-2010 Sendmail, Inc. and its suppliers.
|
||||
* Copyright (c) 1998-2012 Sendmail, Inc. and its suppliers.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved.
|
||||
* Copyright (c) 1988, 1993
|
||||
@ -13,7 +13,7 @@
|
||||
|
||||
#include <sendmail.h>
|
||||
|
||||
SM_RCSID("@(#)$Id: conf.c,v 8.1168 2011/01/25 18:31:30 ca Exp $")
|
||||
SM_RCSID("@(#)$Id: conf.c,v 8.1176 2012/12/07 03:59:54 ca Exp $")
|
||||
|
||||
#include <sm/sendmail.h>
|
||||
#include <sendmail/pathnames.h>
|
||||
@ -4602,6 +4602,10 @@ add_hostnames(sa)
|
||||
int save_errno = errno;
|
||||
|
||||
if (LogLevel > 3 &&
|
||||
#if NETINET && defined(IN_LINKLOCAL)
|
||||
!(sa->sa.sa_family == AF_INET &&
|
||||
IN_LINKLOCAL(ntohl(sa->sin.sin_addr.s_addr))) &&
|
||||
#endif /* NETINET && defined(IN_LINKLOCAL) */
|
||||
#if NETINET6
|
||||
!(sa->sa.sa_family == AF_INET6 &&
|
||||
IN6_IS_ADDR_LINKLOCAL(&sa->sin6.sin6_addr)) &&
|
||||
@ -5374,14 +5378,30 @@ sm_syslog(level, id, fmt, va_alist)
|
||||
#if LOG
|
||||
if (*id == '\0')
|
||||
{
|
||||
if (tTd(89, 8))
|
||||
if (tTd(89, 10))
|
||||
{
|
||||
struct timeval tv;
|
||||
|
||||
gettimeofday(&tv, NULL);
|
||||
sm_dprintf("%ld.%06ld %s\n", (long) tv.tv_sec,
|
||||
(long) tv.tv_usec, newstring);
|
||||
}
|
||||
else if (tTd(89, 8))
|
||||
sm_dprintf("%s\n", newstring);
|
||||
else
|
||||
syslog(level, "%s", newstring);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (tTd(89, 8))
|
||||
if (tTd(89, 10))
|
||||
{
|
||||
struct timeval tv;
|
||||
|
||||
gettimeofday(&tv, NULL);
|
||||
sm_dprintf("%ld.%06ld %s: %s\n", (long) tv.tv_sec,
|
||||
(long) tv.tv_usec, id, newstring);
|
||||
}
|
||||
else if (tTd(89, 8))
|
||||
sm_dprintf("%s: %s\n", id, newstring);
|
||||
else
|
||||
syslog(level, "%s: %s", id, newstring);
|
||||
|
@ -14,7 +14,7 @@
|
||||
#include <sendmail.h>
|
||||
#include "map.h"
|
||||
|
||||
SM_RCSID("@(#)$Id: daemon.c,v 8.691 2011/01/25 18:31:30 ca Exp $")
|
||||
SM_RCSID("@(#)$Id: daemon.c,v 8.694 2012/03/03 00:10:42 ca Exp $")
|
||||
|
||||
#if defined(SOCK_STREAM) || defined(__GNU_LIBRARY__)
|
||||
# define USE_SOCK_STREAM 1
|
||||
@ -827,6 +827,7 @@ getrequests(e)
|
||||
OutChannel = outchannel;
|
||||
DisConnected = false;
|
||||
|
||||
|
||||
#if XLA
|
||||
if (!xla_host_ok(RealHostName))
|
||||
{
|
||||
@ -4405,6 +4406,8 @@ hostnamebyanyaddr(sap)
|
||||
saveretry = _res.retry;
|
||||
if (_res.retry * _res.retrans > 20)
|
||||
_res.retry = 20 / _res.retrans;
|
||||
if (_res.retry == 0)
|
||||
_res.retry = 1;
|
||||
# endif /* NAMED_BIND */
|
||||
|
||||
switch (sap->sa.sa_family)
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998-2010 Sendmail, Inc. and its suppliers.
|
||||
* Copyright (c) 1998-2010, 2012 Sendmail, Inc. and its suppliers.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved.
|
||||
* Copyright (c) 1988, 1993
|
||||
@ -14,7 +14,7 @@
|
||||
#include <sendmail.h>
|
||||
#include <sm/time.h>
|
||||
|
||||
SM_RCSID("@(#)$Id: deliver.c,v 8.1024 2011/01/12 23:52:59 ca Exp $")
|
||||
SM_RCSID("@(#)$Id: deliver.c,v 8.1027 2012/12/19 02:49:21 ca Exp $")
|
||||
|
||||
#if HASSETUSERCONTEXT
|
||||
# include <login_cap.h>
|
||||
@ -37,6 +37,7 @@ static void sendenvelope __P((ENVELOPE *, int));
|
||||
static int coloncmp __P((const char *, const char *));
|
||||
|
||||
#if STARTTLS
|
||||
# include <openssl/err.h>
|
||||
static int starttls __P((MAILER *, MCI *, ENVELOPE *));
|
||||
static int endtlsclt __P((MCI *));
|
||||
#endif /* STARTTLS */
|
||||
@ -4271,7 +4272,7 @@ logdelivery(m, mci, dsn, status, ctladdr, xstart, e)
|
||||
|
||||
/* pri: changes with each delivery attempt */
|
||||
(void) sm_snprintf(bp, SPACELEFT(buf, bp), ", pri=%ld",
|
||||
e->e_msgpriority);
|
||||
PRT_NONNEGL(e->e_msgpriority));
|
||||
bp += strlen(bp);
|
||||
|
||||
/* relay: max 66 bytes for IPv4 addresses */
|
||||
@ -6191,10 +6192,16 @@ starttls(m, mci, e)
|
||||
|
||||
if (LogLevel > 5)
|
||||
{
|
||||
unsigned long l;
|
||||
const char *sr;
|
||||
|
||||
l = ERR_peek_error();
|
||||
sr = ERR_reason_error_string(l);
|
||||
sm_syslog(LOG_WARNING, NOQID,
|
||||
"STARTTLS=client, error: connect failed=%d, SSL_error=%d, errno=%d, retry=%d",
|
||||
result, ssl_err, errno, i);
|
||||
if (LogLevel > 8)
|
||||
"STARTTLS=client, error: connect failed=%d, reason=%s, SSL_error=%d, errno=%d, retry=%d",
|
||||
result, sr == NULL ? "unknown" : sr, ssl_err,
|
||||
errno, i);
|
||||
if (LogLevel > 9)
|
||||
tlslogerr("client");
|
||||
}
|
||||
|
||||
|
@ -14,7 +14,7 @@
|
||||
#include <sendmail.h>
|
||||
#include <sm/sendmail.h>
|
||||
|
||||
SM_RCSID("@(#)$Id: headers.c,v 8.317 2008/08/27 20:11:55 gshapiro Exp $")
|
||||
SM_RCSID("@(#)$Id: headers.c,v 8.318 2012/06/14 23:54:02 ca Exp $")
|
||||
|
||||
static HDR *allocheader __P((char *, char *, int, SM_RPOOL_T *, bool));
|
||||
static size_t fix_mime_header __P((HDR *, ENVELOPE *));
|
||||
@ -1152,7 +1152,7 @@ logsender(e, msgid)
|
||||
(void) sm_snprintf(sbp, SPACELEFT(sbuf, sbp),
|
||||
"from=%.200s, size=%ld, class=%d, nrcpts=%d",
|
||||
e->e_from.q_paddr == NULL ? "<NONE>" : e->e_from.q_paddr,
|
||||
e->e_msgsize, e->e_class, e->e_nrcpts);
|
||||
PRT_NONNEGL(e->e_msgsize), e->e_class, e->e_nrcpts);
|
||||
sbp += strlen(sbp);
|
||||
if (msgid != NULL)
|
||||
{
|
||||
@ -1191,7 +1191,7 @@ logsender(e, msgid)
|
||||
83));
|
||||
sm_syslog(LOG_INFO, e->e_id,
|
||||
"size=%ld, class=%ld, nrcpts=%d",
|
||||
e->e_msgsize, e->e_class, e->e_nrcpts);
|
||||
PRT_NONNEGL(e->e_msgsize), e->e_class, e->e_nrcpts);
|
||||
if (msgid != NULL)
|
||||
sm_syslog(LOG_INFO, e->e_id,
|
||||
"msgid=%s",
|
||||
|
@ -26,7 +26,7 @@ SM_UNUSED(static char copyright[]) =
|
||||
The Regents of the University of California. All rights reserved.\n";
|
||||
#endif /* ! lint */
|
||||
|
||||
SM_RCSID("@(#)$Id: main.c,v 8.976 2011/03/15 23:14:36 ca Exp $")
|
||||
SM_RCSID("@(#)$Id: main.c,v 8.981 2012/06/14 23:54:02 ca Exp $")
|
||||
|
||||
|
||||
#if NETINET || NETINET6
|
||||
@ -2561,6 +2561,10 @@ main(argc, argv, envp)
|
||||
authinfo = getauthinfo(sm_io_getinfo(InChannel, SM_IO_WHAT_FD,
|
||||
NULL), &forged);
|
||||
macdefine(&BlankEnvelope.e_macro, A_TEMP, '_', authinfo);
|
||||
if (tTd(75, 9))
|
||||
sm_syslog(LOG_INFO, NOQID,
|
||||
"main: where=after_getauthinfo, RealHostAddr=%s",
|
||||
anynet_ntoa(&RealHostAddr));
|
||||
|
||||
/* at this point we are in a child: reset state */
|
||||
sm_rpool_free(MainEnvelope.e_rpool);
|
||||
@ -2827,7 +2831,7 @@ main(argc, argv, envp)
|
||||
|
||||
/* set message size */
|
||||
(void) sm_snprintf(buf, sizeof(buf), "%ld",
|
||||
MainEnvelope.e_msgsize);
|
||||
PRT_NONNEGL(MainEnvelope.e_msgsize));
|
||||
macdefine(&MainEnvelope.e_macro, A_TEMP,
|
||||
macid("{msg_size}"), buf);
|
||||
|
||||
|
14
src/map.c
14
src/map.c
@ -13,7 +13,7 @@
|
||||
|
||||
#include <sendmail.h>
|
||||
|
||||
SM_RCSID("@(#)$Id: map.c,v 8.706 2010/07/27 03:35:42 ca Exp $")
|
||||
SM_RCSID("@(#)$Id: map.c,v 8.709 2012/04/20 18:47:09 ca Exp $")
|
||||
|
||||
#if LDAPMAP
|
||||
# include <sm/ldap.h>
|
||||
@ -3434,7 +3434,7 @@ ldapmap_open(map, mode)
|
||||
{
|
||||
if (LogLevel > 1)
|
||||
sm_syslog(LOG_NOTICE, CurEnv->e_id,
|
||||
"timeout conning to LDAP server %.100s",
|
||||
"timeout connecting to LDAP server %.100s",
|
||||
id);
|
||||
}
|
||||
|
||||
@ -3763,11 +3763,11 @@ ldapmap_lookup(map, name, av, statp)
|
||||
if (!bitset(MF_OPTIONAL, map->map_mflags))
|
||||
{
|
||||
if (bitset(MF_NODEFER, map->map_mflags))
|
||||
syserr("Error getting LDAP results in map %s",
|
||||
map->map_mname);
|
||||
syserr("Error getting LDAP results, map=%s, name=%s",
|
||||
map->map_mname, name);
|
||||
else
|
||||
syserr("451 4.3.5 Error getting LDAP results in map %s",
|
||||
map->map_mname);
|
||||
syserr("451 4.3.5 Error getting LDAP results, map=%s, name=%s",
|
||||
map->map_mname, name);
|
||||
}
|
||||
errno = save_errno;
|
||||
return NULL;
|
||||
@ -3781,7 +3781,7 @@ ldapmap_lookup(map, name, av, statp)
|
||||
{
|
||||
if (LogLevel > 9)
|
||||
sm_syslog(LOG_INFO, CurEnv->e_id,
|
||||
"ldap %.100s => %s", name,
|
||||
"ldap=%s, %.100s=>%s", map->map_mname, name,
|
||||
vp == NULL ? "<NULL>" : vp);
|
||||
if (bitset(MF_MATCHONLY, map->map_mflags))
|
||||
result = map_rewrite(map, name, strlen(name), NULL);
|
||||
|
222
src/milter.c
222
src/milter.c
@ -10,7 +10,7 @@
|
||||
|
||||
#include <sendmail.h>
|
||||
|
||||
SM_RCSID("@(#)$Id: milter.c,v 8.277 2009/11/06 00:57:06 ca Exp $")
|
||||
SM_RCSID("@(#)$Id: milter.c,v 8.279 2012/11/16 20:25:03 ca Exp $")
|
||||
|
||||
#if MILTER
|
||||
# include <sm/sendmail.h>
|
||||
@ -42,7 +42,7 @@ static char *milter_write __P((struct milter *, int, char *, ssize_t,
|
||||
time_t, ENVELOPE *, const char *));
|
||||
static char *milter_send_command __P((struct milter *, int, void *,
|
||||
ssize_t, ENVELOPE *, char *, const char *));
|
||||
static char *milter_command __P((int, void *, ssize_t, char **,
|
||||
static char *milter_command __P((int, void *, ssize_t, int,
|
||||
ENVELOPE *, char *, const char *, bool));
|
||||
static char *milter_body __P((struct milter *, ENVELOPE *, char *));
|
||||
static int milter_reopen_df __P((ENVELOPE *));
|
||||
@ -79,13 +79,13 @@ static int milter_set_macros __P((char *, char **, char *, int));
|
||||
# define SMFS_READY 'R' /* ready for action */
|
||||
# define SMFS_SKIP 'S' /* skip body */
|
||||
|
||||
static char *MilterConnectMacros[MAXFILTERMACROS + 1];
|
||||
static char *MilterHeloMacros[MAXFILTERMACROS + 1];
|
||||
static char *MilterEnvFromMacros[MAXFILTERMACROS + 1];
|
||||
static char *MilterEnvRcptMacros[MAXFILTERMACROS + 1];
|
||||
static char *MilterDataMacros[MAXFILTERMACROS + 1];
|
||||
static char *MilterEOMMacros[MAXFILTERMACROS + 1];
|
||||
static char *MilterEOHMacros[MAXFILTERMACROS + 1];
|
||||
/*
|
||||
** MilterMacros contains the milter macros for each milter and each stage.
|
||||
** indices are (in order): stages, milter-index, macro
|
||||
** milter-index == 0: "global" macros (not for a specific milter).
|
||||
*/
|
||||
|
||||
static char *MilterMacros[SMFIM_LAST + 1][MAXFILTERS + 1][MAXFILTERMACROS + 1];
|
||||
static size_t MilterMaxDataSize = MILTER_MAX_DATA_SIZE;
|
||||
|
||||
# define MILTER_CHECK_DONE_MSG() \
|
||||
@ -98,6 +98,16 @@ static size_t MilterMaxDataSize = MILTER_MAX_DATA_SIZE;
|
||||
milter_abort(e); \
|
||||
}
|
||||
|
||||
/* set state in case of an error */
|
||||
# define MILTER_SET_STATE \
|
||||
if (bitnset(SMF_TEMPFAIL, m->mf_flags)) \
|
||||
*state = SMFIR_TEMPFAIL; \
|
||||
else if (bitnset(SMF_TEMPDROP, m->mf_flags)) \
|
||||
*state = SMFIR_SHUTDOWN; \
|
||||
else if (bitnset(SMF_REJECT, m->mf_flags)) \
|
||||
*state = SMFIR_REJECT
|
||||
|
||||
/* flow through code maybe using continue; don't wrap in do {} while */
|
||||
# define MILTER_CHECK_ERROR(initial, action) \
|
||||
if (!initial && tTd(71, 100)) \
|
||||
{ \
|
||||
@ -119,12 +129,7 @@ static size_t MilterMaxDataSize = MILTER_MAX_DATA_SIZE;
|
||||
e->e_quarmsg); \
|
||||
} \
|
||||
} \
|
||||
else if (bitnset(SMF_TEMPFAIL, m->mf_flags)) \
|
||||
*state = SMFIR_TEMPFAIL; \
|
||||
else if (bitnset(SMF_TEMPDROP, m->mf_flags)) \
|
||||
*state = SMFIR_SHUTDOWN; \
|
||||
else if (bitnset(SMF_REJECT, m->mf_flags)) \
|
||||
*state = SMFIR_REJECT; \
|
||||
else MILTER_SET_STATE; \
|
||||
else \
|
||||
action;
|
||||
|
||||
@ -1221,6 +1226,7 @@ milter_setup(line)
|
||||
char *p;
|
||||
struct milter *m;
|
||||
STAB *s;
|
||||
static int idx = 0;
|
||||
|
||||
/* collect the filter name */
|
||||
for (p = line;
|
||||
@ -1323,7 +1329,10 @@ milter_setup(line)
|
||||
if (s->s_milter != NULL)
|
||||
syserr("X%s: duplicate filter definition", m->mf_name);
|
||||
else
|
||||
{
|
||||
s->s_milter = m;
|
||||
m->mf_idx = ++idx;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
@ -1555,20 +1564,13 @@ static struct milteropt
|
||||
unsigned char mo_code; /* code for option */
|
||||
} MilterOptTab[] =
|
||||
{
|
||||
# define MO_MACROS_CONNECT SMFIM_CONNECT
|
||||
{ "macros.connect", MO_MACROS_CONNECT },
|
||||
# define MO_MACROS_HELO SMFIM_HELO
|
||||
{ "macros.helo", MO_MACROS_HELO },
|
||||
# define MO_MACROS_ENVFROM SMFIM_ENVFROM
|
||||
{ "macros.envfrom", MO_MACROS_ENVFROM },
|
||||
# define MO_MACROS_ENVRCPT SMFIM_ENVRCPT
|
||||
{ "macros.envrcpt", MO_MACROS_ENVRCPT },
|
||||
# define MO_MACROS_DATA SMFIM_DATA
|
||||
{ "macros.data", MO_MACROS_DATA },
|
||||
# define MO_MACROS_EOM SMFIM_EOM
|
||||
{ "macros.eom", MO_MACROS_EOM },
|
||||
# define MO_MACROS_EOH SMFIM_EOH
|
||||
{ "macros.eoh", MO_MACROS_EOH },
|
||||
{ "macros.connect", SMFIM_CONNECT },
|
||||
{ "macros.helo", SMFIM_HELO },
|
||||
{ "macros.envfrom", SMFIM_ENVFROM },
|
||||
{ "macros.envrcpt", SMFIM_ENVRCPT },
|
||||
{ "macros.data", SMFIM_DATA },
|
||||
{ "macros.eom", SMFIM_EOM },
|
||||
{ "macros.eoh", SMFIM_EOH },
|
||||
|
||||
# define MO_LOGLEVEL 0x07
|
||||
{ "loglevel", MO_LOGLEVEL },
|
||||
@ -1655,39 +1657,14 @@ milter_set_option(name, val, sticky)
|
||||
break;
|
||||
# endif /* _FFR_MAXDATASIZE || _FFR_MDS_NEGOTIATE */
|
||||
|
||||
case MO_MACROS_CONNECT:
|
||||
if (macros == NULL)
|
||||
macros = MilterConnectMacros;
|
||||
/* FALLTHROUGH */
|
||||
|
||||
case MO_MACROS_HELO:
|
||||
if (macros == NULL)
|
||||
macros = MilterHeloMacros;
|
||||
/* FALLTHROUGH */
|
||||
|
||||
case MO_MACROS_ENVFROM:
|
||||
if (macros == NULL)
|
||||
macros = MilterEnvFromMacros;
|
||||
/* FALLTHROUGH */
|
||||
|
||||
case MO_MACROS_ENVRCPT:
|
||||
if (macros == NULL)
|
||||
macros = MilterEnvRcptMacros;
|
||||
/* FALLTHROUGH */
|
||||
|
||||
case MO_MACROS_EOH:
|
||||
if (macros == NULL)
|
||||
macros = MilterEOHMacros;
|
||||
/* FALLTHROUGH */
|
||||
|
||||
case MO_MACROS_EOM:
|
||||
if (macros == NULL)
|
||||
macros = MilterEOMMacros;
|
||||
/* FALLTHROUGH */
|
||||
|
||||
case MO_MACROS_DATA:
|
||||
if (macros == NULL)
|
||||
macros = MilterDataMacros;
|
||||
case SMFIM_CONNECT:
|
||||
case SMFIM_HELO:
|
||||
case SMFIM_ENVFROM:
|
||||
case SMFIM_ENVRCPT:
|
||||
case SMFIM_EOH:
|
||||
case SMFIM_EOM:
|
||||
case SMFIM_DATA:
|
||||
macros = MilterMacros[mo->mo_code][0];
|
||||
|
||||
r = milter_set_macros(name, macros, val, nummac);
|
||||
if (r >= 0)
|
||||
@ -2188,7 +2165,7 @@ milter_send_command(m, cmd, data, sz, e, state, where)
|
||||
sm_syslog(LOG_ERR, e->e_id,
|
||||
"milter_send_command(%s): action=%s returned bogus response %c",
|
||||
m->mf_name, action, rcmd);
|
||||
milter_error(m, e);
|
||||
milter_error(m, e); /* NO ERROR CHECK? */
|
||||
break;
|
||||
}
|
||||
|
||||
@ -2218,11 +2195,11 @@ milter_send_command(m, cmd, data, sz, e, state, where)
|
||||
*/
|
||||
|
||||
static char *
|
||||
milter_command(cmd, data, sz, macros, e, state, where, cmd_error)
|
||||
milter_command(cmd, data, sz, stage, e, state, where, cmd_error)
|
||||
int cmd;
|
||||
void *data;
|
||||
ssize_t sz;
|
||||
char **macros;
|
||||
int stage;
|
||||
ENVELOPE *e;
|
||||
char *state;
|
||||
const char *where;
|
||||
@ -2254,14 +2231,27 @@ milter_command(cmd, data, sz, macros, e, state, where, cmd_error)
|
||||
(m->mf_state != SMFS_OPEN && m->mf_state != SMFS_INMSG))
|
||||
continue;
|
||||
|
||||
/* send macros (regardless of whether we send command) */
|
||||
if (macros != NULL && macros[0] != NULL)
|
||||
if (stage >= SMFIM_FIRST && stage <= SMFIM_LAST)
|
||||
{
|
||||
milter_send_macros(m, macros, command, e);
|
||||
if (m->mf_state == SMFS_ERROR)
|
||||
int idx;
|
||||
char **macros;
|
||||
|
||||
if ((m->mf_lflags & MI_LFLAGS_SYM(stage)) != 0)
|
||||
idx = m->mf_idx;
|
||||
else
|
||||
idx = 0;
|
||||
SM_ASSERT(idx >= 0 && idx <= MAXFILTERS);
|
||||
macros = MilterMacros[stage][idx];
|
||||
|
||||
/* send macros (regardless of whether we send cmd) */
|
||||
if (macros != NULL && macros[0] != NULL)
|
||||
{
|
||||
MILTER_CHECK_ERROR(false, continue);
|
||||
break;
|
||||
milter_send_macros(m, macros, command, e);
|
||||
if (m->mf_state == SMFS_ERROR)
|
||||
{
|
||||
MILTER_CHECK_ERROR(false, continue);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -2329,40 +2319,17 @@ milter_getsymlist(m, buf, rlen, offset)
|
||||
|
||||
switch (i)
|
||||
{
|
||||
case MO_MACROS_CONNECT:
|
||||
if (macros == NULL)
|
||||
macros = MilterConnectMacros;
|
||||
/* FALLTHROUGH */
|
||||
|
||||
case MO_MACROS_HELO:
|
||||
if (macros == NULL)
|
||||
macros = MilterHeloMacros;
|
||||
/* FALLTHROUGH */
|
||||
|
||||
case MO_MACROS_ENVFROM:
|
||||
if (macros == NULL)
|
||||
macros = MilterEnvFromMacros;
|
||||
/* FALLTHROUGH */
|
||||
|
||||
case MO_MACROS_ENVRCPT:
|
||||
if (macros == NULL)
|
||||
macros = MilterEnvRcptMacros;
|
||||
/* FALLTHROUGH */
|
||||
|
||||
case MO_MACROS_EOM:
|
||||
if (macros == NULL)
|
||||
macros = MilterEOMMacros;
|
||||
/* FALLTHROUGH */
|
||||
|
||||
case MO_MACROS_EOH:
|
||||
if (macros == NULL)
|
||||
macros = MilterEOHMacros;
|
||||
/* FALLTHROUGH */
|
||||
|
||||
case MO_MACROS_DATA:
|
||||
if (macros == NULL)
|
||||
macros = MilterDataMacros;
|
||||
case SMFIM_CONNECT:
|
||||
case SMFIM_HELO:
|
||||
case SMFIM_ENVFROM:
|
||||
case SMFIM_ENVRCPT:
|
||||
case SMFIM_EOH:
|
||||
case SMFIM_EOM:
|
||||
case SMFIM_DATA:
|
||||
SM_ASSERT(m->mf_idx > 0 && m->mf_idx < MAXFILTERS);
|
||||
macros = MilterMacros[i][m->mf_idx];
|
||||
|
||||
m->mf_lflags |= MI_LFLAGS_SYM(i);
|
||||
len = strlen(buf + offset);
|
||||
if (len > 0)
|
||||
{
|
||||
@ -2370,6 +2337,9 @@ milter_getsymlist(m, buf, rlen, offset)
|
||||
buf + offset, nummac);
|
||||
if (r >= 0)
|
||||
nummac = r;
|
||||
if (tTd(64, 5))
|
||||
sm_dprintf("milter_getsymlist(%s, %s)=%d\n",
|
||||
m->mf_name, buf + offset, r);
|
||||
}
|
||||
break;
|
||||
|
||||
@ -3989,7 +3959,7 @@ milter_connect(hostname, addr, e, state)
|
||||
(void) memcpy(bp, sockinfo, strlen(sockinfo) + 1);
|
||||
}
|
||||
|
||||
response = milter_command(SMFIC_CONNECT, buf, s, MilterConnectMacros,
|
||||
response = milter_command(SMFIC_CONNECT, buf, s, SMFIM_CONNECT,
|
||||
e, state, "connect", false);
|
||||
sm_free(buf); /* XXX */
|
||||
|
||||
@ -4078,7 +4048,7 @@ milter_helo(helo, e, state)
|
||||
}
|
||||
|
||||
response = milter_command(SMFIC_HELO, helo, strlen(helo) + 1,
|
||||
MilterHeloMacros, e, state, "helo", false);
|
||||
SMFIM_EOH, e, state, "helo", false);
|
||||
milter_per_connection_check(e);
|
||||
return response;
|
||||
}
|
||||
@ -4166,7 +4136,7 @@ milter_envfrom(args, e, state)
|
||||
sm_syslog(LOG_INFO, e->e_id, "Milter: sender: %s", buf);
|
||||
|
||||
/* send it over */
|
||||
response = milter_command(SMFIC_MAIL, buf, s, MilterEnvFromMacros,
|
||||
response = milter_command(SMFIC_MAIL, buf, s, SMFIM_ENVFROM,
|
||||
e, state, "mail", false);
|
||||
sm_free(buf); /* XXX */
|
||||
|
||||
@ -4247,7 +4217,7 @@ milter_envrcpt(args, e, state, rcpt_error)
|
||||
sm_syslog(LOG_INFO, e->e_id, "Milter: rcpts: %s", buf);
|
||||
|
||||
/* send it over */
|
||||
response = milter_command(SMFIC_RCPT, buf, s, MilterEnvRcptMacros,
|
||||
response = milter_command(SMFIC_RCPT, buf, s, SMFIM_ENVRCPT,
|
||||
e, state, "rcpt", rcpt_error);
|
||||
sm_free(buf); /* XXX */
|
||||
return response;
|
||||
@ -4273,8 +4243,8 @@ milter_data_cmd(e, state)
|
||||
sm_dprintf("milter_data_cmd\n");
|
||||
|
||||
/* send it over */
|
||||
return milter_command(SMFIC_DATA, NULL, 0, MilterDataMacros, e, state,
|
||||
"data", false);
|
||||
return milter_command(SMFIC_DATA, NULL, 0, SMFIM_DATA,
|
||||
e, state, "data", false);
|
||||
}
|
||||
|
||||
/*
|
||||
@ -4293,7 +4263,12 @@ milter_data_cmd(e, state)
|
||||
** modify the envelope or message.
|
||||
*/
|
||||
|
||||
/* flow through code using continue; don't wrap in do {} while */
|
||||
# define MILTER_CHECK_RESULTS() \
|
||||
if (m->mf_state == SMFS_ERROR && *state == SMFIR_CONTINUE) \
|
||||
{ \
|
||||
MILTER_SET_STATE; \
|
||||
} \
|
||||
if (*state == SMFIR_ACCEPT || \
|
||||
m->mf_state == SMFS_DONE || \
|
||||
m->mf_state == SMFS_ERROR) \
|
||||
@ -4339,6 +4314,8 @@ milter_data(e, state)
|
||||
|
||||
for (i = 0; InputFilters[i] != NULL; i++)
|
||||
{
|
||||
int idx;
|
||||
char **macros;
|
||||
struct milter *m = InputFilters[i];
|
||||
|
||||
if (*state != SMFIR_CONTINUE &&
|
||||
@ -4383,10 +4360,16 @@ milter_data(e, state)
|
||||
if (tTd(64, 10))
|
||||
sm_dprintf("milter_data: eoh\n");
|
||||
|
||||
if (MilterEOHMacros[0] != NULL)
|
||||
if ((m->mf_lflags & MI_LFLAGS_SYM(SMFIM_EOH)) != 0)
|
||||
idx = m->mf_idx;
|
||||
else
|
||||
idx = 0;
|
||||
SM_ASSERT(idx >= 0 && idx <= MAXFILTERS);
|
||||
macros = MilterMacros[SMFIM_EOH][idx];
|
||||
|
||||
if (macros != NULL)
|
||||
{
|
||||
milter_send_macros(m, MilterEOHMacros,
|
||||
SMFIC_EOH, e);
|
||||
milter_send_macros(m, macros, SMFIC_EOH, e);
|
||||
MILTER_CHECK_RESULTS();
|
||||
}
|
||||
|
||||
@ -4405,10 +4388,15 @@ milter_data(e, state)
|
||||
MILTER_CHECK_RESULTS();
|
||||
}
|
||||
|
||||
if (MilterEOMMacros[0] != NULL)
|
||||
if ((m->mf_lflags & MI_LFLAGS_SYM(SMFIM_EOH)) != 0)
|
||||
idx = m->mf_idx;
|
||||
else
|
||||
idx = 0;
|
||||
SM_ASSERT(idx >= 0 && idx <= MAXFILTERS);
|
||||
macros = MilterMacros[SMFIM_EOM][idx];
|
||||
if (macros != NULL)
|
||||
{
|
||||
milter_send_macros(m, MilterEOMMacros,
|
||||
SMFIC_BODYEOB, e);
|
||||
milter_send_macros(m, macros, SMFIC_BODYEOB, e);
|
||||
MILTER_CHECK_RESULTS();
|
||||
}
|
||||
|
||||
@ -4734,7 +4722,7 @@ milter_unknown(smtpcmd, e, state)
|
||||
sm_dprintf("milter_unknown(%s)\n", smtpcmd);
|
||||
|
||||
return milter_command(SMFIC_UNKNOWN, smtpcmd, strlen(smtpcmd) + 1,
|
||||
NULL, e, state, "unknown", false);
|
||||
SMFIM_NOMACROS, e, state, "unknown", false);
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
#include <sendmail.h>
|
||||
|
||||
SM_RCSID("@(#)$Id: parseaddr.c,v 8.404 2010/07/27 03:35:42 ca Exp $")
|
||||
SM_RCSID("@(#)$Id: parseaddr.c,v 8.405 2012/02/27 22:49:08 ca Exp $")
|
||||
|
||||
#include <sm/sendmail.h>
|
||||
#include "map.h"
|
||||
@ -242,6 +242,7 @@ parseaddr(addr, a, flags, delim, delimptr, e, isrcpt)
|
||||
**
|
||||
** Parameters:
|
||||
** addr -- the address to check.
|
||||
** note: this is the complete address (including display part)
|
||||
** delimptr -- if non-NULL: end of address to check, i.e.,
|
||||
** a pointer in the address string.
|
||||
** isrcpt -- true iff the address is for a recipient.
|
||||
|
23
src/queue.c
23
src/queue.c
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998-2009, 2011 Sendmail, Inc. and its suppliers.
|
||||
* Copyright (c) 1998-2009, 2011, 2012 Sendmail, Inc. and its suppliers.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved.
|
||||
* Copyright (c) 1988, 1993
|
||||
@ -14,7 +14,7 @@
|
||||
#include <sendmail.h>
|
||||
#include <sm/sem.h>
|
||||
|
||||
SM_RCSID("@(#)$Id: queue.c,v 8.991 2011/03/15 23:14:36 ca Exp $")
|
||||
SM_RCSID("@(#)$Id: queue.c,v 8.997 2012/06/14 23:54:03 ca Exp $")
|
||||
|
||||
#include <dirent.h>
|
||||
|
||||
@ -1493,6 +1493,7 @@ runqueue(forkflag, verbose, persistent, runall)
|
||||
for (i = 0; i < NumWorkGroups && !NoMoreRunners; i++)
|
||||
{
|
||||
int rwgflags = RWG_NONE;
|
||||
int wasblocked;
|
||||
|
||||
/*
|
||||
** If MaxQueueChildren active then test whether the start
|
||||
@ -1529,7 +1530,11 @@ runqueue(forkflag, verbose, persistent, runall)
|
||||
** increase if some queue runners "hang" for a long time.
|
||||
*/
|
||||
|
||||
/* don't let proc_list_drop() change CurRunners */
|
||||
wasblocked = sm_blocksignal(SIGCHLD);
|
||||
CurRunners += WorkGrp[curnum].wg_maxact;
|
||||
if (wasblocked == 0)
|
||||
(void) sm_releasesignal(SIGCHLD);
|
||||
if (forkflag)
|
||||
rwgflags |= RWG_FORK;
|
||||
if (verbose)
|
||||
@ -1549,7 +1554,13 @@ runqueue(forkflag, verbose, persistent, runall)
|
||||
|
||||
if (!ret)
|
||||
{
|
||||
/* don't let proc_list_drop() change CurRunners */
|
||||
wasblocked = sm_blocksignal(SIGCHLD);
|
||||
CurRunners -= WorkGrp[curnum].wg_maxact;
|
||||
CHK_CUR_RUNNERS("runqueue", curnum,
|
||||
WorkGrp[curnum].wg_maxact);
|
||||
if (wasblocked == 0)
|
||||
(void) sm_releasesignal(SIGCHLD);
|
||||
break;
|
||||
}
|
||||
|
||||
@ -2031,6 +2042,9 @@ run_work_group(wgrp, flags)
|
||||
{
|
||||
IgnoreHostStatus = true;
|
||||
MinQueueAge = 0;
|
||||
#if _FFR_EXPDELAY
|
||||
MaxQueueAge = 0;
|
||||
#endif /* _FFR_EXPDELAY */
|
||||
}
|
||||
|
||||
/*
|
||||
@ -2300,7 +2314,7 @@ run_work_group(wgrp, flags)
|
||||
if (bitset(RWG_PERSISTENT, flags))
|
||||
{
|
||||
sequenceno = 1;
|
||||
sm_setproctitle(true, CurEnv, "running queue: %s",
|
||||
sm_setproctitle(true, NULL, "running queue: %s",
|
||||
qid_printqueue(qgrp, qdir));
|
||||
|
||||
/*
|
||||
@ -3704,6 +3718,7 @@ dowork(qgrp, qdir, id, forkflag, requeueflag, e)
|
||||
(void) dropenvelope(e, true, false);
|
||||
sm_rpool_free(rpool);
|
||||
e->e_rpool = NULL;
|
||||
e->e_message = NULL;
|
||||
}
|
||||
}
|
||||
e->e_id = NULL;
|
||||
@ -4577,7 +4592,7 @@ readqf(e, openonly)
|
||||
e->e_dfdev = st.st_dev;
|
||||
e->e_dfino = ST_INODE(st);
|
||||
(void) sm_snprintf(buf, sizeof(buf), "%ld",
|
||||
e->e_msgsize);
|
||||
PRT_NONNEGL(e->e_msgsize));
|
||||
macdefine(&e->e_macro, A_TEMP, macid("{msg_size}"),
|
||||
buf);
|
||||
}
|
||||
|
24
src/sasl.c
24
src/sasl.c
@ -9,7 +9,7 @@
|
||||
*/
|
||||
|
||||
#include <sm/gen.h>
|
||||
SM_RCSID("@(#)$Id: sasl.c,v 8.22 2006/08/15 23:24:57 ca Exp $")
|
||||
SM_RCSID("@(#)$Id: sasl.c,v 8.23 2012/11/27 18:53:13 gshapiro Exp $")
|
||||
|
||||
#if SASL
|
||||
# include <stdlib.h>
|
||||
@ -20,13 +20,19 @@ SM_RCSID("@(#)$Id: sasl.c,v 8.22 2006/08/15 23:24:57 ca Exp $")
|
||||
** In order to ensure that storage leaks are tracked, and to prevent
|
||||
** conflicts between the sm_heap package and sasl, we tell sasl to
|
||||
** use the following heap allocation functions. Unfortunately,
|
||||
** the sasl package incorrectly specifies the size of a block
|
||||
** older sasl packages incorrectly specifies the size of a block
|
||||
** using unsigned long: for portability, it should be size_t.
|
||||
*/
|
||||
|
||||
void *sm_sasl_malloc __P((unsigned long));
|
||||
static void *sm_sasl_calloc __P((unsigned long, unsigned long));
|
||||
static void *sm_sasl_realloc __P((void *, unsigned long));
|
||||
# if defined(SASL_VERSION_FULL) && SASL_VERSION_FULL >= 0x02011a
|
||||
# define SM_SASL_SIZE_T size_t
|
||||
# else /* defined(SASL_VERSION_FULL) && SASL_VERSION_FULL >= 0x02011a */
|
||||
# define SM_SASL_SIZE_T unsigned long
|
||||
# endif /* defined(SASL_VERSION_FULL) && SASL_VERSION_FULL >= 0x02011a */
|
||||
|
||||
void *sm_sasl_malloc __P((SM_SASL_SIZE_T));
|
||||
static void *sm_sasl_calloc __P((SM_SASL_SIZE_T, SM_SASL_SIZE_T));
|
||||
static void *sm_sasl_realloc __P((void *, SM_SASL_SIZE_T));
|
||||
void sm_sasl_free __P((void *));
|
||||
|
||||
/*
|
||||
@ -50,7 +56,7 @@ void sm_sasl_free __P((void *));
|
||||
|
||||
void *
|
||||
sm_sasl_malloc(size)
|
||||
unsigned long size;
|
||||
SM_SASL_SIZE_T size;
|
||||
{
|
||||
return sm_malloc((size_t) size);
|
||||
}
|
||||
@ -71,8 +77,8 @@ sm_sasl_malloc(size)
|
||||
|
||||
static void *
|
||||
sm_sasl_calloc(nelem, elemsize)
|
||||
unsigned long nelem;
|
||||
unsigned long elemsize;
|
||||
SM_SASL_SIZE_T nelem;
|
||||
SM_SASL_SIZE_T elemsize;
|
||||
{
|
||||
size_t size;
|
||||
void *p;
|
||||
@ -99,7 +105,7 @@ sm_sasl_calloc(nelem, elemsize)
|
||||
static void *
|
||||
sm_sasl_realloc(o, size)
|
||||
void *o;
|
||||
unsigned long size;
|
||||
SM_SASL_SIZE_T size;
|
||||
{
|
||||
return sm_realloc(o, (size_t) size);
|
||||
}
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
#include <sendmail.h>
|
||||
|
||||
SM_RCSID("@(#)$Id: savemail.c,v 8.314 2009/12/18 17:08:01 ca Exp $")
|
||||
SM_RCSID("@(#)$Id: savemail.c,v 8.315 2012/02/27 17:43:03 gshapiro Exp $")
|
||||
|
||||
static bool errbody __P((MCI *, ENVELOPE *, char *));
|
||||
static bool pruneroute __P((char *));
|
||||
@ -506,6 +506,7 @@ returntosender(msg, returnq, flags, e)
|
||||
int flags;
|
||||
register ENVELOPE *e;
|
||||
{
|
||||
int ret;
|
||||
register ENVELOPE *ee;
|
||||
ENVELOPE *oldcur = CurEnv;
|
||||
ENVELOPE errenvelope;
|
||||
@ -703,24 +704,35 @@ returntosender(msg, returnq, flags, e)
|
||||
|
||||
/* actually deliver the error message */
|
||||
sendall(ee, SM_DELIVER);
|
||||
(void) dropenvelope(ee, true, false);
|
||||
|
||||
/* check for delivery errors */
|
||||
ret = -1;
|
||||
if (ee->e_parent == NULL ||
|
||||
!bitset(EF_RESPONSE, ee->e_parent->e_flags))
|
||||
{
|
||||
ret = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
for (q = ee->e_sendqueue; q != NULL; q = q->q_next)
|
||||
{
|
||||
if (QS_IS_ATTEMPTED(q->q_state))
|
||||
{
|
||||
ret = 0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* restore state */
|
||||
(void) dropenvelope(ee, true, false);
|
||||
sm_rpool_free(ee->e_rpool);
|
||||
CurEnv = oldcur;
|
||||
returndepth--;
|
||||
|
||||
/* check for delivery errors */
|
||||
if (ee->e_parent == NULL ||
|
||||
!bitset(EF_RESPONSE, ee->e_parent->e_flags))
|
||||
return 0;
|
||||
for (q = ee->e_sendqueue; q != NULL; q = q->q_next)
|
||||
{
|
||||
if (QS_IS_ATTEMPTED(q->q_state))
|
||||
return 0;
|
||||
}
|
||||
return -1;
|
||||
return ret;
|
||||
}
|
||||
|
||||
/*
|
||||
** ERRBODY -- output the body of an error message.
|
||||
**
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998-2011 Sendmail, Inc. and its suppliers.
|
||||
* Copyright (c) 1998-2012 Sendmail, Inc. and its suppliers.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved.
|
||||
* Copyright (c) 1988, 1993
|
||||
@ -52,7 +52,7 @@
|
||||
|
||||
#ifdef _DEFINE
|
||||
# ifndef lint
|
||||
SM_UNUSED(static char SmailId[]) = "@(#)$Id: sendmail.h,v 8.1089 2011/03/15 23:14:36 ca Exp $";
|
||||
SM_UNUSED(static char SmailId[]) = "@(#)$Id: sendmail.h,v 8.1096 2012/11/16 20:25:03 ca Exp $";
|
||||
# endif /* ! lint */
|
||||
#endif /* _DEFINE */
|
||||
|
||||
@ -941,6 +941,8 @@ struct envelope
|
||||
#endif /* _FFR_MILTER_ENHSC */
|
||||
};
|
||||
|
||||
#define PRT_NONNEGL(v) ((v) < 0 ? LONG_MAX : (v))
|
||||
|
||||
/* values for e_flags */
|
||||
#define EF_OLDSTYLE 0x00000001L /* use spaces (not commas) in hdrs */
|
||||
#define EF_INQUEUE 0x00000002L /* this message is fully queued */
|
||||
@ -1481,7 +1483,6 @@ struct symtab
|
||||
union
|
||||
{
|
||||
BITMAP256 sv_class; /* bit-map of word classes */
|
||||
ADDRESS *sv_addr; /* pointer to address header */
|
||||
MAILER *sv_mailer; /* pointer to mailer */
|
||||
char *sv_alias; /* alias */
|
||||
MAPCLASS sv_mapclass; /* mapping function class */
|
||||
@ -1511,7 +1512,7 @@ typedef struct symtab STAB;
|
||||
/* symbol types */
|
||||
#define ST_UNDEF 0 /* undefined type */
|
||||
#define ST_CLASS 1 /* class map */
|
||||
#define ST_ADDRESS 2 /* an address in parsed format */
|
||||
/* #define ST_unused 2 UNUSED */
|
||||
#define ST_MAILER 3 /* a mailer header */
|
||||
#define ST_ALIAS 4 /* an alias */
|
||||
#define ST_MAPCLASS 5 /* mapping function class */
|
||||
@ -1538,7 +1539,6 @@ typedef struct symtab STAB;
|
||||
#define ST_MCI 17 /* mailer connection info (offset) */
|
||||
|
||||
#define s_class s_value.sv_class
|
||||
#define s_address s_value.sv_addr
|
||||
#define s_mailer s_value.sv_mailer
|
||||
#define s_alias s_value.sv_alias
|
||||
#define s_mci s_value.sv_mci
|
||||
@ -1780,6 +1780,8 @@ struct milter
|
||||
char *mf_conn; /* connection info */
|
||||
int mf_sock; /* connected socket */
|
||||
char mf_state; /* state of filter */
|
||||
char mf_lflags; /* "local" flags */
|
||||
int mf_idx; /* milter number (index) */
|
||||
time_t mf_timeout[SMFTO_NUM_TO]; /* timeouts */
|
||||
#if _FFR_MILTER_CHECK
|
||||
/* for testing only */
|
||||
@ -1789,6 +1791,9 @@ struct milter
|
||||
#endif /* _FFR_MILTER_CHECK */
|
||||
};
|
||||
|
||||
#define MI_LFL_NONE 0x00000000
|
||||
#define MI_LFLAGS_SYM(st) (1 << (st)) /* has its own symlist for stage st */
|
||||
|
||||
struct milters
|
||||
{
|
||||
mi_int32 mis_flags; /* filter flags */
|
||||
@ -2236,6 +2241,19 @@ extern unsigned char tTdvect[100]; /* trace vector */
|
||||
|
||||
# define CHECK_RESTART _CHECK_RESTART
|
||||
|
||||
#define CHK_CUR_RUNNERS(fct, idx, count) \
|
||||
do \
|
||||
{ \
|
||||
if (CurRunners < 0) \
|
||||
{ \
|
||||
if (LogLevel > 3) \
|
||||
sm_syslog(LOG_ERR, NOQID, \
|
||||
"%s: CurRunners=%d, i=%d, count=%d, status=should not happen", \
|
||||
fct, CurRunners, idx, count); \
|
||||
CurRunners = 0; \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
/* reply types (text in SmtpMsgBuffer) */
|
||||
#define XS_DEFAULT 0
|
||||
#define XS_STARTTLS 1
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998-2010 Sendmail, Inc. and its suppliers.
|
||||
* Copyright (c) 1998-2010, 2012 Sendmail, Inc. and its suppliers.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved.
|
||||
* Copyright (c) 1988, 1993
|
||||
@ -17,7 +17,7 @@
|
||||
# include <libmilter/mfdef.h>
|
||||
#endif /* MILTER */
|
||||
|
||||
SM_RCSID("@(#)$Id: srvrsmtp.c,v 8.1008 2011/01/12 23:52:59 ca Exp $")
|
||||
SM_RCSID("@(#)$Id: srvrsmtp.c,v 8.1011 2012/12/19 02:49:21 ca Exp $")
|
||||
|
||||
#include <sm/time.h>
|
||||
#include <sm/fdset.h>
|
||||
@ -30,6 +30,7 @@ SM_RCSID("@(#)$Id: srvrsmtp.c,v 8.1008 2011/01/12 23:52:59 ca Exp $")
|
||||
static int saslmechs __P((sasl_conn_t *, char **));
|
||||
#endif /* SASL */
|
||||
#if STARTTLS
|
||||
# include <openssl/err.h>
|
||||
# include <sysexits.h>
|
||||
|
||||
static SSL_CTX *srv_ctx = NULL; /* TLS server context */
|
||||
@ -1914,11 +1915,18 @@ smtp(nullserver, d_flags, e)
|
||||
|
||||
if (LogLevel > 5)
|
||||
{
|
||||
unsigned long l;
|
||||
const char *sr;
|
||||
|
||||
l = ERR_peek_error();
|
||||
sr = ERR_reason_error_string(l);
|
||||
sm_syslog(LOG_WARNING, NOQID,
|
||||
"STARTTLS=server, error: accept failed=%d, SSL_error=%d, errno=%d, retry=%d, relay=%.100s",
|
||||
r, ssl_err, errno, i,
|
||||
"STARTTLS=server, error: accept failed=%d, reason=%s, SSL_error=%d, errno=%d, retry=%d, relay=%.100s",
|
||||
r, sr == NULL ? "unknown"
|
||||
: sr,
|
||||
ssl_err, errno, i,
|
||||
CurSmtpClient);
|
||||
if (LogLevel > 8)
|
||||
if (LogLevel > 9)
|
||||
tlslogerr("server");
|
||||
}
|
||||
tls_ok_srv = false;
|
||||
@ -3481,7 +3489,7 @@ smtp_data(smtp, e)
|
||||
collect(InChannel, true, NULL, e, true);
|
||||
|
||||
/* redefine message size */
|
||||
(void) sm_snprintf(buf, sizeof(buf), "%ld", e->e_msgsize);
|
||||
(void) sm_snprintf(buf, sizeof(buf), "%ld", PRT_NONNEGL(e->e_msgsize));
|
||||
macdefine(&e->e_macro, A_TEMP, macid("{msg_size}"), buf);
|
||||
|
||||
/* rscheck() will set Errors or EF_DISCARD if it trips */
|
||||
@ -3559,7 +3567,7 @@ smtp_data(smtp, e)
|
||||
}
|
||||
|
||||
/* Milter may have changed message size */
|
||||
(void) sm_snprintf(buf, sizeof(buf), "%ld", e->e_msgsize);
|
||||
(void) sm_snprintf(buf, sizeof(buf), "%ld", PRT_NONNEGL(e->e_msgsize));
|
||||
macdefine(&e->e_macro, A_TEMP, macid("{msg_size}"), buf);
|
||||
|
||||
/* abort message filters that didn't get the body & log msg is OK */
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
#include <sendmail.h>
|
||||
|
||||
SM_RCSID("@(#)$Id: stab.c,v 8.89 2006/08/15 23:24:58 ca Exp $")
|
||||
SM_RCSID("@(#)$Id: stab.c,v 8.91 2011/08/08 17:33:34 ca Exp $")
|
||||
|
||||
/*
|
||||
** STAB -- manage the symbol table
|
||||
@ -65,7 +65,7 @@ stab(name, type, op)
|
||||
sm_dprintf("(hfunc=%d) ", hfunc);
|
||||
|
||||
ps = &SymTab[hfunc];
|
||||
if (type == ST_MACRO || type == ST_RULESET)
|
||||
if (type == ST_MACRO || type == ST_RULESET || type == ST_NAMECANON)
|
||||
{
|
||||
while ((s = *ps) != NULL &&
|
||||
(s->s_symtype != type || strcmp(name, s->s_name)))
|
||||
@ -113,10 +113,6 @@ stab(name, type, op)
|
||||
len = sizeof(s->s_class);
|
||||
break;
|
||||
|
||||
case ST_ADDRESS:
|
||||
len = sizeof(s->s_address);
|
||||
break;
|
||||
|
||||
case ST_MAILER:
|
||||
len = sizeof(s->s_mailer);
|
||||
break;
|
||||
|
17
src/util.c
17
src/util.c
@ -13,7 +13,7 @@
|
||||
|
||||
#include <sendmail.h>
|
||||
|
||||
SM_RCSID("@(#)$Id: util.c,v 8.416 2009/12/18 17:05:26 ca Exp $")
|
||||
SM_RCSID("@(#)$Id: util.c,v 8.425 2012/03/03 00:10:43 ca Exp $")
|
||||
|
||||
#include <sm/sendmail.h>
|
||||
#include <sysexits.h>
|
||||
@ -2638,7 +2638,13 @@ proc_list_drop(pid, st, other)
|
||||
mark_work_group_restart(ProcListVec[i].proc_other, st);
|
||||
}
|
||||
else if (type == PROC_QUEUE)
|
||||
{
|
||||
CurRunners -= ProcListVec[i].proc_count;
|
||||
|
||||
/* CHK_CUR_RUNNERS() can't be used here: uses syslog() */
|
||||
if (CurRunners < 0)
|
||||
CurRunners = 0;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
@ -2702,6 +2708,14 @@ proc_list_probe()
|
||||
(int) ProcListVec[i].proc_pid);
|
||||
ProcListVec[i].proc_pid = NO_PID;
|
||||
SM_FREE_CLR(ProcListVec[i].proc_task);
|
||||
|
||||
if (ProcListVec[i].proc_type == PROC_QUEUE)
|
||||
{
|
||||
CurRunners -= ProcListVec[i].proc_count;
|
||||
CHK_CUR_RUNNERS("proc_list_probe", i,
|
||||
ProcListVec[i].proc_count);
|
||||
}
|
||||
|
||||
CurChildren--;
|
||||
}
|
||||
else
|
||||
@ -2852,3 +2866,4 @@ count_open_connections(hostaddr)
|
||||
}
|
||||
return n;
|
||||
}
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998-2011 Sendmail, Inc. and its suppliers.
|
||||
* Copyright (c) 1998-2012 Sendmail, Inc. and its suppliers.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 1983 Eric P. Allman. All rights reserved.
|
||||
* Copyright (c) 1988, 1993
|
||||
@ -13,6 +13,6 @@
|
||||
|
||||
#include <sm/gen.h>
|
||||
|
||||
SM_RCSID("@(#)$Id: version.c,v 8.227 2011/04/26 23:02:35 ca Exp $")
|
||||
SM_RCSID("@(#)$Id: version.c,v 8.235 2012/12/19 05:11:44 ca Exp $")
|
||||
|
||||
char Version[] = "8.14.5";
|
||||
char Version[] = "8.14.6";
|
||||
|
Loading…
Reference in New Issue
Block a user