fix: only block peer if we have the id, and the maps were flipped

This commit is contained in:
Derrick Hammer 2024-01-15 11:38:38 -05:00
parent fc10a265a7
commit ab53dbdf08
Signed by: pcfreak30
GPG Key ID: C997C339BE476FF2
1 changed files with 11 additions and 9 deletions

View File

@ -239,16 +239,18 @@ func (p *P2PImpl) ConnectToNode(connectionUris []*url.URL, retried bool, fromPee
p.outgoingPeerFailures.Put(idString, counter)
if counter >= p.maxOutgoingPeerFailures {
fromPeerId, err := fromPeer.Id().ToString()
if err != nil {
return err
}
p.outgoingPeerBlocklist.Put(fromPeerId, true)
p.incomingPeerBlockList.Put(idString, true)
err = fromPeer.End()
if err != nil {
return err
if fromPeer != nil {
fromPeerId, err := fromPeer.Id().ToString()
if err != nil {
return err
}
p.incomingPeerBlockList.Put(fromPeerId, true)
err = fromPeer.End()
if err != nil {
return err
}
}
p.outgoingPeerBlocklist.Put(idString, true)
}
return nil