@cryptotaxi247 / kubo / commits / 29178e3c4

fix(bitswap/network/ipfs) ignore self as provider

Juan Batiz-Benet committed Jan 30, 2015 at 22:22 UTC 29178e3c49c4c0d27ac4bc6baa9f510ffecbe84d
1 file changed +6 -2
exchange/bitswap/network/ipfs_impl.go
+6 -2
@@ -110,6 +110,9 @@ func (bsnet *impl) FindProvidersAsync(ctx context.Context, k util.Key, max int)
110 connectedPeers := bsnet.host.Network().Peers()
111 out := make(chan peer.ID, len(connectedPeers)) // just enough buffer for these connectedPeers
112 for _, id := range connectedPeers {
113 + if id == bsnet.host.ID() {
114 + continue // ignore self as provider
115 + }
116 out <- id
117 }
118
@@ -117,9 +120,10 @@ func (bsnet *impl) FindProvidersAsync(ctx context.Context, k util.Key, max int)
120 defer close(out)
121 providers := bsnet.routing.FindProvidersAsync(ctx, k, max)
122 for info := range providers {
120 - if info.ID != bsnet.host.ID() { // dont add addrs for ourselves.
121 - bsnet.host.Peerstore().AddAddresses(info.ID, info.Addrs)
123 + if info.ID == bsnet.host.ID() {
124 + continue // ignore self as provider
125 }
126 + bsnet.host.Peerstore().AddAddresses(info.ID, info.Addrs)
127 select {
128 case <-ctx.Done():
129 return