[prev in list] [next in list] [prev in thread] [next in thread] 

List:       mono-patches
Subject:    [Mono-patches] r120309 - in
From:       "Alan McGovern (alan.mcgovern () gmail ! com)"
Date:       2008-11-30 22:41:03
Message-ID: 20081130224103.2499B9472C () mono-cvs ! ximian ! com
[Download RAW message or body]

Author: alanmc
Date: 2008-11-30 17:41:02 -0500 (Sun, 30 Nov 2008)
New Revision: 120309

Modified:
   trunk/bitsharp/src/MonoTorrent/MonoTorrent.Client/Messages/LibtorrentMessages/ExtendedHandshakeMessage.cs
  trunk/bitsharp/src/MonoTorrent/MonoTorrent.Client/Messages/uTorrent/PeerExchangeMessage.cs
 Log:
Only use peer exchange if the torrent is not private

Modified: trunk/bitsharp/src/MonoTorrent/MonoTorrent.Client/Messages/LibtorrentMessages/ExtendedHandshakeMessage.cs
 ===================================================================
--- trunk/bitsharp/src/MonoTorrent/MonoTorrent.Client/Messages/LibtorrentMessages/ExtendedHandshakeMessage.cs	2008-11-30 \
                22:08:19 UTC (rev 120308)
+++ trunk/bitsharp/src/MonoTorrent/MonoTorrent.Client/Messages/LibtorrentMessages/ExtendedHandshakeMessage.cs	2008-11-30 \
22:41:02 UTC (rev 120309) @@ -175,7 +175,7 @@
 
             // FIXME : Find a way to be more elegant!
             foreach(ExtensionSupport support in supports) {
-                if (support.Name == "ut_pex" && id.PeerExchangeManager == null) {
+                if (support.Name == "ut_pex" && id.PeerExchangeManager == null && \
                !id.TorrentManager.Torrent.IsPrivate) {
                     id.PeerExchangeManager = new PeerExchangeManager (id);
                     break;
                 }

Modified: trunk/bitsharp/src/MonoTorrent/MonoTorrent.Client/Messages/uTorrent/PeerExchangeMessage.cs
 ===================================================================
--- trunk/bitsharp/src/MonoTorrent/MonoTorrent.Client/Messages/uTorrent/PeerExchangeMessage.cs	2008-11-30 \
                22:08:19 UTC (rev 120308)
+++ trunk/bitsharp/src/MonoTorrent/MonoTorrent.Client/Messages/uTorrent/PeerExchangeMessage.cs	2008-11-30 \
22:41:02 UTC (rev 120309) @@ -56,6 +56,10 @@
 
         internal override void Handle(PeerId id)
         {
+            // Ignore peer exchange messages on private torrents
+            if (id.TorrentManager.Torrent.IsPrivate)
+                return;
+
             IList<Peer> peers = Peer.Decode((BEncodedString)peerDict[AddedKey]);
             int count = id.TorrentManager.AddPeers(peers);
             id.TorrentManager.RaisePeersFound(new \
PeerExchangePeersAdded(id.TorrentManager, count, peers.Count, id));

_______________________________________________
Mono-patches maillist  -  Mono-patches@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-patches


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic