summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Elio Pettenò <flameeyes@gentoo.org>2006-04-23 20:38:09 +0000
committerDiego Elio Pettenò <flameeyes@gentoo.org>2006-04-23 20:38:09 +0000
commita36dcdc6859e6682497a1dabfa4a370e21b99d4a (patch)
tree7036e697182ff1dff216948c53812b7487f3451f /net-libs/libtorrent/files
parentFix for gcc-4.1 (diff)
downloadhistorical-a36dcdc6859e6682497a1dabfa4a370e21b99d4a.tar.gz
historical-a36dcdc6859e6682497a1dabfa4a370e21b99d4a.tar.bz2
historical-a36dcdc6859e6682497a1dabfa4a370e21b99d4a.zip
Add patch from upstream for avoiding random crashes, thanks to Josu López Fernández for reporting in bug #131007.
Package-Manager: portage-2.1_pre9-r3
Diffstat (limited to 'net-libs/libtorrent/files')
-rw-r--r--net-libs/libtorrent/files/digest-libtorrent-0.9.0-r13
-rw-r--r--net-libs/libtorrent/files/libtorrent-0.9.0-crash.patch32
2 files changed, 35 insertions, 0 deletions
diff --git a/net-libs/libtorrent/files/digest-libtorrent-0.9.0-r1 b/net-libs/libtorrent/files/digest-libtorrent-0.9.0-r1
new file mode 100644
index 000000000000..f92f3fde7550
--- /dev/null
+++ b/net-libs/libtorrent/files/digest-libtorrent-0.9.0-r1
@@ -0,0 +1,3 @@
+MD5 cabdb9aa38d06dccac3ce0dbc2910d71 libtorrent-0.9.0.tar.gz 461999
+RMD160 3ad37136459bd965d73003bc7f1aa35c30c3d11e libtorrent-0.9.0.tar.gz 461999
+SHA256 2181e7550f3837735252c51db005101eabceab6a247d1cd13f451511f4d18ef7 libtorrent-0.9.0.tar.gz 461999
diff --git a/net-libs/libtorrent/files/libtorrent-0.9.0-crash.patch b/net-libs/libtorrent/files/libtorrent-0.9.0-crash.patch
new file mode 100644
index 000000000000..903d70d06564
--- /dev/null
+++ b/net-libs/libtorrent/files/libtorrent-0.9.0-crash.patch
@@ -0,0 +1,32 @@
+Index: libtorrent-0.9.0/src/protocol/peer_connection_seed.cc
+===================================================================
+--- libtorrent-0.9.0/src/protocol/peer_connection_seed.cc (revision 666)
++++ libtorrent-0.9.0/src/protocol/peer_connection_seed.cc (working copy)
+@@ -159,6 +159,11 @@
+ return true;
+
+ case ProtocolBase::BITFIELD:
++ // Bad peer, sending their bitfield after other messages have been
++ // sent.
++ if (m_peerChunks.using_counter() || !m_peerChunks.bitfield()->is_all_unset())
++ throw close_connection();
++
+ if (read_bitfield_from_buffer(length - 1)) {
+ finish_bitfield();
+ return true;
+Index: libtorrent-0.9.0/src/protocol/peer_connection_leech.cc
+===================================================================
+--- libtorrent-0.9.0/src/protocol/peer_connection_leech.cc (revision 666)
++++ libtorrent-0.9.0/src/protocol/peer_connection_leech.cc (working copy)
+@@ -200,6 +200,11 @@
+ return true;
+
+ case ProtocolBase::BITFIELD:
++ // Bad peer, sending their bitfield after other messages have been
++ // sent.
++ if (m_peerChunks.using_counter() || !m_peerChunks.bitfield()->is_all_unset())
++ throw close_connection();
++
+ if (read_bitfield_from_buffer(length - 1)) {
+ finish_bitfield();
+ return true;