summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Alfredsen <loki_val@gentoo.org>2008-08-26 21:04:11 +0000
committerPeter Alfredsen <loki_val@gentoo.org>2008-08-26 21:04:11 +0000
commitfe0feac4cc1fd0efa9c9dfdf2c4df5a68af65bf9 (patch)
tree4f4d426dfaf862ece7f185a8d247a223b209494d /net-p2p/rtorrent
parentAdd missing media-libs/alsa-lib dependency, bug #227509 (diff)
downloadgentoo-2-fe0feac4cc1fd0efa9c9dfdf2c4df5a68af65bf9.tar.gz
gentoo-2-fe0feac4cc1fd0efa9c9dfdf2c4df5a68af65bf9.tar.bz2
gentoo-2-fe0feac4cc1fd0efa9c9dfdf2c4df5a68af65bf9.zip
Fix a crash in scgi_local or scgi_port when calling freeaddrinfo with a NULL pointer. Patch by Josef Drexler.
(Portage version: 2.2_rc8/cvs/Linux 2.6.25.8 i686)
Diffstat (limited to 'net-p2p/rtorrent')
-rw-r--r--net-p2p/rtorrent/ChangeLog9
-rw-r--r--net-p2p/rtorrent/files/rtorrent-0.8.2-fix_scgi_crash.patch19
-rw-r--r--net-p2p/rtorrent/rtorrent-0.8.2-r5.ebuild70
3 files changed, 97 insertions, 1 deletions
diff --git a/net-p2p/rtorrent/ChangeLog b/net-p2p/rtorrent/ChangeLog
index 51f2ef4c6e5b..f354a6fcbce5 100644
--- a/net-p2p/rtorrent/ChangeLog
+++ b/net-p2p/rtorrent/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for net-p2p/rtorrent
# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-p2p/rtorrent/ChangeLog,v 1.117 2008/08/25 20:23:23 jer Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/rtorrent/ChangeLog,v 1.118 2008/08/26 21:04:10 loki_val Exp $
+
+*rtorrent-0.8.2-r5 (26 Aug 2008)
+
+ 26 Aug 2008; Peter Alfredsen <loki_val@gentoo.org>
+ +files/rtorrent-0.8.2-fix_scgi_crash.patch, +rtorrent-0.8.2-r5.ebuild:
+ Fix a crash in scgi_local or scgi_port when calling freeaddrinfo with a
+ NULL pointer. Patch by Josef Drexler.
25 Aug 2008; Jeroen Roovers <jer@gentoo.org> rtorrent-0.8.2-r3.ebuild:
Stable for HPPA (bug #233122).
diff --git a/net-p2p/rtorrent/files/rtorrent-0.8.2-fix_scgi_crash.patch b/net-p2p/rtorrent/files/rtorrent-0.8.2-fix_scgi_crash.patch
new file mode 100644
index 000000000000..acc80ae10d05
--- /dev/null
+++ b/net-p2p/rtorrent/files/rtorrent-0.8.2-fix_scgi_crash.patch
@@ -0,0 +1,19 @@
+# Fix a crash in scgi_local or scgi_port when calling
+# freeaddrinfo with a NULL pointer.
+Index: rtorrent/src/command_network.cc
+===================================================================
+--- rtorrent/src/command_network.cc (revision 1063)
++++ rtorrent/src/command_network.cc (working copy)
+@@ -261,10 +261,10 @@
+ break;
+ }
+
+- rak::address_info::free_address_info(ai);
++ if (ai != NULL) rak::address_info::free_address_info(ai);
+
+ } catch (torrent::local_error& e) {
+- rak::address_info::free_address_info(ai);
++ if (ai != NULL) rak::address_info::free_address_info(ai);
+
+ throw torrent::input_error(e.what());
+ }
diff --git a/net-p2p/rtorrent/rtorrent-0.8.2-r5.ebuild b/net-p2p/rtorrent/rtorrent-0.8.2-r5.ebuild
new file mode 100644
index 000000000000..cc15c05c4e55
--- /dev/null
+++ b/net-p2p/rtorrent/rtorrent-0.8.2-r5.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/rtorrent/rtorrent-0.8.2-r5.ebuild,v 1.1 2008/08/26 21:04:10 loki_val Exp $
+
+inherit eutils autotools toolchain-funcs flag-o-matic
+
+DESCRIPTION="BitTorrent Client using libtorrent"
+HOMEPAGE="http://libtorrent.rakshasa.no/"
+SRC_URI="http://libtorrent.rakshasa.no/downloads/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+IUSE="debug ipv6 xmlrpc"
+
+DEPEND=">=net-libs/libtorrent-0.12.${PV##*.}
+ >=dev-libs/libsigc++-2
+ >=net-misc/curl-7.18
+ sys-libs/ncurses
+ xmlrpc? ( dev-libs/xmlrpc-c )"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${PN}-0.8.0+gcc-4.3.patch
+ epatch "${FILESDIR}"/${P}-fix_start_stop_filter.patch
+ epatch "${FILESDIR}"/${P}-fix_conn_type_seed.patch
+ epatch "${FILESDIR}"/${P}-fix_load_cache.patch
+ epatch "${FILESDIR}"/${P}-fix_utf8_filenames.patch
+ epatch "${FILESDIR}"/${P}-fix-configure-execinfo.patch
+ epatch "${FILESDIR}"/${P}-gcc34.patch
+ epatch "${FILESDIR}"/${P}-fix_scgi_crash.patch
+ eautoreconf
+}
+
+src_compile() {
+ replace-flags -Os -O2
+ append-flags -fno-strict-aliasing
+
+ if [[ $(tc-arch) = "x86" ]]; then
+ filter-flags -fomit-frame-pointer -fforce-addr
+ fi
+
+ econf \
+ $(use_enable debug) \
+ $(use_enable ipv6) \
+ $(use_with xmlrpc xmlrpc-c) \
+ --disable-dependency-tracking \
+ || die "econf failed"
+
+ emake || die "emake failed"
+}
+
+pkg_postinst() {
+ elog "rtorrent now supports a configuration file."
+ elog "A sample configuration file for rtorrent can be found"
+ elog "in ${ROOT}usr/share/doc/${PF}/rtorrent.rc.gz."
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "make install failed"
+ dodoc AUTHORS README TODO doc/rtorrent.rc
+}
+
+pkg_postinst() {
+ ewarn "If you're upgrading from rtorrent <0.8.0, you will have to delete your"
+ ewarn "session directory or run the fixSession080-c.py script from this address:"
+ ewarn "http://rssdler.googlecode.com/files/fixSession080-c.py"
+ ewarn "See http://libtorrent.rakshasa.no/wiki/LibTorrentKnownIssues for more info."
+}