Compare commits

...

9 Commits

Author SHA1 Message Date
David Dias
f686a3a010 chore: release version v0.4.2 2017-07-08 21:24:29 +01:00
David Dias
92946a59c3 chore: update contributors 2017-07-08 21:24:29 +01:00
David Dias
65e8fd5f24 chore: update deps 2017-07-08 21:21:27 +01:00
David Dias
f07b35f4d4 chore: release version v0.4.1 2017-04-06 15:26:16 -04:00
David Dias
85f601f809 chore: update contributors 2017-04-06 15:26:15 -04:00
David Dias
bb6d3dfc36 fix: if conn was closed, don't crash just because identify didn't get any data (#40) 2017-04-06 15:14:37 -04:00
David Dias
4312acf49a chore: release version v0.4.0 2017-03-30 14:20:11 +01:00
David Dias
45c0e957c3 chore: update contributors 2017-03-30 14:20:10 +01:00
David Dias
7d4294b279 Feat/new peer info (#39)
* chore: update deps

* feat: peer-info rave
2017-03-30 14:17:25 +01:00
5 changed files with 25 additions and 25 deletions

View File

@@ -1,6 +1,6 @@
{ {
"name": "libp2p-identify", "name": "libp2p-identify",
"version": "0.3.3", "version": "0.4.2",
"description": "libp2p Identify Protocol", "description": "libp2p Identify Protocol",
"main": "src/index.js", "main": "src/index.js",
"scripts": { "scripts": {
@@ -37,19 +37,19 @@
}, },
"homepage": "https://github.com/libp2p/js-libp2p-identify#readme", "homepage": "https://github.com/libp2p/js-libp2p-identify#readme",
"devDependencies": { "devDependencies": {
"aegir": "^11.0.0", "aegir": "^11.0.2",
"chai": "^3.5.0", "chai": "^4.0.2",
"dirty-chai": "^1.2.2", "dirty-chai": "^2.0.0",
"pre-commit": "^1.2.2", "pre-commit": "^1.2.2",
"pull-pair": "^1.1.0" "pull-pair": "^1.1.0"
}, },
"dependencies": { "dependencies": {
"multiaddr": "^2.2.2", "multiaddr": "^2.3.0",
"peer-id": "~0.8.4", "peer-id": "~0.8.7",
"peer-info": "~0.8.4", "peer-info": "~0.9.2",
"protocol-buffers": "^3.2.1", "protocol-buffers": "^3.2.1",
"pull-length-prefixed": "^1.2.0", "pull-length-prefixed": "^1.3.0",
"pull-stream": "^3.5.0" "pull-stream": "^3.6.0"
}, },
"contributors": [ "contributors": [
"David Dias <daviddias.p@gmail.com>", "David Dias <daviddias.p@gmail.com>",

View File

@@ -17,6 +17,11 @@ module.exports = (conn, callback) => {
return callback(err) return callback(err)
} }
// connection got closed graciously
if (data.length === 0) {
return callback(new Error('conn was closed, did not receive data'))
}
const input = msg.decode(data[0]) const input = msg.decode(data[0])
PeerId.createFromPubKey(input.publicKey, (err, id) => { PeerId.createFromPubKey(input.publicKey, (err, id) => {
@@ -24,12 +29,12 @@ module.exports = (conn, callback) => {
return callback(err) return callback(err)
} }
const info = new PeerInfo(id) const peerInfo = new PeerInfo(id)
input.listenAddrs input.listenAddrs
.map(multiaddr) .map(multiaddr)
.forEach((ma) => info.multiaddr.add(ma)) .forEach((ma) => peerInfo.multiaddrs.add(ma))
callback(null, info, getObservedAddrs(input)) callback(null, peerInfo, getObservedAddrs(input))
}) })
}) })
) )

View File

@@ -20,7 +20,7 @@ module.exports = (conn, pInfoSelf) => {
protocolVersion: 'ipfs/0.1.0', protocolVersion: 'ipfs/0.1.0',
agentVersion: 'na', agentVersion: 'na',
publicKey: publicKey, publicKey: publicKey,
listenAddrs: pInfoSelf.multiaddrs.map((ma) => ma.buffer), listenAddrs: pInfoSelf.multiaddrs.toArray().map((ma) => ma.buffer),
observedAddr: observedAddrs ? observedAddrs.buffer : new Buffer('') observedAddr: observedAddrs ? observedAddrs.buffer : new Buffer('')
}) })

View File

@@ -29,7 +29,7 @@ describe('identify.dialer', () => {
it('works', (done) => { it('works', (done) => {
const p = pair() const p = pair()
original.multiaddr.add(multiaddr('/ip4/127.0.0.1/tcp/5002')) original.multiaddrs.add(multiaddr('/ip4/127.0.0.1/tcp/5002'))
const input = msg.encode({ const input = msg.encode({
protocolVersion: 'ipfs/0.1.0', protocolVersion: 'ipfs/0.1.0',
agentVersion: 'na', agentVersion: 'na',
@@ -49,17 +49,11 @@ describe('identify.dialer', () => {
expect(info.id.pubKey.bytes) expect(info.id.pubKey.bytes)
.to.eql(original.id.pubKey.bytes) .to.eql(original.id.pubKey.bytes)
expect( expect(info.multiaddrs.toArray())
info.multiaddrs .to.eql(original.multiaddrs.toArray())
).to.be.eql(
original.multiaddrs
)
expect( expect(observedAddrs)
observedAddrs .to.eql([multiaddr('/ip4/127.0.0.1/tcp/5001')])
).to.be.eql(
[multiaddr('/ip4/127.0.0.1/tcp/5001')]
)
done() done()
}) })

View File

@@ -16,6 +16,7 @@ const identify = require('../src')
describe('identify.listener', () => { describe('identify.listener', () => {
let info let info
beforeEach((done) => { beforeEach((done) => {
PeerInfo.create((err, _info) => { PeerInfo.create((err, _info) => {
if (err) { if (err) {
@@ -29,7 +30,7 @@ describe('identify.listener', () => {
it('works', (done) => { it('works', (done) => {
const p = pair() const p = pair()
info.multiaddr.add(multiaddr('/ip4/127.0.0.1/tcp/5002')) info.multiaddrs.add(multiaddr('/ip4/127.0.0.1/tcp/5002'))
pull( pull(
p[1], p[1],
lp.decode(), lp.decode(),