From 319196a13a9a597b49315841477d313119f68641 Mon Sep 17 00:00:00 2001 From: Jacob Heun Date: Thu, 2 Jul 2020 14:54:13 +0200 Subject: [PATCH 1/2] chore: update deps --- package.json | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 5fd3acc..9755886 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,7 @@ }, "homepage": "https://github.com/libp2p/js-libp2p-mdns", "devDependencies": { - "aegir": "^21.0.2", + "aegir": "^25.0.0", "chai": "^4.2.0", "delay": "^4.3.0", "dirty-chai": "^2.0.1", @@ -44,9 +44,10 @@ }, "dependencies": { "debug": "^4.1.1", - "multiaddr": "^7.1.0", + "mafmt": "^7.1.0", + "multiaddr": "^7.5.0", "multicast-dns": "^7.2.0", - "peer-id": "~0.13.3" + "peer-id": "^0.13.13" }, "contributors": [ "David Dias ", From 8b03fc2ab5749dc4dc5027ba0a0be0f63430473c Mon Sep 17 00:00:00 2001 From: Jacob Heun Date: Thu, 2 Jul 2020 14:54:36 +0200 Subject: [PATCH 2/2] fix: only use actual tcp addresses --- package.json | 1 - src/compat/responder.js | 8 +++++++- src/query.js | 8 +++++++- test/multicast-dns.spec.js | 10 +++++++--- 4 files changed, 21 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 9755886..551a36e 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,6 @@ }, "dependencies": { "debug": "^4.1.1", - "mafmt": "^7.1.0", "multiaddr": "^7.5.0", "multicast-dns": "^7.2.0", "peer-id": "^0.13.13" diff --git a/src/compat/responder.js b/src/compat/responder.js index edd7c52..bcaa295 100644 --- a/src/compat/responder.js +++ b/src/compat/responder.js @@ -23,7 +23,13 @@ class Responder { } _onQuery (event, info) { - const addresses = this._multiaddrs.map(ma => ma.toOptions()) + const addresses = this._multiaddrs.reduce((acc, addr) => { + if (addr.isThinWaistAddress()) { + acc.push(addr.toOptions()) + } + return acc + }, []) + // Only announce TCP for now if (!addresses.length) return diff --git a/src/query.js b/src/query.js index 49f39f7..5b2c408 100644 --- a/src/query.js +++ b/src/query.js @@ -86,7 +86,13 @@ module.exports = { gotQuery: function (qry, mdns, peerId, multiaddrs, serviceTag, broadcast) { if (!broadcast) { return } - const addresses = multiaddrs.map(ma => ma.toOptions()) + const addresses = multiaddrs.reduce((acc, addr) => { + if (addr.isThinWaistAddress()) { + acc.push(addr.toOptions()) + } + return acc + }, []) + // Only announce TCP for now if (addresses.length === 0) { return } diff --git a/test/multicast-dns.spec.js b/test/multicast-dns.spec.js index 795b77e..4b4dd51 100644 --- a/test/multicast-dns.spec.js +++ b/test/multicast-dns.spec.js @@ -28,17 +28,21 @@ describe('MulticastDNS', () => { ]) aMultiaddrs = [ - multiaddr('/ip4/127.0.0.1/tcp/20001') + multiaddr('/ip4/127.0.0.1/tcp/20001'), + multiaddr('/dns4/webrtc-star.discovery.libp2p.io/tcp/443/wss/p2p-webrtc-star'), + multiaddr('/dns4/discovery.libp2p.io/tcp/8443') ] bMultiaddrs = [ multiaddr('/ip4/127.0.0.1/tcp/20002'), - multiaddr('/ip6/::1/tcp/20002') + multiaddr('/ip6/::1/tcp/20002'), + multiaddr('/dnsaddr/discovery.libp2p.io') ] cMultiaddrs = [ multiaddr('/ip4/127.0.0.1/tcp/20003'), - multiaddr('/ip4/127.0.0.1/tcp/30003/ws') + multiaddr('/ip4/127.0.0.1/tcp/30003/ws'), + multiaddr('/dns4/discovery.libp2p.io') ] dMultiaddrs = [