summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Scherbaum <dertobi123@gentoo.org>2008-06-15 10:22:21 +0000
committerTobias Scherbaum <dertobi123@gentoo.org>2008-06-15 10:22:21 +0000
commit7e95b1f92fd3e0f45b7f4e157bfd55194dc72194 (patch)
treee4479c9c5b5897fc37b397db966e44cf60af1885 /mail-filter/procmail
parentBug #226505 - For compatibility with phase execution order in (diff)
downloadgentoo-2-7e95b1f92fd3e0f45b7f4e157bfd55194dc72194.tar.gz
gentoo-2-7e95b1f92fd3e0f45b7f4e157bfd55194dc72194.tar.bz2
gentoo-2-7e95b1f92fd3e0f45b7f4e157bfd55194dc72194.zip
fix lockfile perms (#121221), fix locking issues w/ NFS (#156493), fix memory allocation when piping mail through a filter (#200006), unset MAILSPOOLHOME (#108869)
(Portage version: 2.1.5.5)
Diffstat (limited to 'mail-filter/procmail')
-rw-r--r--mail-filter/procmail/ChangeLog13
-rw-r--r--mail-filter/procmail/files/gentoo-maildir3.diff12
-rw-r--r--mail-filter/procmail/files/procmail-pipealloc.diff21
-rw-r--r--mail-filter/procmail/procmail-3.22-r9.ebuild85
4 files changed, 129 insertions, 2 deletions
diff --git a/mail-filter/procmail/ChangeLog b/mail-filter/procmail/ChangeLog
index 471ae9a031c0..b69655aea6ac 100644
--- a/mail-filter/procmail/ChangeLog
+++ b/mail-filter/procmail/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for mail-filter/procmail
-# Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/mail-filter/procmail/ChangeLog,v 1.28 2007/02/22 01:00:33 peper Exp $
+# Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/mail-filter/procmail/ChangeLog,v 1.29 2008/06/15 10:22:20 dertobi123 Exp $
+
+*procmail-3.22-r9 (15 Jun 2008)
+
+ 15 Jun 2008; Tobias Scherbaum <dertobi123@gentoo.org>
+ +files/gentoo-maildir3.diff, +files/procmail-pipealloc.diff,
+ +procmail-3.22-r9.ebuild:
+ fix lockfile perms (#121221), fix locking issues w/ NFS (#156493), fix
+ memory allocation when piping mail through a filter (#200006), unset
+ MAILSPOOLHOME (#108869)
22 Feb 2007; Piotr Jaroszyński <peper@gentoo.org> ChangeLog:
Transition to Manifest2.
diff --git a/mail-filter/procmail/files/gentoo-maildir3.diff b/mail-filter/procmail/files/gentoo-maildir3.diff
new file mode 100644
index 000000000000..51dfef64ae8b
--- /dev/null
+++ b/mail-filter/procmail/files/gentoo-maildir3.diff
@@ -0,0 +1,12 @@
+--- procmail-3.22/src/authenticate.c.orig 2002-07-26 20:38:52.000000000 -0400
++++ procmail-3.22/src/authenticate.c 2002-07-26 20:57:56.000000000 -0400
+@@ -39,7 +39,7 @@
+ #include "authenticate.h"
+
+ #ifndef MAILSPOOLDIR
+-#define MAILSPOOLDIR "/var/spool/mail/" /* watch the trailing / */
++#define MAILSPOOLDIR "" /* watch the trailing / */
+ #endif
+ #ifndef MAILSPOOLSUFFIX
+ #define MAILSPOOLSUFFIX "" /* suffix to force maildir or MH style */
+
diff --git a/mail-filter/procmail/files/procmail-pipealloc.diff b/mail-filter/procmail/files/procmail-pipealloc.diff
new file mode 100644
index 000000000000..fdd5cc97328a
--- /dev/null
+++ b/mail-filter/procmail/files/procmail-pipealloc.diff
@@ -0,0 +1,21 @@
+diff -rc procmail-3.22/src/pipes.c procmail-3.22-fixed/src/pipes.c
+*** procmail-3.22/src/pipes.c Tue Sep 11 00:58:44 2001
+--- procmail-3.22-fixed/src/pipes.c Wed Nov 21 23:53:39 2007
+***************
+*** 194,200 ****
+ makeblock(&temp,Stdfilled);
+ tmemmove(temp.p,Stdout,Stdfilled);
+ readdyn(&temp,&Stdfilled,Stdfilled+backlen+1);
+! Stdout=realloc(Stdout,&Stdfilled+1);
+ tmemmove(Stdout,temp.p,Stdfilled+1);
+ freeblock(&temp);
+ retStdout(Stdout,pwait&&pipw,!backblock);
+--- 194,200 ----
+ makeblock(&temp,Stdfilled);
+ tmemmove(temp.p,Stdout,Stdfilled);
+ readdyn(&temp,&Stdfilled,Stdfilled+backlen+1);
+! Stdout=realloc(Stdout,Stdfilled+1);
+ tmemmove(Stdout,temp.p,Stdfilled+1);
+ freeblock(&temp);
+ retStdout(Stdout,pwait&&pipw,!backblock);
+
diff --git a/mail-filter/procmail/procmail-3.22-r9.ebuild b/mail-filter/procmail/procmail-3.22-r9.ebuild
new file mode 100644
index 000000000000..0721d92fbfc6
--- /dev/null
+++ b/mail-filter/procmail/procmail-3.22-r9.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/mail-filter/procmail/procmail-3.22-r9.ebuild,v 1.1 2008/06/15 10:22:20 dertobi123 Exp $
+
+inherit eutils flag-o-matic
+
+DESCRIPTION="Mail delivery agent/filter"
+HOMEPAGE="http://www.procmail.org/"
+SRC_URI="http://www.procmail.org/${P}.tar.gz"
+
+LICENSE="|| ( Artistic GPL-2 )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE="mbox selinux"
+
+DEPEND="virtual/libc virtual/mta"
+RDEPEND="virtual/libc
+ selinux? ( sec-policy/selinux-procmail )"
+PROVIDE="virtual/mda"
+
+src_compile() {
+ # -finline-functions (implied by -O3) leaves strstr() in an infinite loop.
+ # To work around this, we append -fno-inline-functions to CFLAGS
+ append-flags -fno-inline-functions
+
+ sed -e "s:CFLAGS0 = -O:CFLAGS0 = ${CFLAGS}:" \
+ -e "s:LOCKINGTEST=__defaults__:#LOCKINGTEST=__defaults__:" \
+ -e "s:#LOCKINGTEST=/tmp:LOCKINGTEST=/tmp:" \
+ -i Makefile || die "sed failed"
+
+ # disable flock, using both fcntl and flock style locking
+ # doesn't work with NFS with 2.6.17+ kernels, bug #156493
+
+ sed -e "s:/\*#define NO_flock_LOCK:#define NO_flock_LOCK:" \
+ -i config.h || die "sed failed"
+
+ if ! use mbox ; then
+ echo "# Use maildir-style mailbox in user's home directory" > "${S}"/procmailrc
+ echo 'DEFAULT=$HOME/.maildir/' >> "${S}"/procmailrc
+ cd "${S}"
+ epatch "${FILESDIR}/gentoo-maildir3.diff"
+ else
+ echo '# Use mbox-style mailbox in /var/spool/mail' > "${S}"/procmailrc
+ echo 'DEFAULT=/var/spool/mail/$LOGNAME' >> "${S}"/procmailrc
+ fi
+
+ # Do not use lazy bindings on lockfile and procmail
+ epatch "${FILESDIR}/${PN}-lazy-bindings.diff"
+
+ # Fix for bug #102340
+ epatch "${FILESDIR}/${PN}-comsat-segfault.diff"
+
+ # Fix for bug #119890
+ epatch "${FILESDIR}/${PN}-maxprocs-fix.diff"
+
+ # Fix for bug #200006
+ epatch "${FILESDIR}/${PN}-pipealloc.diff"
+
+ emake || die
+}
+
+src_install() {
+ cd "${S}"/new
+ insinto /usr/bin
+ insopts -m 6755
+ doins procmail || die
+
+ doins lockfile || die
+ fowners root:mail /usr/bin/lockfile
+ fperms 2775 /usr/bin/lockfile
+
+ dobin formail mailstat || die
+ insopts -m 0644
+
+ doman *.1 *.5
+
+ cd "${S}"
+ dodoc Artistic FAQ FEATURES HISTORY INSTALL KNOWN_BUGS README
+
+ insinto /etc
+ doins procmailrc || die
+
+ docinto examples
+ dodoc examples/*
+}