1
0
mirror of https://github.com/ipfs/kubo.git synced 2025-08-06 03:19:47 +08:00

fix(swarm): catch cases where we fail to resolve an address to a peer

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
This commit is contained in:
Steven Allen
2019-03-18 19:03:35 -07:00
parent f1b6888081
commit 1cc8c3a17e

View File

@ -529,17 +529,17 @@ func resolveAddresses(ctx context.Context, addrs []string) ([]ma.Multiaddr, erro
resolveErrC <- err
return
}
if len(raddrs) == 0 {
resolveErrC <- fmt.Errorf("non-resolvable multiaddr about %v", maddr)
return
}
// filter out addresses that still doesn't end in `ipfs/Qm...`
found := 0
for _, raddr := range raddrs {
if _, last := ma.SplitLast(raddr); last.Protocol().Code == ma.P_IPFS {
maddrC <- raddr
continue
found++
}
}
if found == 0 {
resolveErrC <- fmt.Errorf("non-resolvable multiaddr about %v", maddr)
}
}(maddr)
}
go func() {