Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/webtorrent/webtorrent.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFeross Aboukhadijeh <feross@feross.org>2016-02-19 05:20:41 +0300
committerFeross Aboukhadijeh <feross@feross.org>2016-02-19 05:20:41 +0300
commit95454e147c1748da8b60a2921f084c927ea7ae3e (patch)
tree7fdff97605b9b79a94e93c669c7877ecc1931a6c
parent42f94e89b66f39d5f0079d7d22f902f4b2013ad3 (diff)
BREAKING: don't emit 'peer' event for invalid peers
-rw-r--r--lib/torrent.js9
-rw-r--r--package.json2
-rw-r--r--test/node/blocklist-tracker.js2
3 files changed, 9 insertions, 4 deletions
diff --git a/lib/torrent.js b/lib/torrent.js
index c374741..0a1a03a 100644
--- a/lib/torrent.js
+++ b/lib/torrent.js
@@ -456,8 +456,12 @@ Torrent.prototype.addPeer = function (peer) {
if (self.destroyed) throw new Error('torrent is destroyed')
function addPeer () {
- self.swarm.addPeer(peer)
- self.emit('peer', peer)
+ var wasAdded = self.swarm.addPeer(peer)
+ if (wasAdded) {
+ self.emit('peer', peer)
+ } else {
+ self.emit('invalidPeer', peer)
+ }
}
if (self.client.blocked) {
@@ -467,6 +471,7 @@ Torrent.prototype.addPeer = function (peer) {
try {
parts = addrToIPPort(peer)
} catch (e) {
+ self.emit('invalidPeer', peer)
return false
}
host = parts[0]
diff --git a/package.json b/package.json
index dbf44b1..10d7906 100644
--- a/package.json
+++ b/package.json
@@ -31,7 +31,7 @@
"addr-to-ip-port": "^1.0.1",
"bitfield": "^1.0.2",
"bittorrent-dht": "^6.0.1",
- "bittorrent-swarm": "^7.0.0",
+ "bittorrent-swarm": "^7.1.0",
"chunk-store-stream": "^2.0.0",
"clivas": "^0.2.0",
"cpus": "^1.0.0",
diff --git a/test/node/blocklist-tracker.js b/test/node/blocklist-tracker.js
index 90ac3be..cac9468 100644
--- a/test/node/blocklist-tracker.js
+++ b/test/node/blocklist-tracker.js
@@ -41,7 +41,7 @@ test('blocklist blocks peers discovered via tracker', function (t) {
var torrent1 = client1.add(parsedTorrent)
- torrent1.on('peer', function () {
+ torrent1.on('invalidPeer', function () {
t.pass('client1 found itself')
cb(null)
})