summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyan Hill <dirtyepic@gentoo.org>2011-03-18 00:32:05 +0000
committerRyan Hill <dirtyepic@gentoo.org>2011-03-18 00:32:05 +0000
commitebb27b9242d3a037aa9bf8e23185a2cffcaffb45 (patch)
treea7c8e6cf4d21eca24d427e88eb5c9e5f0987c974 /net-p2p
parentfix bug #358929 (diff)
downloadgentoo-2-ebb27b9242d3a037aa9bf8e23185a2cffcaffb45.tar.gz
gentoo-2-ebb27b9242d3a037aa9bf8e23185a2cffcaffb45.tar.bz2
gentoo-2-ebb27b9242d3a037aa9bf8e23185a2cffcaffb45.zip
Revision bump, new ebuild. Apply Fedora patchset.
(Portage version: 2.2.0_alpha27/cvs/Linux x86_64)
Diffstat (limited to 'net-p2p')
-rw-r--r--net-p2p/bittorrent/ChangeLog18
-rw-r--r--net-p2p/bittorrent/bittorrent-4.4.0-r2.ebuild87
-rw-r--r--net-p2p/bittorrent/files/bittorrent-4.4.0-bencode-float.patch75
-rw-r--r--net-p2p/bittorrent/files/bittorrent-4.4.0-fastresume.patch23
-rw-r--r--net-p2p/bittorrent/files/bittorrent-4.4.0-hashlib.patch142
-rw-r--r--net-p2p/bittorrent/files/bittorrent-4.4.0-keyerror.patch15
-rw-r--r--net-p2p/bittorrent/files/bittorrent-4.4.0-no-version-check.patch14
-rw-r--r--net-p2p/bittorrent/files/bittorrent-4.4.0-pkidir.patch13
-rw-r--r--net-p2p/bittorrent/files/bittorrent-4.4.0-pygtk-thread-warnings.patch81
-rw-r--r--net-p2p/bittorrent/files/bittorrent-4.4.0-python26-syntax.patch45
-rw-r--r--net-p2p/bittorrent/files/bittorrent.desktop11
-rw-r--r--net-p2p/bittorrent/metadata.xml6
12 files changed, 527 insertions, 3 deletions
diff --git a/net-p2p/bittorrent/ChangeLog b/net-p2p/bittorrent/ChangeLog
index def6fc6f36f4..3b59b0e1e9d9 100644
--- a/net-p2p/bittorrent/ChangeLog
+++ b/net-p2p/bittorrent/ChangeLog
@@ -1,6 +1,20 @@
# ChangeLog for net-p2p/bittorrent
-# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-p2p/bittorrent/ChangeLog,v 1.135 2010/11/15 16:12:35 arfrever Exp $
+# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/bittorrent/ChangeLog,v 1.136 2011/03/18 00:32:05 dirtyepic Exp $
+
+*bittorrent-4.4.0-r2 (18 Mar 2011)
+
+ 18 Mar 2011; Ryan Hill <dirtyepic@gentoo.org> +bittorrent-4.4.0-r2.ebuild,
+ +files/bittorrent-4.4.0-bencode-float.patch,
+ +files/bittorrent-4.4.0-fastresume.patch,
+ +files/bittorrent-4.4.0-hashlib.patch,
+ +files/bittorrent-4.4.0-keyerror.patch,
+ +files/bittorrent-4.4.0-no-version-check.patch,
+ +files/bittorrent-4.4.0-pkidir.patch,
+ +files/bittorrent-4.4.0-pygtk-thread-warnings.patch,
+ +files/bittorrent-4.4.0-python26-syntax.patch, +files/bittorrent.desktop,
+ metadata.xml:
+ Revision bump, new ebuild. Apply Fedora patchset.
15 Nov 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>
bittorrent-4.4.0-r1.ebuild, bittorrent-5.0.9-r1.ebuild,
diff --git a/net-p2p/bittorrent/bittorrent-4.4.0-r2.ebuild b/net-p2p/bittorrent/bittorrent-4.4.0-r2.ebuild
new file mode 100644
index 000000000000..33561f3ae807
--- /dev/null
+++ b/net-p2p/bittorrent/bittorrent-4.4.0-r2.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/bittorrent/bittorrent-4.4.0-r2.ebuild,v 1.1 2011/03/18 00:32:05 dirtyepic Exp $
+
+EAPI="3"
+
+PYTHON_DEPEND="2:2.5"
+PYTHON_USE_WITH="threads"
+
+# Maintainer note:
+# keep this package at 4.4.0.
+# 5.x - requires wxpython-2.6 which we don't carry
+# 6.x - binary-only non-free crap
+# Fedora has also frozen bittorrent at 4.4.0 and is a good source of patches
+# http://pkgs.fedoraproject.org/gitweb/?p=bittorrent.git
+
+inherit distutils eutils fdo-mime python
+
+MY_P="${P/bittorrent/BitTorrent}"
+
+DESCRIPTION="Tool for distributing files via a distributed network of nodes"
+HOMEPAGE="http://www.bittorrent.com/"
+SRC_URI="http://www.bittorrent.com/dl/${MY_P}.tar.gz"
+
+LICENSE="BitTorrent"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE="gtk"
+
+RDEPEND=">=dev-python/pycrypto-2.0
+ gtk? ( >=x11-libs/gtk+-2.6:2
+ >=dev-python/pygtk-2.6:2 )"
+DEPEND="${RDEPEND}"
+# dev-python/dnspython"
+
+S=${WORKDIR}/${MY_P}
+
+DOCS="README.txt TRACKERLESS.txt"
+PYTHON_MODNAME="BitTorrent khashmir"
+
+pkg_setup() {
+ python_set_active_version 2
+ python_pkg_setup
+}
+
+src_prepare() {
+ distutils_src_prepare
+
+ epatch "${FILESDIR}"/${P}-no-version-check.patch
+ epatch "${FILESDIR}"/${P}-pkidir.patch
+ epatch "${FILESDIR}"/${P}-fastresume.patch
+ epatch "${FILESDIR}"/${P}-pygtk-thread-warnings.patch
+ epatch "${FILESDIR}"/${P}-python26-syntax.patch
+ epatch "${FILESDIR}"/${P}-bencode-float.patch
+ epatch "${FILESDIR}"/${P}-keyerror.patch
+ epatch "${FILESDIR}"/${P}-hashlib.patch
+
+ # fix doc path #109743
+ sed -i -e "/dp.*appdir/ s:appdir:'${PF}':" BitTorrent/platform.py
+}
+
+src_install() {
+ distutils_src_install
+
+ if use gtk; then
+ doicon images/bittorrent.ico
+ domenu "${FILESDIR}"/${PN}.desktop
+ else
+ rm -f "${D}"usr/bin/{bit,make}torrent
+ fi
+
+ insinto /etc/pki/bittorrent/
+ doins public.key
+
+ newinitd "${FILESDIR}"/bittorrent-tracker.initd bittorrent-tracker
+ newconfd "${FILESDIR}"/bittorrent-tracker.confd bittorrent-tracker
+}
+
+pkg_postinst() {
+ distutils_pkg_postinst
+ use gtk && fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ distutils_pkg_postrm
+ use gtk && fdo-mime_desktop_database_update
+}
diff --git a/net-p2p/bittorrent/files/bittorrent-4.4.0-bencode-float.patch b/net-p2p/bittorrent/files/bittorrent-4.4.0-bencode-float.patch
new file mode 100644
index 000000000000..c14a7b668c25
--- /dev/null
+++ b/net-p2p/bittorrent/files/bittorrent-4.4.0-bencode-float.patch
@@ -0,0 +1,75 @@
+Add bencode support for floating point values.
+
+https://bugzilla.redhat.com/451496
+
+--- a/BitTorrent/bencode.py
++++ b/BitTorrent/bencode.py
+@@ -14,6 +14,8 @@ from BitTorrent.obsoletepythonsupport import *
+
+ from BitTorrent import BTFailure
+
++import string
++
+ def decode_int(x, f):
+ f += 1
+ newf = x.index('e', f)
+@@ -25,6 +27,23 @@ def decode_int(x, f):
+ raise ValueError
+ return (n, newf+1)
+
++def assert_finite(n):
++ """Raises ValueError if n is NaN or infinite."""
++
++ valid_chars = '0123456789.-+eE'
++ if repr(n).translate(string.maketrans('',''), valid_chars) != '':
++ raise ValueError('encountered NaN or infinite')
++
++def decode_float(x, f):
++ f += 1
++ newf = x.index('e', f)
++ try:
++ n = float(x[f:newf].replace('E', 'e'))
++ assert_finite(n)
++ except (OverflowError, ValueError):
++ raise ValueError('encountered NaN or infinite')
++ return (n, newf+1)
++
+ def decode_string(x, f):
+ colon = x.index(':', f)
+ n = int(x[f:colon])
+@@ -55,6 +74,7 @@ decode_func = {}
+ decode_func['l'] = decode_list
+ decode_func['d'] = decode_dict
+ decode_func['i'] = decode_int
++decode_func['f'] = decode_float
+ decode_func['0'] = decode_string
+ decode_func['1'] = decode_string
+ decode_func['2'] = decode_string
+@@ -75,7 +95,7 @@ def bdecode(x):
+ raise BTFailure, _("invalid bencoded value (data after valid prefix)")
+ return r
+
+-from types import StringType, IntType, LongType, DictType, ListType, TupleType
++from types import StringType, IntType, LongType, DictType, ListType, TupleType, FloatType
+
+
+ class Bencached(object):
+@@ -91,6 +111,10 @@ def encode_bencached(x,r):
+ def encode_int(x, r):
+ r.extend(('i', str(x), 'e'))
+
++def encode_float(x, r):
++ assert_finite(x)
++ r.extend(('f', repr(x).replace('e', 'E'), 'e'))
++
+ def encode_bool(x, r):
+ if x:
+ encode_int(1, r)
+@@ -119,6 +143,7 @@ encode_func = {}
+ encode_func[Bencached] = encode_bencached
+ encode_func[IntType] = encode_int
+ encode_func[LongType] = encode_int
++encode_func[FloatType] = encode_float
+ encode_func[StringType] = encode_string
+ encode_func[ListType] = encode_list
+ encode_func[TupleType] = encode_list
diff --git a/net-p2p/bittorrent/files/bittorrent-4.4.0-fastresume.patch b/net-p2p/bittorrent/files/bittorrent-4.4.0-fastresume.patch
new file mode 100644
index 000000000000..b282afde170b
--- /dev/null
+++ b/net-p2p/bittorrent/files/bittorrent-4.4.0-fastresume.patch
@@ -0,0 +1,23 @@
+"Could not load fastresume data: invalid literal for int() with base 10: '1300250602.1'
+Will perform full hash check."
+
+--- a/BitTorrent/Storage.py
++++ b/BitTorrent/Storage.py
+@@ -213,7 +213,7 @@ class Storage(object):
+ resumefile.write(str(amount_done) + '\n')
+ for x, x, filename in self.ranges:
+ resumefile.write(str(os.path.getsize(filename)) + ' ' +
+- str(os.path.getmtime(filename)) + '\n')
++ str(int(os.path.getmtime(filename))) + '\n')
+
+ def check_fastresume(self, resumefile, return_filelist=False,
+ piece_size=None, numpieces=None, allfiles=None):
+@@ -237,7 +237,7 @@ class Storage(object):
+ else:
+ raise BTFailure(_("Another program appears to have moved, renamed, or deleted the file, "
+ "or %s may have crashed last time it was run.") % app_name)
+- if fsize > 0 and mtime != os.path.getmtime(filename):
++ if fsize > 0 and mtime != int(os.path.getmtime(filename)):
+ raise BTFailure(_("Another program appears to have modified the file, "
+ "or %s may have crashed last time it was run.") % app_name)
+ if size != fsize:
diff --git a/net-p2p/bittorrent/files/bittorrent-4.4.0-hashlib.patch b/net-p2p/bittorrent/files/bittorrent-4.4.0-hashlib.patch
new file mode 100644
index 000000000000..28bfaa76a90a
--- /dev/null
+++ b/net-p2p/bittorrent/files/bittorrent-4.4.0-hashlib.patch
@@ -0,0 +1,142 @@
+DeprecationWarning: the sha module is deprecated; use the hashlib module instead
+
+--- a/BitTorrent/ConvertedMetainfo.py
++++ b/BitTorrent/ConvertedMetainfo.py
+@@ -15,7 +15,10 @@ from __future__ import generators
+
+ import os
+ import sys
+-from sha import sha
++try:
++ from hashlib import sha1 as sha
++except ImportError:
++ from sha import sha
+
+ from BitTorrent.obsoletepythonsupport import *
+
+--- a/BitTorrent/NewVersion.py
++++ b/BitTorrent/NewVersion.py
+@@ -15,7 +15,10 @@ import sys
+ import zurllib
+ import pickle
+ import threading
+-from sha import sha
++try:
++ from hashlib import sha1 as sha
++except ImportError:
++ from sha import sha
+
+ DEBUG = False
+
+--- a/BitTorrent/PeerID.py
++++ b/BitTorrent/PeerID.py
+@@ -11,7 +11,10 @@
+ # Written by Matt Chisholm
+
+ import os
+-from sha import sha
++try:
++ from hashlib import sha1 as sha
++except ImportError:
++ from sha import sha
+ from time import time
+ try:
+ getpid = os.getpid
+--- a/BitTorrent/StorageWrapper.py
++++ b/BitTorrent/StorageWrapper.py
+@@ -12,7 +12,10 @@
+
+ from __future__ import division
+
+-from sha import sha
++try:
++ from hashlib import sha1 as sha
++except ImportError:
++ from sha import sha
+ from array import array
+ from binascii import b2a_hex
+
+--- a/BitTorrent/download.py
++++ b/BitTorrent/download.py
+@@ -19,7 +19,10 @@ import sys
+ import threading
+ import errno
+ import gc
+-from sha import sha
++try:
++ from hashlib import sha1 as sha
++except ImportError:
++ from sha import sha
+ from socket import error as socketerror
+ from random import seed
+ from time import time
+--- a/BitTorrent/makemetafile.py
++++ b/BitTorrent/makemetafile.py
+@@ -16,7 +16,10 @@ from __future__ import division
+
+ import os
+ import sys
+-from sha import sha
++try:
++ from hashlib import sha1 as sha
++except ImportError:
++ from sha import sha
+ from time import time
+ from threading import Event
+
+--- a/BitTorrent/parsedir.py
++++ b/BitTorrent/parsedir.py
+@@ -11,7 +11,10 @@
+ # Written by John Hoffman and Uoti Urpala
+
+ import os
+-from sha import sha
++try:
++ from hashlib import sha1 as sha
++except ImportError:
++ from sha import sha
+
+ from BitTorrent.bencode import bencode, bdecode
+ from BitTorrent.btformats import check_message
+--- a/khashmir/khash.py
++++ b/khashmir/khash.py
+@@ -8,7 +8,10 @@
+ # for the specific language governing rights and limitations under the
+ # License.
+
+-from sha import sha
++try:
++ from hashlib import sha1 as sha
++except ImportError:
++ from sha import sha
+ from random import randint
+
+ #this is ugly, hopefully os.entropy will be in 2.4
+--- a/khashmir/khashmir.py
++++ b/khashmir/khashmir.py
+@@ -13,7 +13,10 @@ from socket import gethostbyname
+
+ from BitTorrent.platform import bttime as time
+
+-from sha import sha
++try:
++ from hashlib import sha1 as sha
++except ImportError:
++ from sha import sha
+ import re
+ from BitTorrent.defaultargs import common_options, rare_options
+ from BitTorrent.RawServer_magic import RawServer
+--- a/khashmir/utkhashmir.py
++++ b/khashmir/utkhashmir.py
+@@ -13,7 +13,10 @@ from actions import *
+ from khash import newID
+ from krpc import KRPCProtocolError, KRPCFailSilently
+ from cache import Cache
+-from sha import sha
++try:
++ from hashlib import sha1 as sha
++except ImportError:
++ from sha import sha
+ from util import *
+ from threading import Thread
+ from socket import gethostbyname
diff --git a/net-p2p/bittorrent/files/bittorrent-4.4.0-keyerror.patch b/net-p2p/bittorrent/files/bittorrent-4.4.0-keyerror.patch
new file mode 100644
index 000000000000..c2730d1d004f
--- /dev/null
+++ b/net-p2p/bittorrent/files/bittorrent-4.4.0-keyerror.patch
@@ -0,0 +1,15 @@
+Fix bug with error: KeyError: <type 'float'>
+
+https://bugzilla.redhat.com/451496
+
+--- a/BitTorrent/track.py
++++ b/BitTorrent/track.py
+@@ -107,6 +107,8 @@ defaults = [
+ _("scrape access allowed (can be none, specific or full)")),
+ ('max_give', 200,
+ _("maximum number of peers to give with any one request")),
++ ('max_incomplete', 100,
++ _("max number of outgoing incomplete connections")),
+ ('twisted', -1,
+ _("Use Twisted network libraries for network connections. 1 means use twisted, 0 means do not use twisted, -1 means autodetect, and prefer twisted")),
+ ('pid', '/var/run/bittorrent-tracker.pid',
diff --git a/net-p2p/bittorrent/files/bittorrent-4.4.0-no-version-check.patch b/net-p2p/bittorrent/files/bittorrent-4.4.0-no-version-check.patch
new file mode 100644
index 000000000000..b0c20fde497b
--- /dev/null
+++ b/net-p2p/bittorrent/files/bittorrent-4.4.0-no-version-check.patch
@@ -0,0 +1,14 @@
+Disable check for new versions.
+
+--- a/BitTorrent/NewVersion.py
++++ b/BitTorrent/NewVersion.py
+@@ -128,6 +128,9 @@ class Updater(object):
+
+
+ def get(self):
++ self.debug('Skipping version check')
++ return
++
+ try:
+ self.get_available()
+ except BTFailure, e:
diff --git a/net-p2p/bittorrent/files/bittorrent-4.4.0-pkidir.patch b/net-p2p/bittorrent/files/bittorrent-4.4.0-pkidir.patch
new file mode 100644
index 000000000000..98f9f81c177f
--- /dev/null
+++ b/net-p2p/bittorrent/files/bittorrent-4.4.0-pkidir.patch
@@ -0,0 +1,13 @@
+Install public key in standard place.
+
+--- a/BitTorrent/NewVersion.py
++++ b/BitTorrent/NewVersion.py
+@@ -163,7 +163,7 @@ class Updater(object):
+ self.threadwrap(self.errorfunc, WARNING, '\n'.join(terrors))
+
+ if torrentfile and signature:
+- public_key_file = open(os.path.join(doc_root, 'public.key'), 'rb')
++ public_key_file = open('/etc/pki/bittorrent/public.key', 'rb')
+ public_key = pickle.load(public_key_file)
+ h = sha(torrentfile).digest()
+ if public_key.verify(h, signature):
diff --git a/net-p2p/bittorrent/files/bittorrent-4.4.0-pygtk-thread-warnings.patch b/net-p2p/bittorrent/files/bittorrent-4.4.0-pygtk-thread-warnings.patch
new file mode 100644
index 000000000000..c4a232622def
--- /dev/null
+++ b/net-p2p/bittorrent/files/bittorrent-4.4.0-pygtk-thread-warnings.patch
@@ -0,0 +1,81 @@
+GtkDeprecationWarning: gtk.threads_leave is deprecated, use gtk.gdk.threads_leave instead
+
+--- a/BitTorrent/GUI.py
++++ b/BitTorrent/GUI.py
+@@ -25,9 +25,9 @@ from BitTorrent import app_name, FAQ_URL, languages, language_names
+ from BitTorrent.platform import image_root, read_language_file, write_language_file
+
+ def lock_wrap(function, *args):
+- gtk.threads_enter()
++ gtk.gdk.threads_enter()
+ function(*args)
+- gtk.threads_leave()
++ gtk.gdk.threads_leave()
+
+ def gtk_wrap(function, *args):
+ gobject.idle_add(lock_wrap, function, *args)
+@@ -377,10 +377,10 @@ class AutoScrollingWindow(ScrolledWindow):
+
+ def scroll_and_wait(self, amount, lock_held):
+ if not lock_held:
+- gtk.threads_enter()
++ gtk.gdk.threads_enter()
+ self.scroll_by(0, amount)
+ if not lock_held:
+- gtk.threads_leave()
++ gtk.gdk.threads_leave()
+ if self.vscrolltimeout is not None:
+ gobject.source_remove(self.vscrolltimeout)
+ self.vscrolltimeout = gobject.timeout_add(100, self.scroll_and_wait, amount, False)
+--- a/bittorrent.py
++++ b/bittorrent.py
+@@ -2742,7 +2742,7 @@ class DownloadInfoFrame(object):
+ if self.config['start_minimized']:
+ self.mainwindow.iconify()
+
+- gtk.threads_enter()
++ gtk.gdk.threads_enter()
+
+ self.mainwindow.set_border_width(0)
+
+@@ -2942,7 +2942,7 @@ class DownloadInfoFrame(object):
+
+ self.nag()
+
+- gtk.threads_leave()
++ gtk.gdk.threads_leave()
+
+ def window_event(self, widget, event, *args):
+ if event.changed_mask == gtk.gdk.WINDOW_STATE_ICONIFIED:
+@@ -3758,14 +3758,14 @@ class MainLoop:
+ self.mainwindow = None
+ self.started = 0
+
+- gtk.threads_init()
++ gtk.gdk.threads_init()
+
+ def set_mainwindow(self, mainwindow):
+ self.mainwindow = mainwindow
+
+ def run(self):
+ self.mainwindow.traythread.start()
+- gtk.threads_enter()
++ gtk.gdk.threads_enter()
+
+ if self.mainwindow:
+ self.mainwindow.ssbutton.set_paused(self.mainwindow.config['pause'])
+@@ -3777,12 +3777,12 @@ class MainLoop:
+ self.started = 1
+ gtk.main()
+ except KeyboardInterrupt:
+- gtk.threads_leave()
++ gtk.gdk.threads_leave()
+ if self.mainwindow:
+ self.mainwindow.torrentqueue.set_done()
+ raise
+
+- gtk.threads_leave()
++ gtk.gdk.threads_leave()
+
+ def quit(self):
+ if self.mainwindow:
diff --git a/net-p2p/bittorrent/files/bittorrent-4.4.0-python26-syntax.patch b/net-p2p/bittorrent/files/bittorrent-4.4.0-python26-syntax.patch
new file mode 100644
index 000000000000..1ad8751528f6
--- /dev/null
+++ b/net-p2p/bittorrent/files/bittorrent-4.4.0-python26-syntax.patch
@@ -0,0 +1,45 @@
+Fix syntax errors with python 2.6.
+
+https://bugs.gentoo.org/265784
+
+--- a/khashmir/inserter.py
++++ b/khashmir/inserter.py
+@@ -28,7 +28,6 @@ def d(n):
+ done = done+1
+
+ if __name__=="__main__":
+- global done
+ host, port = sys.argv[1:]
+ x = UTKhashmir("", 22038, "/tmp/cgcgcgc")
+ x.addContact(host, int(port))
+--- a/khashmir/test_krpc.py
++++ b/khashmir/test_krpc.py
+@@ -44,20 +44,20 @@ class KRPCTests(TestCase):
+ self.r = RawServer(Event(), d)
+
+ addr = ('127.0.0.1', 1180)
+- self.as = self.r.create_udpsocket(addr[1], addr[0], True)
++ self.asock = self.r.create_udpsocket(addr[1], addr[0], True)
+ self.af = Receiver(addr)
+- self.a = hostbroker(self.af, addr, self.as, self.r.add_task)
+- self.r.start_listening_udp(self.as, self.a)
++ self.a = hostbroker(self.af, addr, self.asock, self.r.add_task)
++ self.r.start_listening_udp(self.asock, self.a)
+
+ addr = ('127.0.0.1', 1181)
+- self.bs = self.r.create_udpsocket(addr[1], addr[0], True)
++ self.bsock = self.r.create_udpsocket(addr[1], addr[0], True)
+ self.bf = Receiver(addr)
+- self.b = hostbroker(self.bf, addr, self.bs, self.r.add_task)
+- self.r.start_listening_udp(self.bs, self.b)
++ self.b = hostbroker(self.bf, addr, self.bsock, self.r.add_task)
++ self.r.start_listening_udp(self.bsock, self.b)
+
+ def tearDown(self):
+- self.as.close()
+- self.bs.close()
++ self.asock.close()
++ self.bsock.close()
+
+ def testSimpleMessage(self):
+ self.noisy = 0
diff --git a/net-p2p/bittorrent/files/bittorrent.desktop b/net-p2p/bittorrent/files/bittorrent.desktop
new file mode 100644
index 000000000000..9405cb489cff
--- /dev/null
+++ b/net-p2p/bittorrent/files/bittorrent.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Encoding=UTF-8
+Name=BitTorrent File Transfer
+Comment=Distributed download of files from the Internet
+Exec=bittorrent
+Icon=/usr/share/pixmaps/bittorrent.ico
+Terminal=false
+Type=Application
+StartupNotify=true
+Categories=Network;FileTransfer;P2P;
+MimeType=application/x-bittorrent;
diff --git a/net-p2p/bittorrent/metadata.xml b/net-p2p/bittorrent/metadata.xml
index aa0f3664825f..a1c365039f17 100644
--- a/net-p2p/bittorrent/metadata.xml
+++ b/net-p2p/bittorrent/metadata.xml
@@ -1,5 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>net-p2p</herd>
+ <herd>net-p2p</herd>
+ <maintainer>
+ <email>dirtyepic@gentoo.org</email>
+ <name>Ryan Hill</name>
+ </maintainer>
</pkgmetadata>