diff options
author | Tobias Scherbaum <dertobi123@gentoo.org> | 2008-06-15 10:22:21 +0000 |
---|---|---|
committer | Tobias Scherbaum <dertobi123@gentoo.org> | 2008-06-15 10:22:21 +0000 |
commit | 7e95b1f92fd3e0f45b7f4e157bfd55194dc72194 (patch) | |
tree | e4479c9c5b5897fc37b397db966e44cf60af1885 /mail-filter/procmail | |
parent | Bug #226505 - For compatibility with phase execution order in (diff) | |
download | gentoo-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/ChangeLog | 13 | ||||
-rw-r--r-- | mail-filter/procmail/files/gentoo-maildir3.diff | 12 | ||||
-rw-r--r-- | mail-filter/procmail/files/procmail-pipealloc.diff | 21 | ||||
-rw-r--r-- | mail-filter/procmail/procmail-3.22-r9.ebuild | 85 |
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/* +} |