diff options
author | adrianp <adrianp> | 2006-05-12 22:23:09 +0000 |
---|---|---|
committer | adrianp <adrianp> | 2006-05-12 22:23:09 +0000 |
commit | 8beb5d69b6258c2b22e40c3ba0b9066cc77eccd2 (patch) | |
tree | e42d7d3788997dad69d6c4f36fc405806b0d402d | |
parent | 7fc986d2c1268ab5c4d0549218b55f9fd9869149 (diff) | |
download | pkgsrc-8beb5d69b6258c2b22e40c3ba0b9066cc77eccd2.tar.gz |
Update to sendmail 8.13.6
> 8.13.6/8.13.6 2006/03/22
> SECURITY: Replace unsafe use of setjmp(3)/longjmp(3) in the server
> and client side of sendmail with timeouts in the libsm I/O
> layer and fix problems in that code. Also fix handling of
> a buffer in sm_syslog() which could have been used as an
> attack vector to exploit the unsafe handling of
> setjmp(3)/longjmp(3) in combination with signals.
> Problem detected by Mark Dowd of ISS X-Force.
> Handle theoretical integer overflows that could triggered if
> the server accepted headers larger than the maximum
> (signed) integer value. This is prevented in the default
> configuration by restricting the size of a header, and on
> most machines memory allocations would fail before reaching
> those values. Problems found by Phil Brass of ISS.
> If a server returns 421 for an RSET command when trying to start
> another transaction in a session while sending mail, do
> not trigger an internal consistency check. Problem found
> by Allan E Johannesen of Worcester Polytechnic Institute.
> If a server returns a 5xy error code (other than 501) in response
> to a STARTTLS command despite the fact that it advertised
> STARTTLS and that the code is not valid according to RFC
> 2487 treat it nevertheless as a permanent failure instead
> of a protocol error (which has been changed to a
> temporary error in 8.13.5). Problem reported by Jeff
> A. Earickson of Colby College.
> Clear SMTP state after a HELO/EHLO command. Patch from John
> Myers of Proofpoint.
> Observe MinQueueAge option when gathering entries from the queue
> for sorting etc instead of waiting until the entries are
> processed. Patch from Brian Fundakowski Feldman.
> Set up TLS session cache to properly handle clients that try to
> resume a stored TLS session.
> Properly count the number of (direct) child processes such that
> a configured value (MaxDaemonChildren) is not exceeded.
> Based on patch from Attila Bruncsak.
> LIBMILTER: Remove superfluous backslash in macro definition
> (libmilter.h). Based on patch from Mike Kupfer of
> Sun Microsystems.
> LIBMILTER: Don't try to set SO_REUSEADDR on UNIX domain sockets.
> This generates an error message from libmilter on
> Solaris, though other systems appear to just discard the
> request silently.
> LIBMILTER: Deal with sigwait(2) implementations that return
> -1 and set errno instead of returning an error code
> directly. Patch from Chris Adams of HiWAAY Informations
> Services.
> Portability:
> Fix compilation checks for closefrom(3) and statvfs(2)
> in NetBSD. Problem noted by S. Moonesamy, patch from
> Andrew Brown.
-rw-r--r-- | mail/sendmail/Makefile | 3 | ||||
-rw-r--r-- | mail/sendmail/Makefile.common | 7 | ||||
-rw-r--r-- | mail/sendmail/distinfo | 17 | ||||
-rw-r--r-- | mail/sendmail/patches/patch-ag | 36 | ||||
-rw-r--r-- | mail/sendmail/patches/patch-ai | 24 | ||||
-rw-r--r-- | mail/sendmail/patches/patch-aj | 51 | ||||
-rw-r--r-- | mail/sendmail/patches/patch-ak | 13 | ||||
-rw-r--r-- | mail/sendmail/patches/patch-al | 13 |
8 files changed, 13 insertions, 151 deletions
diff --git a/mail/sendmail/Makefile b/mail/sendmail/Makefile index 283424218e7..38b65838d7b 100644 --- a/mail/sendmail/Makefile +++ b/mail/sendmail/Makefile @@ -1,9 +1,8 @@ -# $NetBSD: Makefile,v 1.86 2006/05/01 02:57:03 jlam Exp $ +# $NetBSD: Makefile,v 1.87 2006/05/12 22:23:09 adrianp Exp $ .include "../../mail/sendmail/Makefile.common" PKGNAME= sendmail-${DIST_VERS} -PKGREVISION= 2 COMMENT= The well known Mail Transport Agent CONFLICTS+= courier-mta-[0-9]* fastforward>=0.51nb2 postfix-[0-9]* diff --git a/mail/sendmail/Makefile.common b/mail/sendmail/Makefile.common index a68c94d413b..137badb17ab 100644 --- a/mail/sendmail/Makefile.common +++ b/mail/sendmail/Makefile.common @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.common,v 1.33 2006/03/26 15:58:51 adrianp Exp $ +# $NetBSD: Makefile.common,v 1.34 2006/05/12 22:23:09 adrianp Exp $ # # Makefile fragment shared with libmilter # @@ -10,9 +10,6 @@ MASTER_SITES= ftp://ftp.sendmail.org/pub/sendmail/ \ ftp://ftp.fu-berlin.de/pub/unix/mail/sendmail/ \ ftp://ftp.ayamura.org/pub/sendmail/ -PATCH_SITES= ${MASTER_SITES} -PATCHFILES= 8.13.5.p0 - MAINTAINER= adrianp@NetBSD.org HOMEPAGE= http://www.sendmail.org/ @@ -22,7 +19,7 @@ DISTINFO_FILE?= ${.CURDIR}/../../mail/sendmail/distinfo FILESDIR?= ${.CURDIR}/../../mail/sendmail/files PATCHDIR?= ${.CURDIR}/../../mail/sendmail/patches -DIST_VERS= 8.13.5 +DIST_VERS= 8.13.6 MAKE_ENV+= BSD_BINOWN=${BINOWN:Q} BSD_BINGRP=${BINGRP:Q} \ BSD_MANOWN=${MANOWN:Q} BSD_MANGRP=${MANGRP:Q} \ diff --git a/mail/sendmail/distinfo b/mail/sendmail/distinfo index 21e58f3d5d4..f0467a1e147 100644 --- a/mail/sendmail/distinfo +++ b/mail/sendmail/distinfo @@ -1,20 +1,13 @@ -$NetBSD: distinfo,v 1.27 2006/03/22 19:56:36 adrianp Exp $ +$NetBSD: distinfo,v 1.28 2006/05/12 22:23:09 adrianp Exp $ -SHA1 (sendmail.8.13.5.tar.gz) = 3c6a6caf1deaf960b340b03128df63e4cd553cde -RMD160 (sendmail.8.13.5.tar.gz) = 976af4c8c02adb7dd4a2610f905e91027c84d92d -Size (sendmail.8.13.5.tar.gz) = 1978185 bytes -SHA1 (8.13.5.p0) = 34dfcf80717cb5c48687779ab96fda71e5d7771b -RMD160 (8.13.5.p0) = 639931160ecb4a0aec3279c3d22353982ecfcf38 -Size (8.13.5.p0) = 72693 bytes +SHA1 (sendmail.8.13.6.tar.gz) = 6c35f4780bd9fc5f8982977ad699752e2ccb26d0 +RMD160 (sendmail.8.13.6.tar.gz) = cbb0649b5dec8e4b4850c76ad4a132a15335df3b +Size (sendmail.8.13.6.tar.gz) = 1986576 bytes SHA1 (patch-aa) = b7ceece7760e3d637016da039f8429c1fb89f2cf SHA1 (patch-ab) = a2abf6e78772e257e2a1973e7730159ff24a91aa SHA1 (patch-ac) = 96c19300b4188dbcbd202768eea912f675dadc27 SHA1 (patch-ad) = 7232cc7ceb46a2dbf631d61185e4c6ca4af18a13 SHA1 (patch-ae) = ae06caa125fe4d4fc85123dc0a5d0016cd099ebd SHA1 (patch-af) = d26481845328adad6d46fdf797785ec2ad003e28 -SHA1 (patch-ag) = 1dc55dd77a3cb2617b6f05ccbbdc3b112686b87a +SHA1 (patch-ag) = 672c3e8a0c897f2c721d45393d85d4ea819d55a6 SHA1 (patch-ah) = e6be09008b9230ffdd1560aaacbdbb2ee4fb8028 -SHA1 (patch-ai) = 277891a001a14d49eda0631cbfec1383e3deeed0 -SHA1 (patch-aj) = a71a613451a168ef811e596990eb95748528fb9b -SHA1 (patch-ak) = 2a68861ef25d88f55b876e015c4b090b382e596b -SHA1 (patch-al) = eefcc0a1b124edb53f1a40007c883821978449ea diff --git a/mail/sendmail/patches/patch-ag b/mail/sendmail/patches/patch-ag index 4db95299f9e..572f0a9c201 100644 --- a/mail/sendmail/patches/patch-ag +++ b/mail/sendmail/patches/patch-ag @@ -1,42 +1,16 @@ -$NetBSD: patch-ag,v 1.11 2005/11/29 15:27:03 adrianp Exp $ +$NetBSD: patch-ag,v 1.12 2006/05/12 22:23:09 adrianp Exp $ ---- include/sm/conf.h.orig 2005-06-30 01:12:13.000000000 +0000 -+++ include/sm/conf.h 2005-10-24 04:26:55.000000000 +0000 -@@ -799,7 +799,11 @@ +--- include/sm/conf.h.orig 2006-01-27 18:43:44.000000000 +0000 ++++ include/sm/conf.h +@@ -801,7 +801,11 @@ extern unsigned int sleepX __P((unsigned # ifndef LA_TYPE # define LA_TYPE LA_SUBR # endif /* ! LA_TYPE */ +#if defined(__NetBSD__) && (__NetBSD_Version__ > 299000900) -+# define SFS_TYPE SFS_STATVFS /* use <sys/statvfs.h> statfs() impl */ ++# define SFS_TYPE SFS_STATVFS /* use <sys/statvfs.h> statfs() impl */ +#else # define SFS_TYPE SFS_MOUNT /* use <sys/mount.h> statfs() impl */ +#endif # define SPT_TYPE SPT_PSSTRINGS /* use PS_STRINGS pointer */ # endif /* defined(BSD4_4) && !defined(__bsdi__) && !defined(__GNU__) && !defined(DARWIN)*/ -@@ -914,9 +918,9 @@ - # ifndef LA_TYPE - # define LA_TYPE LA_SUBR - # endif /* ! LA_TYPE */ --# if defined(__NetBSD__) && defined(__NetBSD_Version__) && __NetBSD_Version__ >= 200040000 -+# if defined(__NetBSD__) && defined(__NetBSD_Version__) && __NetBSD_Version__ >= 299000900 - # undef SFS_TYPE --# define SFS_TYPE SFS_STATVFS -+# define SFS_TYPE SFS_STATVFS /* use <sys/statvfs.h> statfs() impl */ - # else - # define SFS_TYPE SFS_MOUNT /* use <sys/mount.h> statfs() impl */ - # endif -@@ -930,11 +934,12 @@ - # if defined(__NetBSD__) && defined(__NetBSD_Version__) && __NetBSD_Version__ >= 104170000 - # define HASSETUSERCONTEXT 1 /* BSDI-style login classes */ - # endif --# if defined(__NetBSD__) && defined(__NetBSD_Version__) && __NetBSD_Version__ >= 200060000 -+# if defined(__NetBSD__) && defined(__NetBSD_Version__) && __NetBSD_Version__ >= 299000900 - # define HASCLOSEFROM 1 /* closefrom(3) added in 2.0F */ - # endif - # if defined(__NetBSD__) - # define USESYSCTL 1 /* use sysctl(3) for getting ncpus */ -+# define SMRSH_CMDDIR "@@SMRSH_CMDDIR@@" - # include <sys/param.h> - # include <sys/sysctl.h> - # endif diff --git a/mail/sendmail/patches/patch-ai b/mail/sendmail/patches/patch-ai deleted file mode 100644 index 6051c28d28b..00000000000 --- a/mail/sendmail/patches/patch-ai +++ /dev/null @@ -1,24 +0,0 @@ -$NetBSD: patch-ai,v 1.4 2006/01/18 21:00:48 adrianp Exp $ - ---- sendmail/conf.c.orig 2005-07-26 06:45:38.000000000 +0100 -+++ sendmail/conf.c -@@ -3899,8 +3899,8 @@ vendor_pre_defaults(e) - ** /etc/mail/sendmail.cf without this - */ - -- setuserenv("ISP", NULL); -- setuserenv("SYSTYPE", NULL); -+ setuserenviron("ISP", NULL); -+ setuserenviron("SYSTYPE", NULL); - #endif /* apollo */ - } - -@@ -3914,7 +3914,7 @@ vendor_post_defaults(e) - - /* Makes sure the SOCK environment variable remains */ - if (p = getextenv("SOCK")) -- setuserenv("SOCK", p); -+ setuserenviron("SOCK", p); - #endif /* __QNX__ */ - #if defined(SUN_EXTENSIONS) && defined(SUN_DEFAULT_VALUES) - sun_post_defaults(e); diff --git a/mail/sendmail/patches/patch-aj b/mail/sendmail/patches/patch-aj deleted file mode 100644 index 84c8967a60d..00000000000 --- a/mail/sendmail/patches/patch-aj +++ /dev/null @@ -1,51 +0,0 @@ -$NetBSD: patch-aj,v 1.1 2006/01/18 21:00:48 adrianp Exp $ - ---- sendmail/main.c.orig 2004-06-17 17:39:21.000000000 +0100 -+++ sendmail/main.c -@@ -649,7 +649,7 @@ main(argc, argv, envp) - } - - /* prime the child environment */ -- setuserenv("AGENT", "sendmail"); -+ setuserenviron("AGENT", "sendmail"); - - (void) sm_signal(SIGPIPE, SIG_IGN); - OldUmask = umask(022); -@@ -1318,9 +1318,9 @@ main(argc, argv, envp) - if (TimeZoneSpec == NULL) - unsetenv("TZ"); - else if (TimeZoneSpec[0] != '\0') -- setuserenv("TZ", TimeZoneSpec); -+ setuserenviron("TZ", TimeZoneSpec); - else -- setuserenv("TZ", NULL); -+ setuserenviron("TZ", NULL); - tzset(); - - /* initialize mailbox database */ -@@ -3446,14 +3446,14 @@ getextenv(envar) - ** value -- the value to which it should be set. If - ** null, this is extracted from the incoming - ** environment. If that is not set, the call --** to setuserenv is ignored. -+** to setuserenviron is ignored. - ** - ** Returns: - ** none. - */ - - void --setuserenv(envar, value) -+setuserenviron(envar, value) - const char *envar; - const char *value; - { -@@ -3488,7 +3488,7 @@ setuserenv(envar, value) - - /* make sure it is in our environment as well */ - if (putenv(p) < 0) -- syserr("setuserenv: putenv(%s) failed", p); -+ syserr("setuserenviron: putenv(%s) failed", p); - } - /* - ** DUMPSTATE -- dump state diff --git a/mail/sendmail/patches/patch-ak b/mail/sendmail/patches/patch-ak deleted file mode 100644 index c01de974129..00000000000 --- a/mail/sendmail/patches/patch-ak +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-ak,v 1.1 2006/01/18 21:00:48 adrianp Exp $ - ---- sendmail/readcf.c.orig 2005-09-04 07:15:15.000000000 +0100 -+++ sendmail/readcf.c -@@ -679,7 +679,7 @@ readcf(cfname, safe, e) - p = strchr(bp, '='); - if (p != NULL) - *p++ = '\0'; -- setuserenv(&bp[1], p); -+ setuserenviron(&bp[1], p); - break; - - case 'X': /* mail filter */ diff --git a/mail/sendmail/patches/patch-al b/mail/sendmail/patches/patch-al deleted file mode 100644 index 8047557d8b2..00000000000 --- a/mail/sendmail/patches/patch-al +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-al,v 1.1 2006/01/18 21:00:48 adrianp Exp $ - ---- sendmail/sendmail.h.orig 2005-06-24 00:11:22.000000000 +0100 -+++ sendmail/sendmail.h -@@ -2541,7 +2541,7 @@ extern bool setvendor __P((char *)); - extern void set_op_mode __P((int)); - extern void setoption __P((int, char *, bool, bool, ENVELOPE *)); - extern sigfunc_t setsignal __P((int, sigfunc_t)); --extern void setuserenv __P((const char *, const char *)); -+extern void setuserenviron __P((const char *, const char *)); - extern void settime __P((ENVELOPE *)); - extern char *sfgets __P((char *, int, SM_FILE_T *, time_t, char *)); - extern char *shortenstring __P((const char *, size_t)); |