diff options
-rw-r--r-- | net-mail/up-imapproxy/ChangeLog | 13 | ||||
-rw-r--r-- | net-mail/up-imapproxy/files/imapproxy.initd (renamed from net-mail/up-imapproxy/files/imapproxy.rc6) | 8 | ||||
-rw-r--r-- | net-mail/up-imapproxy/files/imapproxyd.8 | 64 | ||||
-rw-r--r-- | net-mail/up-imapproxy/files/pimpstat.8 | 27 | ||||
-rw-r--r-- | net-mail/up-imapproxy/files/up-imapproxy-1.2.5_rc2-include_fix.patch (renamed from net-mail/up-imapproxy/files/1.2.4-include-fix.patch) | 0 | ||||
-rw-r--r-- | net-mail/up-imapproxy/files/up-imapproxy-1.2.6-debian_patchset_5_and_security_fix.patch | 91 | ||||
-rw-r--r-- | net-mail/up-imapproxy/up-imapproxy-1.2.5_rc2.ebuild | 41 | ||||
-rw-r--r-- | net-mail/up-imapproxy/up-imapproxy-1.2.6.ebuild | 49 | ||||
-rw-r--r-- | net-mail/up-imapproxy/up-imapproxy-1.2.7_rc2.ebuild | 21 |
9 files changed, 285 insertions, 29 deletions
diff --git a/net-mail/up-imapproxy/ChangeLog b/net-mail/up-imapproxy/ChangeLog index b5d19c3c541c..b89f07cbf9de 100644 --- a/net-mail/up-imapproxy/ChangeLog +++ b/net-mail/up-imapproxy/ChangeLog @@ -1,6 +1,17 @@ # ChangeLog for net-mail/up-imapproxy # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-mail/up-imapproxy/ChangeLog,v 1.19 2009/06/01 06:33:39 ssuominen Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-mail/up-imapproxy/ChangeLog,v 1.20 2009/06/01 12:09:57 ssuominen Exp $ + +*up-imapproxy-1.2.6 (01 Jun 2009) + + 01 Jun 2009; Samuli Suominen <ssuominen@gentoo.org> + +up-imapproxy-1.2.6.ebuild, + +files/up-imapproxy-1.2.6-debian_patchset_5_and_security_fix.patch, + up-imapproxy-1.2.7_rc2.ebuild, +files/imapproxyd.8, +files/pimpstat.8: + Fix security issue differently and apply Debian patchset on top of that to + get neat package. Version bump to latest stable instead of using latest + release candidate as stable version. Add some manpages for the two + commands installed from Debian patchset. *up-imapproxy-1.2.7_rc2 (01 Jun 2009) diff --git a/net-mail/up-imapproxy/files/imapproxy.rc6 b/net-mail/up-imapproxy/files/imapproxy.initd index aabdd888e170..8797f0480543 100644 --- a/net-mail/up-imapproxy/files/imapproxy.rc6 +++ b/net-mail/up-imapproxy/files/imapproxy.initd @@ -1,7 +1,7 @@ #!/sbin/runscript -# Copyright 1999-2004 Gentoo Foundation +# Copyright 1999-2009 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-mail/up-imapproxy/files/imapproxy.rc6,v 1.2 2004/07/14 23:52:37 agriffis Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-mail/up-imapproxy/files/imapproxy.initd,v 1.1 2009/06/01 12:09:57 ssuominen Exp $ depend() { use logger @@ -9,13 +9,13 @@ depend() { } start() { - ebegin "Starting imapproxy" + ebegin "Starting up-imapproxy" start-stop-daemon --start --quiet --exec /usr/sbin/imapproxyd eend $? } stop() { - ebegin "Stopping imapproxy" + ebegin "Stopping up-imapproxy" start-stop-daemon --stop --quiet --exec /usr/sbin/imapproxyd eend $? } diff --git a/net-mail/up-imapproxy/files/imapproxyd.8 b/net-mail/up-imapproxy/files/imapproxyd.8 new file mode 100644 index 000000000000..1c70d9525756 --- /dev/null +++ b/net-mail/up-imapproxy/files/imapproxyd.8 @@ -0,0 +1,64 @@ +.\" Hey, EMACS: -*- nroff -*- +.\" First parameter, NAME, should be all caps +.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +.\" other parameters are allowed: see man(7), man(1) +.TH IMAPPROXYD 8 "Mar 12, 2004" "Dave McMurtrie" "IMAP proxy daemon" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +.B imapproxyd +\- IMAP proxy daemon +.SH SYNOPSIS +.B imapproxyd +.RI +[ +.B -f +.RI +<config file name> ] +.RI +[ +.B -p +.RI +<pidfile name> ] +.br +.SH DESCRIPTION +This manual page documents briefly the +.B imapproxyd +command. +This manual page was written for the Debian distribution +because the original program does not have a manual page. +.PP +UP-ImapProxy proxies IMAP transactions between an IMAP client and an IMAP +server. The general idea is that the client should never know that it is +not talking to the real IMAP server, but ImapProxy caches server connections. +.PP +ImapProxy was written to compensate for webmail clients that are unable to +maintain persistent connections to an IMAP server. Most webmail clients +need to log in to an IMAP server for nearly every single transaction; This +behaviour can cause tragic performance problems on the IMAP server. +ImapProxy tries to deal with this problem by leaving server connections +open for a short time after a webmail client logs out. When the webmail +client connects again, ImapProxy will determine if there is a cached +connection available and reuse it if possible. +.BR +.SH FILES +By default, UP-ImapProxy reads /etc/imapproxy.conf on startup. +This can be changed by using the +.I -f +option +.PP +Unless foreground_mode has been enabled, UP-ImapProxy will write its PID to to +a PID-file. It defaults to /var/run/imapproxy.pid, but can be overridden with +the +.I -p +option +.SH SEE ALSO +.BR pimpstat (8), +.br +.SH AUTHOR +This manual page was written by Jose Luis Tallon +.nh +<jltallon@adv-solutions.net>, +for the Debian GNU/Linux system (but may be used by others). + + diff --git a/net-mail/up-imapproxy/files/pimpstat.8 b/net-mail/up-imapproxy/files/pimpstat.8 new file mode 100644 index 000000000000..2466e7ce2780 --- /dev/null +++ b/net-mail/up-imapproxy/files/pimpstat.8 @@ -0,0 +1,27 @@ +.\" Hey, EMACS: -*- nroff -*- +.\" First parameter, NAME, should be all caps +.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +.\" other parameters are allowed: see man(7), man(1) +.TH PIMPSTATS 8 "Mar 12, 2004" "Dave McMurtrie" "IMAP proxy daemon" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME + pimpstat \- UP-ImapProxy statistics +.SH SYNOPSIS +.B pimpstat +.RI [options] +.br +.SH DESCRIPTION +This manual page documents briefly the +.B pimpstat +command. +This manual page was written for the Debian distribution +because the original program does not have a manual page. +.SH SEE ALSO +.BR imapproxyd (8), +.br +.SH AUTHOR +This manual page was written by Jose Luis Tallon +.nh +<jltallon@adv-solutions.net>, +for the Debian GNU/Linux system (but may be used by others). diff --git a/net-mail/up-imapproxy/files/1.2.4-include-fix.patch b/net-mail/up-imapproxy/files/up-imapproxy-1.2.5_rc2-include_fix.patch index eafcd1b31c2c..eafcd1b31c2c 100644 --- a/net-mail/up-imapproxy/files/1.2.4-include-fix.patch +++ b/net-mail/up-imapproxy/files/up-imapproxy-1.2.5_rc2-include_fix.patch diff --git a/net-mail/up-imapproxy/files/up-imapproxy-1.2.6-debian_patchset_5_and_security_fix.patch b/net-mail/up-imapproxy/files/up-imapproxy-1.2.6-debian_patchset_5_and_security_fix.patch new file mode 100644 index 000000000000..82e1e5f2e6a6 --- /dev/null +++ b/net-mail/up-imapproxy/files/up-imapproxy-1.2.6-debian_patchset_5_and_security_fix.patch @@ -0,0 +1,91 @@ +First part, + +Problems: Debian patchset version -5 against src/ directory. +http://packages.debian.org/changelogs/pool/main/u/up-imapproxy/up-imapproxy_1.2.6-5/changelog + +Second part, + +Problems: http://bugzilla.redhat.com/show_bug.cgi?id=465859 +Our solution to it: http://bugs.gentoo.org/show_bug.cgi?id=177780 +by Holger Hoffstätte + +diff -ur up-imapproxy-1.2.6.orig/src/main.c up-imapproxy-1.2.6/src/main.c +--- up-imapproxy-1.2.6.orig/src/main.c 2008-01-28 15:15:08.000000000 +0200 ++++ up-imapproxy-1.2.6/src/main.c 2009-06-01 14:37:30.000000000 +0300 +@@ -618,7 +618,7 @@ + pthread_create( &RecycleThread, &attr, (void *)ICC_Recycle_Loop, NULL ); + + syslog(LOG_INFO, "%s: Launched ICC recycle thread with id %d", +- fn, RecycleThread ); ++ fn, (int)RecycleThread ); + + /* + * Now start listening and accepting connections. +@@ -1075,7 +1075,6 @@ + ICD_Struct conn; + int BytesRead; + char *fn = "SetBannerAndCapability()"; +- int NumRef = 0; + + /* initialize some stuff */ + memset( &itd, 0, sizeof itd ); +diff -ur up-imapproxy-1.2.6.orig/src/request.c up-imapproxy-1.2.6/src/request.c +--- up-imapproxy-1.2.6.orig/src/request.c 2008-01-28 15:15:08.000000000 +0200 ++++ up-imapproxy-1.2.6/src/request.c 2009-06-01 14:41:28.000000000 +0300 +@@ -714,7 +714,7 @@ + * avoid allocating additional buffers. Keep this in mind for future + * code modification... + */ +- snprintf( Username, BufLen, "Username:" ); ++ snprintf( Username, MAXUSERNAMELEN - 1, "Username:" ); + + EVP_EncodeBlock( EncodedUsername, Username, strlen( Username ) ); + +@@ -770,7 +770,7 @@ + /* + * Same drill all over again, except this time it's for the password. + */ +- snprintf( Password, BufLen, "Password:" ); ++ snprintf( Password, MAXPASSWDLEN - 1, "Password:" ); + + EVP_EncodeBlock( EncodedPassword, Password, strlen( Password ) ); + +@@ -1197,7 +1197,7 @@ + + if ( Server->TraceOn ) + { +- snprintf( TraceBuf, sizeof TraceBuf - 1, "\n\n-----> C= %d %s SERVER: sd [%d]\n", time( 0 ), ( (TraceUser) ? TraceUser : "Null username" ), Server->conn->sd ); ++ snprintf( TraceBuf, sizeof TraceBuf - 1, "\n\n-----> C= %d %s SERVER: sd [%d]\n", time( 0 ), ( (*TraceUser) ? TraceUser : "Null username" ), Server->conn->sd ); + write( Tracefd, TraceBuf, strlen( TraceBuf ) ); + write( Tracefd, Server->ReadBuf, status ); + } +@@ -1243,7 +1243,7 @@ + + if ( Client->TraceOn ) + { +- snprintf( TraceBuf, sizeof TraceBuf - 1, "\n\n-----> C= %d %s CLIENT: sd [%d]\n", time( 0 ), ( (TraceUser) ? TraceUser : "Null username" ), Client->conn->sd ); ++ snprintf( TraceBuf, sizeof TraceBuf - 1, "\n\n-----> C= %d %s CLIENT: sd [%d]\n", time( 0 ), ( (*TraceUser) ? TraceUser : "Null username" ), Client->conn->sd ); + write( Tracefd, TraceBuf, strlen( TraceBuf ) ); + write( Tracefd, Client->ReadBuf, status ); + } +@@ -1902,7 +1902,7 @@ + + if ( BytesRead == -1 ) + { +- syslog( LOG_NOTICE, "%s: Failed to read string literal from client on login." ); ++ syslog( LOG_NOTICE, "%s: Failed to read string literal from client on login.", fn ); + snprintf( SendBuf, BufLen, "%s NO LOGIN failed\r\n", Tag ); + if ( IMAP_Write( Client.conn, SendBuf, strlen(SendBuf) ) == -1 ) + { +diff -ur up-imapproxy-1.2.6.orig/src/select.c up-imapproxy-1.2.6/src/select.c +--- up-imapproxy-1.2.6.orig/src/select.c 2008-01-28 15:15:08.000000000 +0200 ++++ up-imapproxy-1.2.6/src/select.c 2009-06-01 14:37:30.000000000 +0300 +@@ -349,7 +349,7 @@ + { + if ( Server->LiteralBytesRemaining ) + { +- syslog( LOG_ERR, "%s: Server response to SELECT command contains unexpected literal data on sd [%d].", fn ); ++ syslog( LOG_ERR, "%s: Server response to SELECT command contains unexpected literal data on sd [%d].", fn, Server->conn ); + /* + * Must eat the literal. + */ diff --git a/net-mail/up-imapproxy/up-imapproxy-1.2.5_rc2.ebuild b/net-mail/up-imapproxy/up-imapproxy-1.2.5_rc2.ebuild index ee2236b554a0..9af4b86fee1d 100644 --- a/net-mail/up-imapproxy/up-imapproxy-1.2.5_rc2.ebuild +++ b/net-mail/up-imapproxy/up-imapproxy-1.2.5_rc2.ebuild @@ -1,39 +1,39 @@ -# Copyright 1999-2007 Gentoo Foundation +# Copyright 1999-2009 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-mail/up-imapproxy/up-imapproxy-1.2.5_rc2.ebuild,v 1.3 2007/02/06 13:08:54 blubb Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-mail/up-imapproxy/up-imapproxy-1.2.5_rc2.ebuild,v 1.4 2009/06/01 12:09:57 ssuominen Exp $ +EAPI=2 inherit eutils DESCRIPTION="Proxy IMAP transactions between an IMAP client and an IMAP server." HOMEPAGE="http://www.imapproxy.org/" -SRC_URI="http://www.imapproxy.org/downloads/${P/_/}.tar.gz" +SRC_URI="http://www.imapproxy.org/downloads/${P/_}.tar.gz" LICENSE="GPL-2" SLOT="0" KEYWORDS="amd64 ~ppc x86" -IUSE="kerberos ssl tcpd" +IUSE="kerberos ssl +tcpd" -DEPEND=">=sys-libs/ncurses-5.1 +RDEPEND="sys-libs/ncurses kerberos? ( virtual/krb5 ) - ssl? ( >=dev-libs/openssl-0.9.6 ) + ssl? ( dev-libs/openssl ) tcpd? ( >=sys-apps/tcp-wrappers-7.6 )" +DEPEND="${RDEPEND} + sys-apps/sed" -S="${WORKDIR}/${P/_/}" -src_unpack() { - unpack ${A} && cd "${S}" - epatch "${FILESDIR}"/1.2.4-include-fix.patch +S=${WORKDIR}/${P/_} + +src_prepare() { + epatch "${FILESDIR}"/${P}-include_fix.patch sed -i -e 's:in\.imapproxyd:imapproxyd:g' \ README Makefile.in include/imapproxy.h || die "sed failed" } -src_compile() { +src_configure() { econf \ $(use_with kerberos krb5) \ $(use_with ssl openssl) \ - $(use_with tcpd libwrap) \ - || die "econf failed" - - emake || die "emake failed" + $(use_with tcpd libwrap) } src_install() { @@ -42,7 +42,14 @@ src_install() { insinto /etc doins scripts/imapproxy.conf || die "doins failed" - newinitd "${FILESDIR}"/imapproxy.rc6 imapproxy || die "initd failed" + newinitd "${FILESDIR}"/imapproxy.initd imapproxy || die "newinitd failed" + + dodoc ChangeLog README README.known_issues + use ssl && dodoc README.ssl + + doman "${FILESDIR}"/*.8 +} - dodoc ChangeLog README README.known_issues README.ssl +pkg_postinst() { + elog "Installed manpages are for version 1.2.6." } diff --git a/net-mail/up-imapproxy/up-imapproxy-1.2.6.ebuild b/net-mail/up-imapproxy/up-imapproxy-1.2.6.ebuild new file mode 100644 index 000000000000..f925dca13420 --- /dev/null +++ b/net-mail/up-imapproxy/up-imapproxy-1.2.6.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-mail/up-imapproxy/up-imapproxy-1.2.6.ebuild,v 1.1 2009/06/01 12:09:57 ssuominen Exp $ + +EAPI=2 +inherit eutils + +DESCRIPTION="Proxy IMAP transactions between an IMAP client and an IMAP server." +HOMEPAGE="http://www.imapproxy.org/" +SRC_URI="http://www.imapproxy.org/downloads/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="kerberos ssl +tcpd" + +RDEPEND="sys-libs/ncurses + kerberos? ( virtual/krb5 ) + ssl? ( >=dev-libs/openssl-0.9.6 ) + tcpd? ( >=sys-apps/tcp-wrappers-7.6 )" +DEPEND="${RDEPEND} + sys-apps/sed" + +src_prepare() { + epatch "${FILESDIR}"/${P}-debian_patchset_5_and_security_fix.patch + sed -i -e 's:in\.imapproxyd:imapproxyd:g' \ + README Makefile.in include/imapproxy.h || die "sed failed" +} + +src_configure() { + econf \ + $(use_with kerberos krb5) \ + $(use_with ssl openssl) \ + $(use_with tcpd libwrap) +} + +src_install() { + dosbin bin/imapproxyd bin/pimpstat || die "dosbin failed" + + insinto /etc + doins scripts/imapproxy.conf || die "doins failed" + + newinitd "${FILESDIR}"/imapproxy.initd imapproxy || die "newinitd failed" + + dodoc ChangeLog README README.known_issues + use ssl && dodoc README.ssl + + doman "${FILESDIR}"/*.8 +} diff --git a/net-mail/up-imapproxy/up-imapproxy-1.2.7_rc2.ebuild b/net-mail/up-imapproxy/up-imapproxy-1.2.7_rc2.ebuild index 07b54da29499..af155834ed90 100644 --- a/net-mail/up-imapproxy/up-imapproxy-1.2.7_rc2.ebuild +++ b/net-mail/up-imapproxy/up-imapproxy-1.2.7_rc2.ebuild @@ -1,27 +1,28 @@ # Copyright 1999-2009 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-mail/up-imapproxy/up-imapproxy-1.2.7_rc2.ebuild,v 1.1 2009/06/01 06:33:39 ssuominen Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-mail/up-imapproxy/up-imapproxy-1.2.7_rc2.ebuild,v 1.2 2009/06/01 12:09:57 ssuominen Exp $ EAPI=2 -MY_P=${P/_} DESCRIPTION="Proxy IMAP transactions between an IMAP client and an IMAP server." HOMEPAGE="http://www.imapproxy.org/" -SRC_URI="http://www.imapproxy.org/downloads/${MY_P}.tar.gz" +SRC_URI="http://www.imapproxy.org/downloads/${P/_}.tar.gz" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~amd64 ~ppc ~x86" -IUSE="kerberos ssl tcpd" +# This version has issues, don't keyword wrt #272044, Comment #1, by Holger +# Hoffstätte. But do so for next release candidate. +KEYWORDS="" +IUSE="kerberos ssl +tcpd" RDEPEND="sys-libs/ncurses kerberos? ( virtual/krb5 ) - ssl? ( >=dev-libs/openssl-0.9.6 ) + ssl? ( dev-libs/openssl ) tcpd? ( >=sys-apps/tcp-wrappers-7.6 )" DEPEND="${RDEPEND} sys-apps/sed" -S=${WORKDIR}/${MY_P} +S=${WORKDIR}/${P/_} src_prepare() { sed -i -e 's:in\.imapproxyd:imapproxyd:g' \ @@ -45,4 +46,10 @@ src_install() { dodoc ChangeLog README README.known_issues use ssl && dodoc README.ssl + + doman "${FILESDIR}"/*.8 +} + +pkg_postinst() { + einfo "Installed manpages are for version 1.2.6." } |