Fix an abort() caused by miscalculating the size of an internal buffer. This can crash applications using "libspf2" (e.g. "milter-greylist") in an e-mail gets delivered via SMTP over IPv6 depending on the remote machine's IPv6 address.diff -r1.6 -r1.7 pkgsrc/mail/libspf2/Makefile
(tron)
@@ -1,16 +1,17 @@ | @@ -1,16 +1,17 @@ | |||
1 | # $NetBSD: Makefile,v 1.6 2009/07/17 18:00:18 adrianp Exp $ | 1 | # $NetBSD: Makefile,v 1.7 2009/09/08 10:36:27 tron Exp $ | |
2 | 2 | |||
3 | DISTNAME= libspf2-1.2.9 | 3 | DISTNAME= libspf2-1.2.9 | |
4 | PKGREVISION= 1 | |||
4 | CATEGORIES= mail | 5 | CATEGORIES= mail | |
5 | MASTER_SITES= http://www.libspf2.org/spf/ | 6 | MASTER_SITES= http://www.libspf2.org/spf/ | |
6 | 7 | |||
7 | MAINTAINER= pkgsrc-users@NetBSD.org | 8 | MAINTAINER= pkgsrc-users@NetBSD.org | |
8 | HOMEPAGE= http://www.libspf2.org/ | 9 | HOMEPAGE= http://www.libspf2.org/ | |
9 | COMMENT= Implementation of the Sender Policy Framework | 10 | COMMENT= Implementation of the Sender Policy Framework | |
10 | 11 | |||
11 | PKG_DESTDIR_SUPPORT= user-destdir | 12 | PKG_DESTDIR_SUPPORT= user-destdir | |
12 | 13 | |||
13 | GNU_CONFIGURE= YES | 14 | GNU_CONFIGURE= YES | |
14 | USE_LIBTOOL= YES | 15 | USE_LIBTOOL= YES | |
15 | 16 | |||
16 | CONFLICTS+= libspf_alt-* | 17 | CONFLICTS+= libspf_alt-* |
@@ -1,5 +1,6 @@ | @@ -1,5 +1,6 @@ | |||
1 | $NetBSD: distinfo,v 1.3 2009/01/10 23:34:13 adrianp Exp $ | 1 | $NetBSD: distinfo,v 1.4 2009/09/08 10:36:27 tron Exp $ | |
2 | 2 | |||
3 | SHA1 (libspf2-1.2.9.tar.gz) = 15dfe3b9172180654f4de4dd85f3f01e3bc11503 | 3 | SHA1 (libspf2-1.2.9.tar.gz) = 15dfe3b9172180654f4de4dd85f3f01e3bc11503 | |
4 | RMD160 (libspf2-1.2.9.tar.gz) = d0754d47e297a00038e4185e17704a24d38a4888 | 4 | RMD160 (libspf2-1.2.9.tar.gz) = d0754d47e297a00038e4185e17704a24d38a4888 | |
5 | Size (libspf2-1.2.9.tar.gz) = 518001 bytes | 5 | Size (libspf2-1.2.9.tar.gz) = 518001 bytes | |
6 | SHA1 (patch-aa) = 81f60333222b510cb511b80aedbb679d2212ab0d |
$NetBSD: patch-aa,v 1.1 2009/09/08 10:36:27 tron Exp $
Fix an abort() caused by miscalculating the size of an internal buffer.
This can crash applications using "libspf2" (e.g. "milter-greylist")
in an e-mail gets delivered via SMTP over IPv6 depending on the
remote machine's IPv6 address.
--- src/libspf2/spf_expand.c.orig 2008-11-03 21:29:00.000000000 +0000
+++ src/libspf2/spf_expand.c 2009-09-08 11:27:52.000000000 +0100
@@ -245,7 +245,7 @@
case PARM_CLIENT_IP: /* SMTP client IP */
#ifdef COMPUTE
if (compute_length) {
- len = sizeof(ip6_buf);
+ len = sizeof(ip6_rbuf);
if (d->dv.url_encode)
len *= 3;
buflen += len;