Socket
Socket
Sign inDemoInstall

discovery-swarm

Package Overview
Dependencies
Maintainers
4
Versions
52
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

discovery-swarm - npm Package Compare versions

Comparing version 6.0.0 to 6.0.1

9

index.js

@@ -209,6 +209,11 @@ var discovery = require('discovery-channel')

var peerSeen = self._peersSeen[id] || self._peersSeen[longId]
if (peerSeen) {
self.emit('peer-rejected', peer, { reason: (peerSeen === PEER_BANNED) ? 'banned' : 'duplicate' })
var peerConnected = self._peersIds[id] || self._peersIds[longId]
if (peerSeen && peerSeen === PEER_BANNED) {
self.emit('peer-rejected', peer, { reason: 'banned' })
return
} else if (peerSeen && peerConnected) {
self.emit('peer-rejected', peer, { reason: 'duplicate' })
return
}
self._peersSeen[longId] = PEER_SEEN

@@ -215,0 +220,0 @@ self._peersQueued.push(peerify(peer, channel))

{
"name": "discovery-swarm",
"version": "6.0.0",
"version": "6.0.1",
"description": "A network swarm that uses discovery-channel to find peers",

@@ -5,0 +5,0 @@ "main": "index.js",

@@ -224,1 +224,61 @@ var test = require('tape')

})
test('peer should be able to reconnect after disconnection', function (t) {
var swarms = []
var reconnecting = false
var stablePeer = create()
var disconnectingPeer = create()
stablePeer.on('connection', function (connection, info) {
proceedWithDisconnection()
})
stablePeer.join('test')
disconnectingPeer.join('test')
function create () {
var s = swarm({ dht: false, utp: false })
swarms.push(s)
return s
}
function proceedWithDisconnection () {
stablePeer.on('connection-closed', function (connection, info) {
reconnect()
})
disconnectingPeer.leave('test')
}
function reconnect () {
if (!reconnecting) {
reconnecting = true
failInCaseOfRejection()
successIfAbleToReconnect()
disconnectingPeer.join('test')
}
}
function failInCaseOfRejection () {
stablePeer.on('peer-rejected', function (peerAddress, details) {
t.fail('Peer should be able to reconnect but is rejected')
swarms.forEach(function (s) {
s.destroy()
})
t.end()
})
}
function successIfAbleToReconnect () {
disconnectingPeer.on('connection', function (connection, info) {
t.ok(connection, 'got connection')
swarms.forEach(function (s) {
s.destroy()
})
t.end()
})
}
})
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc