diff options
author | Alex Alexander <wired@gentoo.org> | 2010-06-14 17:03:57 +0000 |
---|---|---|
committer | Alex Alexander <wired@gentoo.org> | 2010-06-14 17:03:57 +0000 |
commit | 145041dee4f1dd991dd8d06c6cc2a3a00c225a5d (patch) | |
tree | 3ed8457012dc058ab2770109728d2a81c17236a1 /net-irc | |
parent | sync with php-overlay (diff) | |
download | gentoo-2-145041dee4f1dd991dd8d06c6cc2a3a00c225a5d.tar.gz gentoo-2-145041dee4f1dd991dd8d06c6cc2a3a00c225a5d.tar.bz2 gentoo-2-145041dee4f1dd991dd8d06c6cc2a3a00c225a5d.zip |
znc: EAPI 2, fixed security bug #323965
(Portage version: 2.2_rc67/cvs/Linux x86_64)
Diffstat (limited to 'net-irc')
-rw-r--r-- | net-irc/znc/ChangeLog | 8 | ||||
-rw-r--r-- | net-irc/znc/files/znc-0.090-null-pointer-dereference-fix.patch | 31 | ||||
-rw-r--r-- | net-irc/znc/znc-0.090-r1.ebuild | 54 |
3 files changed, 92 insertions, 1 deletions
diff --git a/net-irc/znc/ChangeLog b/net-irc/znc/ChangeLog index 641185962a7f..6b665aee1059 100644 --- a/net-irc/znc/ChangeLog +++ b/net-irc/znc/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for net-irc/znc # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-irc/znc/ChangeLog,v 1.34 2010/06/07 09:27:08 wired Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-irc/znc/ChangeLog,v 1.35 2010/06/14 17:03:57 wired Exp $ + +*znc-0.090-r1 (14 Jun 2010) + + 14 Jun 2010; Alex Alexander <wired@gentoo.org> +znc-0.090-r1.ebuild, + +files/znc-0.090-null-pointer-dereference-fix.patch: + EAPI 2, fixed security bug #323965 *znc-0.090 (07 Jun 2010) diff --git a/net-irc/znc/files/znc-0.090-null-pointer-dereference-fix.patch b/net-irc/znc/files/znc-0.090-null-pointer-dereference-fix.patch new file mode 100644 index 000000000000..c41e1fe9ed7b --- /dev/null +++ b/net-irc/znc/files/znc-0.090-null-pointer-dereference-fix.patch @@ -0,0 +1,31 @@ +--- trunk/znc.cpp 2010/06/13 07:58:28 2025 ++++ trunk/znc.cpp 2010/06/13 17:14:52 2026 +@@ -1927,18 +1927,18 @@ + } + + for (CSockManager::const_iterator it = m_Manager.begin(); it != m_Manager.end(); ++it) { ++ CUser *pUser = NULL; + if ((*it)->GetSockName().Left(5) == "IRC::") { +- CIRCSock *p = (CIRCSock *) *it; +- ret[p->GetUser()->GetUserName()].first += p->GetBytesRead(); +- ret[p->GetUser()->GetUserName()].second += p->GetBytesWritten(); +- uiUsers_in += p->GetBytesRead(); +- uiUsers_out += p->GetBytesWritten(); ++ pUser = ((CIRCSock *) *it)->GetUser(); + } else if ((*it)->GetSockName().Left(5) == "USR::") { +- CClient *p = (CClient *) *it; +- ret[p->GetUser()->GetUserName()].first += p->GetBytesRead(); +- ret[p->GetUser()->GetUserName()].second += p->GetBytesWritten(); +- uiUsers_in += p->GetBytesRead(); +- uiUsers_out += p->GetBytesWritten(); ++ pUser = ((CClient*) *it)->GetUser(); ++ } ++ ++ if (pUser) { ++ ret[pUser->GetUserName()].first += (*it)->GetBytesRead(); ++ ret[pUser->GetUserName()].second += (*it)->GetBytesWritten(); ++ uiUsers_in += (*it)->GetBytesRead(); ++ uiUsers_out += (*it)->GetBytesWritten(); + } else { + uiZNC_in += (*it)->GetBytesRead(); + uiZNC_out += (*it)->GetBytesWritten(); diff --git a/net-irc/znc/znc-0.090-r1.ebuild b/net-irc/znc/znc-0.090-r1.ebuild new file mode 100644 index 000000000000..2d73b03936ae --- /dev/null +++ b/net-irc/znc/znc-0.090-r1.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-irc/znc/znc-0.090-r1.ebuild,v 1.1 2010/06/14 17:03:57 wired Exp $ + +EAPI=2 + +inherit base + +DESCRIPTION="An advanced IRC Bouncer" +HOMEPAGE="http://znc.sourceforge.net" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="ares debug extras ipv6 perl ssl sasl tcl" + +DEPEND=" + ares? ( net-dns/c-ares ) + perl? ( dev-lang/perl ) + sasl? ( >=dev-libs/cyrus-sasl-2 ) + ssl? ( >=dev-libs/openssl-0.9.7d ) + tcl? ( dev-lang/tcl ) +" +RDEPEND="${DEPEND}" + +# bug 323965 +PATCHES=( "${FILESDIR}/${P}-null-pointer-dereference-fix.patch" ) + +src_configure() { + econf \ + $(use_enable ares c-ares) \ + $(use_enable debug) \ + $(use_enable extras extra) \ + $(use_enable ipv6) \ + $(use_enable perl) \ + $(use_enable sasl) \ + $(use_enable ssl openssl) \ + $(use_enable tcl tcl) \ + || die "econf failed" +} + +src_install() { + emake install DESTDIR="${D}" || die "make install failed." + dodoc AUTHORS README || die "dodoc failed" +} + +pkg_postinst() { + elog + elog "Run 'znc --makeconf' as the user you want to run ZNC as" + elog "to make a configuration file" + elog "If you are using SSL you should also run 'znc --makepem'" + elog +} |