swarm: attach peerid if needed
This commit was moved from ipfs/go-ipfs-http-client@aa88b18ac497400d16b36af6489af50a003c298c
Łukasz Magiera committed
Feb 14, 2019 at 19:35 UTC
a23da822de54922faf1f82a86c25660e8cca8bcd
1 file changed
+7
client/httpapi/swarm.go
+7
@@ -17,6 +17,13 @@ type SwarmAPI HttpApi
17
func (api *SwarmAPI) Connect(ctx context.Context, pi peerstore.PeerInfo) error {
18
saddrs := make([]string, len(pi.Addrs))
19
for i, addr := range pi.Addrs {
20
+ if _, err := addr.ValueForProtocol(multiaddr.P_P2P); err == multiaddr.ErrProtocolNotFound {
21
+ pidma, err := multiaddr.NewComponent("p2p", pi.ID.Pretty())
22
+ if err != nil {
23
+ return err
24
+ }
25
+ addr = addr.Encapsulate(pidma)
26
+ }
27
saddrs[i] = addr.String()
28
}
29