From cccb0b26f6cc63b92687132955ab0a2fa787807c Mon Sep 17 00:00:00 2001 From: Vasco Santos Date: Fri, 6 Mar 2020 18:37:35 +0100 Subject: [PATCH 1/2] fix: multiaddr validation to add peer id for listening --- packages/ipfs/src/core/components/start.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/ipfs/src/core/components/start.js b/packages/ipfs/src/core/components/start.js index ec771cb09b..9b27f79b01 100644 --- a/packages/ipfs/src/core/components/start.js +++ b/packages/ipfs/src/core/components/start.js @@ -39,7 +39,8 @@ module.exports = ({ config.Addresses.Swarm.forEach(addr => { let ma = multiaddr(addr) - if (ma.getPeerId()) { + const maId = ma.getPeerId() + if (maId && maId !== peerInfo.id.toB58String()) { ma = ma.encapsulate(`/p2p/${peerInfo.id.toB58String()}`) } From 3a5c5847e8515ba5235ca61c7c7e4474187d60a9 Mon Sep 17 00:00:00 2001 From: Alex Potsides Date: Fri, 27 Mar 2020 10:58:56 +0000 Subject: [PATCH 2/2] chore: update packages/ipfs/src/core/components/start.js --- packages/ipfs/src/core/components/start.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/ipfs/src/core/components/start.js b/packages/ipfs/src/core/components/start.js index 9b27f79b01..f6d8a710ef 100644 --- a/packages/ipfs/src/core/components/start.js +++ b/packages/ipfs/src/core/components/start.js @@ -39,6 +39,9 @@ module.exports = ({ config.Addresses.Swarm.forEach(addr => { let ma = multiaddr(addr) + // multiaddrs that go via a signalling server or other intermediary (e.g. stardust, + // webrtc-star) can have the intermediary's peer ID in the address, so append our + // peer ID to the end of it const maId = ma.getPeerId() if (maId && maId !== peerInfo.id.toB58String()) { ma = ma.encapsulate(`/p2p/${peerInfo.id.toB58String()}`)