mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-07-15 17:30:44 +00:00
eth/protocols/eth: discard message before size check (#35289)
- Move `msg.Discard` defer ahead of the max message size check in `handleMessage`. - Ensures oversized messages are released when the handler returns early.
This commit is contained in:
parent
8d84e5001a
commit
6e6fcef0ba
2 changed files with 2 additions and 2 deletions
|
|
@ -224,10 +224,10 @@ func handleMessage(backend Backend, peer *Peer) error {
|
|||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer msg.Discard()
|
||||
if msg.Size > maxMessageSize {
|
||||
return fmt.Errorf("%w: %v > %v", errMsgTooLarge, msg.Size, maxMessageSize)
|
||||
}
|
||||
defer msg.Discard()
|
||||
|
||||
var handlers map[uint64]msgHandler
|
||||
switch peer.version {
|
||||
|
|
|
|||
|
|
@ -160,10 +160,10 @@ func HandleMessage(backend Backend, peer *Peer) error {
|
|||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer msg.Discard()
|
||||
if msg.Size > maxMessageSize {
|
||||
return fmt.Errorf("%w: %v > %v", errMsgTooLarge, msg.Size, maxMessageSize)
|
||||
}
|
||||
defer msg.Discard()
|
||||
|
||||
var handlers map[uint64]msgHandler
|
||||
switch peer.version {
|
||||
|
|
|
|||
Loading…
Reference in a new issue