diff options
author | 2009-10-20 17:46:56 +0000 | |
---|---|---|
committer | 2009-10-20 17:46:56 +0000 | |
commit | 9182e5db8b2296159f2687bcbab8e5410367f586 (patch) | |
tree | c99889cc8652c0f2d6944355db88a7df7d025543 /mail-mta | |
parent | Automated update of use.local.desc (diff) | |
download | historical-9182e5db8b2296159f2687bcbab8e5410367f586.tar.gz historical-9182e5db8b2296159f2687bcbab8e5410367f586.tar.bz2 historical-9182e5db8b2296159f2687bcbab8e5410367f586.zip |
Add patch to fix Dovecot authentication socket protocol error, thanks J G in bug #288520
Package-Manager: portage-2.2.00.14700-prefix/cvs/Darwin powerpc
Diffstat (limited to 'mail-mta')
-rw-r--r-- | mail-mta/exim/ChangeLog | 9 | ||||
-rw-r--r-- | mail-mta/exim/Manifest | 4 | ||||
-rw-r--r-- | mail-mta/exim/exim-4.69-r4.ebuild | 309 | ||||
-rw-r--r-- | mail-mta/exim/files/exim-4.69-dovecot-auth.patch | 16 |
4 files changed, 336 insertions, 2 deletions
diff --git a/mail-mta/exim/ChangeLog b/mail-mta/exim/ChangeLog index 6cf76caa6802..62cddf9e9efd 100644 --- a/mail-mta/exim/ChangeLog +++ b/mail-mta/exim/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for mail-mta/exim # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/mail-mta/exim/ChangeLog,v 1.151 2009/09/30 17:47:26 armin76 Exp $ +# $Header: /var/cvsroot/gentoo-x86/mail-mta/exim/ChangeLog,v 1.152 2009/10/20 17:46:55 grobian Exp $ + +*exim-4.69-r4 (20 Oct 2009) + + 20 Oct 2009; Fabian Groffen <grobian@gentoo.org> +exim-4.69-r4.ebuild, + +files/exim-4.69-dovecot-auth.patch: + Add patch to fix Dovecot authentication socket protocol error, thanks J G + in bug #288520 30 Sep 2009; Raúl Porcel <armin76@gentoo.org> exim-4.69-r3.ebuild: ia64/sparc stable wrt #283443 diff --git a/mail-mta/exim/Manifest b/mail-mta/exim/Manifest index 12b66d97469c..58cba9c3629b 100644 --- a/mail-mta/exim/Manifest +++ b/mail-mta/exim/Manifest @@ -4,6 +4,7 @@ AUX exim-4.20-maildir.patch 478 RMD160 50c6a1dd6ae3f7bb1776696d3d0d7a161c351fce AUX exim-4.30-conf.patch 887 RMD160 4e50bdb4f3a9f061c7f4da763ad5e427b9cbea26 SHA1 cf7ecab19aba3b758d736c584b98fa4be2338050 SHA256 a33425492f246c6afe3be21e83e0dc20ecd5ea300a172d877f666d077648eedf AUX exim-4.43-r2-localscan_dlopen.patch 9236 RMD160 d33f7bcf72f947e8d1a3d917713630100c175491 SHA1 e4239a1bf0261f99491b4a29b26bbe8d9beffbd8 SHA256 3ec15d2dfdf251c70647c3def09711385f23983eceeecb6ec9d42b39f54b198d AUX exim-4.69-buildconfig-cross-compile.patch 512 RMD160 2fc29b3615488d9d7de9f84bcbc734965cc4a8da SHA1 7777fe3567936e3c27824165d534e8a26b47923d SHA256 35853f00332447f3bf6b33fc3ff0032a83aa56b1f960dcd88f7d253934c3e2d1 +AUX exim-4.69-dovecot-auth.patch 488 RMD160 dc269b66688e99b10dc2491de67c95a9293d35c2 SHA1 b644f0e8f4ae0b3ac488152788366c39dcf89a06 SHA256 048c4a60e18a0643a5216320cd92d7ab4474eb5a07f490f9d8bd65727bc71393 AUX exim-4.69-r1.27021.patch 1447 RMD160 79269b955efee9c4bb99fc99cc026ec1b48f9712 SHA1 6c00bf72b31e51973efef2308f109ff90e077815 SHA256 dc81115be1324cf2d61ff2e2393462bd31aa63551a8b58d9dac39293bec058d5 AUX exim-4.69-r1.boolean_redefine_protect.152706.patch 473 RMD160 f3a18c0d338d673a3bc216d19152c9c7c43e29d6 SHA1 ba08af4b635418ca4a81e6343da875f0b86daabd SHA256 85d1e7554dac8204e1d2e71a10d73a2172610190d74d005b152191e865e85108 AUX exim.confd 62 RMD160 d8dcabf184ffb9066ad45c3e77cce1ec0392a143 SHA1 c56feda3c3193fad26852310da8ef24ef91f60f6 SHA256 668f912565a59926957090c6143f669f0e9de2cf441507d3c05fcd046865b401 @@ -15,6 +16,7 @@ DIST exim-4.69.tar.bz2 1658939 RMD160 ae97c807c63f858ba4a0ab402677225da9337d05 S DIST exiscan.conf 22113 RMD160 e52b77f656b3ba2105e833075d1368f41e414d64 SHA1 74dc6e30f49402f5e6fefc280ea325d17f6af8c4 SHA256 f8cc731d3225a902461e05c0997df23bfd231ea8d5bf33a9aba5783bc6e0c964 DIST system_filter.exim.gz 3075 RMD160 47bcc6de402d896b73fd01d7f0d3c3ecbad9cf0b SHA1 384d138d8612f3a80b2b68f272b43cd69bc4411a SHA256 3a3471b486a09e0a0153f7b520e1eaf26d21b97d73ea8348bdc593c00eb1e437 EBUILD exim-4.69-r3.ebuild 9860 RMD160 ec3b3104c6687c488bdc561873f09132d1256842 SHA1 e90534360bd916f226a3daa166243ca9d7cab327 SHA256 273d32385904a1e1b302cb842bd02998d0adaffd56b7c44848f63f27b62adcaf +EBUILD exim-4.69-r4.ebuild 9925 RMD160 74fa2da80bc46823bb9be8c5e2250be838034df9 SHA1 89849a8c8c669aa118d33d16f1b245457008ecd9 SHA256 cf2d76519d1f6244ceb5d19e136a7d0bb9c4ff56e71f37f399e15a2661e5eeca EBUILD exim-4.69.ebuild 9906 RMD160 9b244dbbde9d454ea7be15bc46071e99943ec163 SHA1 ab0cfcfbe15b98681d79e077dab3195b0c1aadbe SHA256 6f5a4c76b40df44e203d86afbeba637b1a752349e0e3568cc08127fea204f915 -MISC ChangeLog 33381 RMD160 2adf2e743e194b63f77fe020aa9dca16721f87a8 SHA1 cf33432afdcf988bdf546a3a9d2e39e0df42a6a9 SHA256 6f7591ffdd155bae9e5f077310ff6fde522e3d25bdcf4ac1c5ebf4da2f790bd5 +MISC ChangeLog 33616 RMD160 9545b9ef73bf5e091fb8abb51fa62a41340925a2 SHA1 35fdcbc41a06a5de301ed19d1b0b43b910319676 SHA256 83042bd9f0e5d0b1e823a049d48b8657906d282220ce583ca52dd628c8ee492e MISC metadata.xml 1501 RMD160 e814a23bc35656a6be3785d939567436b0199b37 SHA1 0f31c10e7232c08119a2fc055492dc958a337550 SHA256 ac148e20171d3926035194a62389ff9966977a66f7dc2a950c1af768923eabc0 diff --git a/mail-mta/exim/exim-4.69-r4.ebuild b/mail-mta/exim/exim-4.69-r4.ebuild new file mode 100644 index 000000000000..518d5ecd7a4c --- /dev/null +++ b/mail-mta/exim/exim-4.69-r4.ebuild @@ -0,0 +1,309 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/mail-mta/exim/exim-4.69-r4.ebuild,v 1.1 2009/10/20 17:46:55 grobian Exp $ + +inherit eutils toolchain-funcs multilib pam + +IUSE="tcpd ssl postgres mysql ldap pam exiscan-acl lmtp ipv6 sasl dnsdb perl mbx X exiscan nis syslog spf srs gnutls sqlite dovecot-sasl radius domainkeys maildir" + +DESCRIPTION="A highly configurable, drop-in replacement for sendmail" +SRC_URI="ftp://ftp.exim.org/pub/exim/exim4/${P}.tar.bz2 + mirror://gentoo/exiscan.conf + mirror://gentoo/system_filter.exim.gz" +HOMEPAGE="http://www.exim.org/" + +SLOT="0" +LICENSE="GPL-2" +KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86" + +PROVIDE="virtual/mta" + +DEPEND=">=sys-apps/sed-4.0.5 + perl? ( sys-devel/libperl ) + >=sys-libs/db-3.2 + pam? ( virtual/pam ) + tcpd? ( sys-apps/tcp-wrappers ) + ssl? ( >=dev-libs/openssl-0.9.6 ) + gnutls? ( net-libs/gnutls + dev-libs/libtasn1 ) + ldap? ( >=net-nds/openldap-2.0.7 ) + mysql? ( virtual/mysql ) + postgres? ( virtual/postgresql-base ) + sasl? ( >=dev-libs/cyrus-sasl-2.1.14 ) + spf? ( >=mail-filter/libspf2-1.2.5-r1 ) + srs? ( mail-filter/libsrs_alt ) + X? ( x11-proto/xproto + x11-libs/libX11 + x11-libs/libXmu + x11-libs/libXt + x11-libs/libXaw + ) + sqlite? ( dev-db/sqlite ) + radius? ( net-dialup/radiusclient ) + domainkeys? ( mail-filter/libdomainkeys ) + virtual/libiconv + " + # added X check for #57206 +RDEPEND="${DEPEND} + !virtual/mta + !net-mail/mailwrapper + >=net-mail/mailbase-0.00-r5 + virtual/logger" + +src_unpack() { + unpack ${A} + cd "${S}" + + local myconf + + epatch "${FILESDIR}"/exim-4.14-tail.patch + epatch "${FILESDIR}"/exim-4.43-r2-localscan_dlopen.patch + epatch "${FILESDIR}"/exim-4.69-r1.27021.patch + epatch "${FILESDIR}"/exim-4.69-r1.boolean_redefine_protect.152706.patch + epatch "${FILESDIR}"/exim-4.69-dovecot-auth.patch #288520 + # for cross-compilation, but currently breaks normal compiles :/ #266591 + #epatch "${FILESDIR}"/${P}-buildconfig-cross-compile.patch + + if use maildir; then + einfo "Patching maildir support into exim.conf" + epatch "${FILESDIR}"/exim-4.20-maildir.patch + fi + sed -i "/SYSTEM_ALIASES_FILE/ s'SYSTEM_ALIASES_FILE'/etc/mail/aliases'" "${S}"/src/configure.default + cp "${S}"/src/configure.default "${S}"/src/configure.default.orig + + # includes typo fix for bug #47106 + sed -e "48i\CFLAGS=${CFLAGS}" \ + -e "s:# AUTH_CRAM_MD5=yes:AUTH_CRAM_MD5=yes:" \ + -e "s:# AUTH_PLAINTEXT=yes:AUTH_PLAINTEXT=yes:" \ + -e "s:BIN_DIRECTORY=/usr/exim/bin:BIN_DIRECTORY=/usr/sbin:" \ + -e "s:COMPRESS_COMMAND=/usr/bin/gzip:COMPRESS_COMMAND=/bin/gzip:" \ + -e "s:ZCAT_COMMAND=/usr/bin/zcat:ZCAT_COMMAND=/bin/zcat:" \ + -e "s:CONFIGURE_FILE=/usr/exim/configure:CONFIGURE_FILE=/etc/exim/exim.conf:" \ + -e "s:EXIM_MONITOR=eximon.bin:# EXIM_MONITOR=eximon.bin:" \ + -e "s:# INFO_DIRECTORY=/usr/local/info:INFO_DIRECTORY=/usr/share/info:" \ + -e "s:# LOG_FILE_PATH=/var/log/exim_%slog:LOG_FILE_PATH=/var/log/exim/exim_%s.log:" \ + -e "s:# PID_FILE_PATH=/var/lock/exim.pid:PID_FILE_PATH=/var/run/exim.pid:" \ + -e "s:# SPOOL_DIRECTORY=/var/spool/exim:SPOOL_DIRECTORY=/var/spool/exim:" \ + -e "s:# SUPPORT_MAILDIR=yes:SUPPORT_MAILDIR=yes:" \ + -e "s:# SUPPORT_MAILSTORE=yes:SUPPORT_MAILSTORE=yes:" \ + -e "s:EXIM_USER=:EXIM_USER=mail:" \ + -e "s:# AUTH_SPA=yes:AUTH_SPA=yes:" \ + -e "s:^ZCAT_COMMAND.*$:ZCAT_COMMAND=/bin/zcat:" \ + -e "s:# LOOKUP_PASSWD=yes:LOOKUP_PASSWD=yes:" \ + src/EDITME > Local/Makefile + + # exiscan-acl is now integrated - enabled it when use-flag set + if use exiscan-acl; then + sed -i "s:# WITH_CONTENT_SCAN=yes:WITH_CONTENT_SCAN=yes:" Local/Makefile + sed -i "s:# WITH_OLD_DEMIME=yes:WITH_OLD_DEMIME=yes:" Local/Makefile + elif (use spf || use srs ) then + eerror SPF and SRS support require exiscan-acl to be enabled, please add + eerror to your USE settings. + exit 1 + fi + if use spf; then + myconf="${myconf} -lspf2" + sed -i "s:# EXPERIMENTAL_SPF=yes:EXPERIMENTAL_SPF=yes:" Local/Makefile + mycflags="${mycflags} -DEXPERIMENTAL_SPF" + fi + if use srs; then + myconf="${myconf} -lsrs_alt" + sed -i "s:# EXPERIMENTAL_SRS=yes:EXPERIMENTAL_SRS=yes:" Local/Makefile + fi + + cd Local + # enable optional exim_monitor support via X use flag bug #46778 + if use X; then + einfo "Configuring eximon" + cp ../exim_monitor/EDITME eximon.conf + sed -i "s:# EXIM_MONITOR=eximon.bin:EXIM_MONITOR=eximon.bin:" Makefile + fi + if use perl; then + sed -i "s:# EXIM_PERL=perl.o:EXIM_PERL=perl.o:" Makefile + fi + # mbox useflag renamed, see bug #110741 + if use mbx; then + sed -i "s:# SUPPORT_MBX=yes:SUPPORT_MBX=yes:" Makefile + fi + if use pam; then + sed -i "s:# \(SUPPORT_PAM=yes\):\1:" Makefile + myconf="${myconf} -lpam" + fi + if use sasl; then + sed -i "s:# CYRUS_SASLAUTHD_SOCKET=/var/state/saslauthd/mux:CYRUS_SASLAUTHD_SOCKET=/var/lib/sasl2/mux:" Makefile + sed -i "s:# AUTH_CYRUS_SASL=yes:AUTH_CYRUS_SASL=yes:" Makefile + myconf="${myconf} -lsasl2" + fi + if use tcpd; then + sed -i "s:# \(USE_TCP_WRAPPERS=yes\):\1:" Makefile + myconf="${myconf} -lwrap" + fi + if use lmtp; then + sed -i "s:# \(TRANSPORT_LMTP=yes\):\1:" Makefile + fi + if use ipv6; then + echo "HAVE_IPV6=YES" >> Makefile + # to fix bug #41196 + echo "IPV6_USE_INET_PTON=yes" >> Makefile + fi + if use dovecot-sasl; then + sed -i "s:# AUTH_DOVECOT=yes:AUTH_DOVECOT=yes:" Makefile + fi + if use radius; then + myconf="${myconf} -lradiusclient" + sed -i "s:# RADIUS_CONFIG_FILE=/etc/radiusclient/radiusclient.conf:RADIUS_CONFIG_FILE=/etc/radiusclient/radiusclient.conf:" Makefile + sed -i "s:# RADIUS_LIB_TYPE=RADIUSCLIENT$:RADIUS_LIB_TYPE=RADIUSCLIENT:" Makefile + fi + if [[ -n ${myconf} ]] ; then + echo "EXTRALIBS=${myconf} ${LDFLAGS}" >> Makefile + fi + + # make iconv usage explicit + echo "HAVE_ICONV=yes" >> Makefile + # if we use libiconv, now is the time to tell so + use !elibc_glibc && echo "EXTRALIBS_EXIM=-liconv" >> Makefile + + cd "${S}" + if use ssl; then + sed -i \ + -e "s:# \(SUPPORT_TLS=yes\):\1:" Local/Makefile + if use gnutls; then + sed -i \ + -e "s:# \(USE_GNUTLS=yes\):\1:" \ + -e "s:# \(TLS_LIBS=-lgnutls -ltasn1 -lgcrypt\):\1:" Local/Makefile + else + sed -i \ + -e "s:# \(TLS_LIBS=-lssl -lcrypto\):\1:" Local/Makefile + fi + fi + + LOOKUP_INCLUDE= + LOOKUP_LIBS= + + if use ldap; then + sed -i \ + -e "s:# \(LOOKUP_LDAP=yes\):\1:" \ + -e "s:# \(LDAP_LIB_TYPE=OPENLDAP2\):\1:" Local/Makefile + LOOKUP_INCLUDE="-I${ROOT}/usr/include/ldap" + LOOKUP_LIBS="-lldap -llber" + fi + + if use mysql; then + sed -i "s:# LOOKUP_MYSQL=yes:LOOKUP_MYSQL=yes:" Local/Makefile + LOOKUP_INCLUDE="$LOOKUP_INCLUDE -I${ROOT}/usr/include/mysql" + LOOKUP_LIBS="$LOOKUP_LIBS -lmysqlclient" + fi + + if use postgres; then + sed -i "s:# LOOKUP_PGSQL=yes:LOOKUP_PGSQL=yes:" Local/Makefile + LOOKUP_INCLUDE="$LOOKUP_INCLUDE -I${ROOT}/usr/include/postgresql" + LOOKUP_LIBS="$LOOKUP_LIBS -lpq" + fi + if use sqlite; then + sed -i "s:# LOOKUP_SQLITE=yes: LOOKUP_SQLITE=yes:" Local/Makefile + LOOKUP_INCLUDE="$LOOKUP_INCLUDE -I${ROOT}/usr/include/sqlite" + LOOKUP_LIBS="$LOOKUP_LIBS -lsqlite3" + fi + if [[ -n ${LOOKUP_INCLUDE} ]]; then + sed -i "s:# LOOKUP_INCLUDE=-I /usr/local/ldap/include -I /usr/local/mysql/include -I /usr/local/pgsql/include:LOOKUP_INCLUDE=$LOOKUP_INCLUDE:" \ + Local/Makefile + fi + + if [[ -n ${LOOKUP_LIBS} ]]; then + sed -i "s:# LOOKUP_LIBS=-L/usr/local/lib -lldap -llber -lmysqlclient -lpq -lgds -lsqlite3:LOOKUP_LIBS=$LOOKUP_LIBS:" \ + Local/Makefile + fi + + sed -i -e 's/^buildname=.*/buildname=exim-gentoo/g' Makefile + + sed -i "s:# LOOKUP_DSEARCH=yes:LOOKUP_DSEARCH=yes:" Local/Makefile + + if use dnsdb; then + sed -i "s:# LOOKUP_DNSDB=yes:LOOKUP_DNSDB=yes:" Local/Makefile + fi + sed -i "s:# LOOKUP_CDB=yes:LOOKUP_CDB=yes:" Local/Makefile + + if use nis; then + sed -i "s:# LOOKUP_NIS=yes:LOOKUP_NIS=yes:" Local/Makefile + sed -i "s:# LOOKUP_NISPLUS=yes:LOOKUP_NISPLUS=yes:" Local/Makefile + fi + if use syslog; then + sed -i "s:LOG_FILE_PATH=/var/log/exim/exim_%s.log:LOG_FILE_PATH=syslog:" Local/Makefile + fi + if use domainkeys; then + echo " + EXPERIMENTAL_DOMAINKEYS=yes + CFLAGS += -I${ROOT}/usr/include/libdomainkeys + LDFLAGS += -lcrypto -L${ROOT}/usr/$(get_libdir)/libdomainkeys -ldomainkeys" >> Local/Makefile + fi + + # use the "native" interface to the DBM library + echo "USE_DB=yes" >> "${S}"/Local/Makefile +} + +src_compile() { + # build system not parallel-safe at all + emake -j1 CC="$(tc-getCC)" FULLECHO='' || die "make failed" +} + +src_install () { + cd "${S}"/build-exim-gentoo + exeinto /usr/sbin + doexe exim + if use X; then + doexe eximon.bin + doexe eximon + fi + fperms 4755 /usr/sbin/exim + + dodir /usr/bin /usr/sbin /usr/lib + + dosym exim /usr/sbin/sendmail + dosym exim /usr/sbin/rsmtp + dosym exim /usr/sbin/rmail + dosym /usr/sbin/exim /usr/bin/mailq + dosym /usr/sbin/exim /usr/bin/newaliases + dosym /usr/sbin/sendmail /usr/lib/sendmail + + exeinto /usr/sbin + for i in exicyclog exim_dbmbuild exim_dumpdb exim_fixdb exim_lock \ + exim_tidydb exinext exiwhat exigrep eximstats exiqsumm exiqgrep \ + convert4r3 convert4r4 exipick + do + doexe $i + done + + dodoc "${S}"/doc/* + doman "${S}"/doc/exim.8 + + # conf files + insinto /etc/exim + newins "${S}"/src/configure.default.orig exim.conf.dist + if use exiscan-acl; then + newins "${S}"/src/configure.default exim.conf.exiscan-acl + fi + doins "${WORKDIR}"/system_filter.exim + doins "${FILESDIR}"/auth_conf.sub + if use exiscan; then + newins "${S}"/src/configure.default exim.conf.exiscan + doins "${DISTDIR}"/exiscan.conf + fi + + pamd_mimic system-auth exim auth account + + insinto /etc/logrotate.d + newins "${FILESDIR}/exim.logrotate" exim + + newinitd "${FILESDIR}"/exim.rc6 exim + + newconfd "${FILESDIR}"/exim.confd exim + + DIROPTIONS="--mode=0750 --owner=mail --group=mail" + dodir /var/log/${PN} +} + +pkg_postinst() { + einfo "/etc/exim/system_filter.exim is a sample system_filter." + einfo "/etc/exim/auth_conf.sub contains the configuration sub for using smtp auth." + einfo "Please create /etc/exim/exim.conf from /etc/exim/exim.conf.dist." +} diff --git a/mail-mta/exim/files/exim-4.69-dovecot-auth.patch b/mail-mta/exim/files/exim-4.69-dovecot-auth.patch new file mode 100644 index 000000000000..4a00150e9951 --- /dev/null +++ b/mail-mta/exim/files/exim-4.69-dovecot-auth.patch @@ -0,0 +1,16 @@ +http://bugs.gentoo.org/show_bug.cgi?id=288520 +http://bugs.exim.org/show_bug.cgi?id=667 +http://vcs.exim.org/viewvc/exim/exim-src/src/auths/dovecot.c?r1=1.8&r2=1.9 + +--- src/auths/dovecot.c 2008/01/18 12:23:26 1.8 ++++ src/auths/dovecot.c 2008/02/06 12:44:59 1.9 +@@ -369,6 +369,9 @@ + } + + out: ++ /* close the socket used by dovecot */ ++ if (fd >= 0) ++ close(fd); + + /* Expand server_condition as an authorization check */ + return (ret == OK)? auth_check_serv_cond(ablock) : ret; |