summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoritojun <itojun>2001-01-04 12:09:28 +0000
committeritojun <itojun>2001-01-04 12:09:28 +0000
commit89f3ed1eed523f2d20fc90fbe98407be0b6f431f (patch)
tree9617489162e73e6c36ba4df11bca9de699032f82
parent68bce6758b8957013c64c43bddd5433583aa31a3 (diff)
downloadpkgsrc-89f3ed1eed523f2d20fc90fbe98407be0b6f431f.tar.gz
upgrade to sendmail 8.11.2.
8.11.2/8.11.2 2000/12/29 Prevent a segmentation fault when trying to set a class in address test mode due to a negative array index. Audit other array indexing. This bug is not believed to be exploitable. Noted by Michal Zalewski of the "Internet for Schools" project (IdS). Add an FFR (for future release) to drop privileges when using address test mode. This will be turned on in 8.12. It can be enabled by compiling with: APPENDDEF(`conf_sendmail_ENVDEF', `-D_FFR_TESTMODE_DROP_PRIVS') in your devtools/Site/site.config.m4 file. Suggested by Michal Zalewski of the "Internet for Schools" project (IdS). Fix potential problem with Cyrus-SASL security layer which may have caused I/O errors, especially for mechanism DIGEST-MD5. When QueueSortOrder was set to host, sendmail might not read enough of the queue file to determine the host, making the sort sub-optimal. Problem noted by Jeff Earickson of Colby College. Don't issue DSNs for addresses which use the NOTIFY parameter (per RFC 1891) but don't have FAILURE as value. Initialize Cyrus-SASL library before the SMTP daemon is started. This implies that every change to SASL related files requires a restart of the daemon, e.g., Sendmail.conf, new SASL mechanisms (in form of shared libraries). Properly set the STARTTLS related macros during a queue run for a cached connection. Bug reported by Michael Kellen of NxNetworks, Inc. Log the server name in relay= for ruleset tls_server instead of the client name. Include original length of bad field/header when reporting MaxMimeHeaderLength problems. Requested by Ulrich Windl of the Universitat Regensburg. Fix delivery to set-user-ID files that are expanded from aliases in DeliveryMode queue. Problem noted by Ric Anderson of the University of Arizona. Fix LDAP map -m (match only) flag. Problem noted by Jeff Giuliano of Collective Technologies. Avoid using a negative argument for sleep() calls when delaying answers to EXPN/VRFY commands on systems which respond very slowly. Problem noted by Mikolaj J. Habryn of Optus Internet Engineering. Make sure the F=u flag is set in the default prog mailer definition. Problem noted by Kari Hurtta of the Finnish Meteorological Institute. Fix IPv6 check for unspecified addresses. Patch from Jun-ichiro itojun Hagino of the KAME Project. Fix return values for IRIX nsd map. From Kari Hurtta of the Finnish Meteorological Institute. Fix parsing of DaemonPortOptions and ClientPortOptions. Read all of the parameters to find Family= setting before trying to interpret Addr= and Port=. Problem noted by Valdis Kletnieks of Virginia Tech. When delivering to a file directly from an alias, do not call initgroups(); instead use the DefaultUser group information. Problem noted by Marc Schaefer of ALPHANET NF. RunAsUser now overrides the ownership of the control socket, if created. Otherwise, sendmail can not remove it upon close. Problem noted by Werner Wiethege. Fix ConnectionRateThrottle counting as the option is the number of overall connections, not the number of connections per socket. A future version may change this to per socket counting. Portability: Clean up libsmdb so it functions properly on platforms where sizeof(u_int32_t) != sizeof(size_t). Problem noted by Rein Tollevik of Basefarm AS. Fix man page formatting for compatibility with Solaris' whatis. From Stephen Gildea of InTouch Systems, Inc. UnixWare 7 includes snprintf() support. From Larry Rosenman. IPv6 changes for platforms using KAME. Patch from Jun-ichiro itojun Hagino of the KAME Project. Avoid a typedef compile conflict with Berkeley DB 3.X and Solaris 2.5 or earlier. Problem noted by Bob Hughes of Pacific Access. Add preliminary support for AIX 5. Contributed by Valdis Kletnieks of Virginia Tech. Solaris 9 load average support from Andrew Tucker of Sun Microsystems. CONFIG: Reject addresses of the form a!b if FEATURE(`nouucp', `r') is used. Problem noted by Phil Homewood of Asia Online, patch from Neil Rickert of Northern Illinois University. CONFIG: Change the default DNS based blacklist server for FEATURE(`dnsbl') to blackholes.mail-abuse.org. CONFIG: Deal correctly with the 'C' flag in {daemon_flags}, i.e., implicitly assume canonical host names. CONFIG: Deal with "::" in IPv6 addresses for access_db. Based on patch by Motonori Nakamura of Kyoto University. CONFIG: New OSTYPE(`aix5') contributed by Valdis Kletnieks of Virginia Tech. CONFIG: Pass the illegal header form <list:;> through untouched instead of making it worse. Problem noted by Motonori Nakamura of Kyoto University. CONTRIB: Added buildvirtuser (see `perldoc contrib/buildvirtuser`). CONTRIB: qtool.pl: An empty queue is not an error. Problem noted by Jan Krueger of digitalanswers communications consulting gmbh. CONTRIB: domainmap.m4: Handle domains with '-' in them. From Mark Roth of the University of Illinois at Urbana-Champaign. DEVTOOLS: Change the internal devtools OS, REL, and ARCH m4 variables into bldOS, bldREL, and bldARCH to prevent namespace collisions. Problem noted by Motonori Nakamura of Kyoto University. RMAIL: Undo the 8.11.1 change to use -G when calling sendmail. It causes some changes in behavior and may break rmail for installations where sendmail is actually a wrapper to another MTA. The change will re-appear in a future version. SMRSH: Use the vendor supplied directory on HPUX 10.X, HPUX 11.X, and SunOS 5.8. Requested by Jeff A. Earickson of Colby College and John Beck of Sun Microsystems. VACATION: Fix pattern matching for addresses to ignore. VACATION: Don't reply to addresses of the form owner-* or *-owner. New Files: cf/ostype/aix5.m4 contrib/buildvirtuser devtools/OS/AIX.5.0
-rw-r--r--mail/sendmail/Makefile15
-rw-r--r--mail/sendmail/files/md55
-rw-r--r--mail/sendmail/files/patch-sum4
-rw-r--r--mail/sendmail/patches/patch-af101
-rw-r--r--mail/sendmail/pkg/PLIST.common3
5 files changed, 94 insertions, 34 deletions
diff --git a/mail/sendmail/Makefile b/mail/sendmail/Makefile
index 3e4eb2adc75..1cda5d2dc79 100644
--- a/mail/sendmail/Makefile
+++ b/mail/sendmail/Makefile
@@ -1,19 +1,12 @@
-# $NetBSD: Makefile,v 1.25 2000/11/19 07:44:38 taca Exp $
+# $NetBSD: Makefile,v 1.26 2001/01/04 12:09:28 itojun Exp $
-DISTNAME= sendmail.8.11.1
-PKGNAME= sendmail-8.11.1
+DISTNAME= sendmail.8.11.2
+PKGNAME= sendmail-8.11.2
CATEGORIES= mail
MASTER_SITES= ftp://ftp.sendmail.org/pub/sendmail/ \
ftp://ftp.cert.dfn.de/pub/tools/net/sendmail/ \
ftp://ftp.kyoto.wide.ad.jp/pub/mail/sendmail/
-PATCH_SITES= ftp://ftp.kyoto.wide.ad.jp/pub/mail/smtpfeed/
-PATCHFILES= sendmail8.11.1+3.4W.patch.gz
-PATCH_DIST_ARGS=-d ${WRKSRC}/sendmail -E ${PATCH_DIST_STRIP}
-.if !(defined(PATCH_DEBUG) || defined(PKG_VERBOSE))
-PATCH_DIST_ARGS+=--forward --quiet
-.endif
-
MAINTAINER= packages@netbsd.org
HOMEPAGE= http://www.sendmail.org/
@@ -56,7 +49,7 @@ post-patch:
${CP} ${PKGDIR}/DESCR ${DESCR_SRC}
${ECHO} '---' >> ${DESCR_SRC}
${ECHO} -n 'compiled features:' >> ${DESCR_SRC}
- ${ECHO} -n ' WIDE' >> ${DESCR_SRC}
+# ${ECHO} -n ' WIDE' >> ${DESCR_SRC}
.if defined(USE_INET6) && ${USE_INET6} == YES
${CAT} ${FILESDIR}/site.config.m4-v6 >> ${SITECONFIG}
${ECHO} -n ' INET6' >> ${DESCR_SRC}
diff --git a/mail/sendmail/files/md5 b/mail/sendmail/files/md5
index 4f91777ba8b..46aa00869d4 100644
--- a/mail/sendmail/files/md5
+++ b/mail/sendmail/files/md5
@@ -1,4 +1,3 @@
-$NetBSD: md5,v 1.7 2000/11/19 07:44:39 taca Exp $
+$NetBSD: md5,v 1.8 2001/01/04 12:09:29 itojun Exp $
-MD5 (sendmail.8.11.1.tar.gz) = 9118a555141493fb574a588d50f57215
-MD5 (sendmail8.11.1+3.4W.patch.gz) = fe4a1bd09c1cbc35776c4d6730e91e37
+MD5 (sendmail.8.11.2.tar.gz) = eee46aa3a3215e02c1aa7f1c49c5e99c
diff --git a/mail/sendmail/files/patch-sum b/mail/sendmail/files/patch-sum
index 51acccc3aa5..1499588a1bf 100644
--- a/mail/sendmail/files/patch-sum
+++ b/mail/sendmail/files/patch-sum
@@ -1,8 +1,8 @@
-$NetBSD: patch-sum,v 1.15 2000/12/07 15:53:09 itojun Exp $
+$NetBSD: patch-sum,v 1.16 2001/01/04 12:09:29 itojun Exp $
MD5 (patch-aa) = 8b9fcec3b4f82a30c7a167c32a00841f
MD5 (patch-ab) = df740f28896a0851159e3e7a7fcfdb5a
MD5 (patch-ac) = 6afb53121cfd919c8cb8a37bea3b90f9
MD5 (patch-ad) = f6b38b13c7e4ee03f78859d59fbd74fd
MD5 (patch-ae) = 25f9ec8f39dbc92c42ddde565e3fa3a5
-MD5 (patch-af) = 354451c623f6ff59fe2b7edc2928eef8
+MD5 (patch-af) = ead9fa73121af3fb09cb449429ffe091
diff --git a/mail/sendmail/patches/patch-af b/mail/sendmail/patches/patch-af
index 228ef93917b..c5353a03b31 100644
--- a/mail/sendmail/patches/patch-af
+++ b/mail/sendmail/patches/patch-af
@@ -1,24 +1,91 @@
-$NetBSD: patch-af,v 1.5 2000/12/07 15:53:10 itojun Exp $
+$NetBSD: patch-af,v 1.6 2001/01/04 12:09:29 itojun Exp $
---- sendmail/conf.c.orig Sun Sep 24 01:54:01 2000
-+++ sendmail/conf.c Thu Dec 7 17:12:14 2000
-@@ -4911,3 +4911,3 @@
- ia6 = sa->sin6.sin6_addr;
-- if (ia6.s6_addr == in6addr_any.s6_addr)
-+ if (IN6_IS_ADDR_UNSPECIFIED(&ia6))
+--- sendmail/conf.c.orig Fri Dec 29 08:51:54 2000
++++ sendmail/conf.c Thu Jan 4 20:58:00 2001
+@@ -4546,18 +4546,32 @@
+ static struct hostent he;
+ static char buf[1000];
+ extern struct hostent *_switch_gethostbyaddr_r();
+-
+- hp = _switch_gethostbyaddr_r(addr, len, type, &he, buf, sizeof(buf), &h_errno);
+ # else /* SOLARIS == 20300 || SOLARIS == 203 */
+ extern struct hostent *__switch_gethostbyaddr();
+-
+- hp = __switch_gethostbyaddr(addr, len, type);
+ # endif /* SOLARIS == 20300 || SOLARIS == 203 */
+ #else /* (SOLARIS > 10000 && SOLARIS < 20400) || (defined(SOLARIS) && SOLARIS < 204) */
+ # if NETINET6
+ int err;
+ # endif /* NETINET6 */
++#endif /* (SOLARIS > 10000 && SOLARIS < 20400) || (defined(SOLARIS) && SOLARIS < 204) */
++
++#if NETINET6
++ if (type == AF_INET6) {
++ if (IN6_IS_ADDR_UNSPECIFIED((struct in6_addr *)addr) ||
++ IN6_IS_ADDR_LINKLOCAL((struct in6_addr *)addr)) {
++ h_errno = HOST_NOT_FOUND;
++ return NULL;
++ }
++ }
++#endif /* NETINET6 */
+
++#if (SOLARIS > 10000 && SOLARIS < 20400) || (defined(SOLARIS) && SOLARIS < 204)
++# if SOLARIS == 20300 || SOLARIS == 203
++ hp = _switch_gethostbyaddr_r(addr, len, type, &he, buf, sizeof(buf), &h_errno);
++# else /* SOLARIS == 20300 || SOLARIS == 203 */
++ hp = __switch_gethostbyaddr(addr, len, type);
++# endif /* SOLARIS == 20300 || SOLARIS == 203 */
++#else /* (SOLARIS > 10000 && SOLARIS < 20400) || (defined(SOLARIS) && SOLARIS < 204) */
+ # if NETINET6
+ hp = getipnodebyaddr(addr, len, type, &err);
+ h_errno = err;
+@@ -4935,18 +4949,19 @@
+ switch (af)
+ {
+ case AF_INET6:
+- ia6 = sa->sin6.sin6_addr;
+-# ifdef __KAME__
+- /* convert into proper scoped address - */
+- if ((IN6_IS_ADDR_LINKLOCAL(&ia6) ||
+- IN6_IS_ADDR_SITELOCAL(&ia6)) &&
+- sa->sin6.sin6_scope_id == 0)
+- {
+- sa->sin6.sin6_scope_id = ntohs(ia6.s6_addr[3] |
+- ((unsigned int) ia6.s6_addr[2] << 8));
+- ia6.s6_addr[2] = ia6.s6_addr[3] = 0;
++# ifdef __KAME__
++ /* convert into proper scoped address */
++ if ((IN6_IS_ADDR_LINKLOCAL(&sa->sin6.sin6_addr) ||
++ IN6_IS_ADDR_SITELOCAL(&sa->sin6.sin6_addr)) &&
++ sa->sin6.sin6_scope_id == 0) {
++ struct in6_addr *ia6p;
++ ia6p = &sa->sin6.sin6_addr;
++ sa->sin6.sin6_scope_id = ntohs(ia6p->s6_addr[3] |
++ ((unsigned int)ia6p->s6_addr[2] << 8));
++ ia6p->s6_addr[2] = ia6p->s6_addr[3] = 0;
+ }
+-# endif /* __KAME__ */
++# endif
++ ia6 = sa->sin6.sin6_addr;
+ if (IN6_IS_ADDR_UNSPECIFIED(&ia6))
{
-@@ -5094,3 +5094,13 @@
- ia6 = sa->sin6.sin6_addr;
-- if (ia6.s6_addr == in6addr_any.s6_addr)
+ addr = anynet_ntop(&ia6, buf6, sizeof buf6);
+@@ -5129,6 +5144,18 @@
+
+ # if NETINET6
+ case AF_INET6:
+# ifdef __KAME__
-+ /* convert into proper scoped address - */
-+ if ((IN6_IS_ADDR_LINKLOCAL(&ia6) ||
-+ IN6_IS_ADDR_SITELOCAL(&ia6)) &&
++ /* convert into proper scoped address */
++ if ((IN6_IS_ADDR_LINKLOCAL(&sa->sin6.sin6_addr) ||
++ IN6_IS_ADDR_SITELOCAL(&sa->sin6.sin6_addr)) &&
+ sa->sin6.sin6_scope_id == 0) {
-+ sa->sin6.sin6_scope_id = ntohs(ia6.s6_addr[3] |
-+ ((unsigned int)ia6.s6_addr[2] << 8));
-+ ia6.s6_addr[2] = ia6.s6_addr[3] = 0;
++ struct in6_addr *ia6p;
++ ia6p = &sa->sin6.sin6_addr;
++ sa->sin6.sin6_scope_id = ntohs(ia6p->s6_addr[3] |
++ ((unsigned int)ia6p->s6_addr[2] << 8));
++ ia6p->s6_addr[2] = ia6p->s6_addr[3] = 0;
+ }
+# endif
-+ if (IN6_IS_ADDR_UNSPECIFIED(&ia6))
+ ia6 = sa->sin6.sin6_addr;
+ if (IN6_IS_ADDR_UNSPECIFIED(&ia6))
{
diff --git a/mail/sendmail/pkg/PLIST.common b/mail/sendmail/pkg/PLIST.common
index c9028e00f33..bbe47f7a6a6 100644
--- a/mail/sendmail/pkg/PLIST.common
+++ b/mail/sendmail/pkg/PLIST.common
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST.common,v 1.3 2000/11/19 07:44:39 taca Exp $
+@comment $NetBSD: PLIST.common,v 1.4 2001/01/04 12:09:29 itojun Exp $
bin/newaliases
bin/mailq
bin/hoststat
@@ -118,6 +118,7 @@ share/sendmail/mailer/uucp.m4
share/sendmail/ostype/aix2.m4
share/sendmail/ostype/aix3.m4
share/sendmail/ostype/aix4.m4
+share/sendmail/ostype/aix5.m4
share/sendmail/ostype/altos.m4
share/sendmail/ostype/amdahl-uts.m4
share/sendmail/ostype/aux.m4