Unverified Commit 5520cd97 authored by Exca-DK's avatar Exca-DK Committed by GitHub

p2p/discover: swap verification order in discv4 ping handler (#27532)

In all other UDPv4 methods, the deadline is checked first. It seems weird to me that ping is an exception. Deadline comparison is also less resource intensive.
Co-authored-by: 's avatarExca-DK <Exca-DK@users.noreply.github.com>
parent fd5d2ef0
...@@ -643,13 +643,13 @@ type packetHandlerV4 struct { ...@@ -643,13 +643,13 @@ type packetHandlerV4 struct {
func (t *UDPv4) verifyPing(h *packetHandlerV4, from *net.UDPAddr, fromID enode.ID, fromKey v4wire.Pubkey) error { func (t *UDPv4) verifyPing(h *packetHandlerV4, from *net.UDPAddr, fromID enode.ID, fromKey v4wire.Pubkey) error {
req := h.Packet.(*v4wire.Ping) req := h.Packet.(*v4wire.Ping)
if v4wire.Expired(req.Expiration) {
return errExpired
}
senderKey, err := v4wire.DecodePubkey(crypto.S256(), fromKey) senderKey, err := v4wire.DecodePubkey(crypto.S256(), fromKey)
if err != nil { if err != nil {
return err return err
} }
if v4wire.Expired(req.Expiration) {
return errExpired
}
h.senderKey = senderKey h.senderKey = senderKey
return nil return nil
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment