Skip to content

Commit dae1f21

Browse files
committed
allow multiple addrs in gossip for the same peer
1 parent a9757e6 commit dae1f21

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

p2p/discovery.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,13 @@ func (pd *PeerDiscovery) addPeer(pinfo peer.AddrInfo) {
7878
if pinfo.ID == pd.host.ID() {
7979
return // Don't add ourselves
8080
}
81-
pd.knownPeers[pinfo.ID] = pinfo
81+
oldPinfo, ok := pd.knownPeers[pinfo.ID]
82+
if ok {
83+
oldPinfo.Addrs = append(oldPinfo.Addrs, pinfo.Addrs...)
84+
} else {
85+
oldPinfo = pinfo
86+
}
87+
pd.knownPeers[pinfo.ID] = oldPinfo
8288
}
8389

8490
// GetPeers returns all known peers

0 commit comments

Comments
 (0)