From b5928efb6ca19f0153958460c3d141f04abc5c2e Mon Sep 17 00:00:00 2001 From: Yaroslav Gurov Date: Fri, 28 Aug 2026 10:49:21 +0000 Subject: [PATCH] fix: disable the whole underload if DisableCookies is on Thanks to @darkk for spotting and suggesting the fix --- device/receive.go | 3 ++- device/send.go | 5 ----- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/device/receive.go b/device/receive.go index ec29b1a..d1901f8 100644 --- a/device/receive.go +++ b/device/receive.go @@ -369,7 +369,8 @@ func (device *Device) RoutineHandshake(id int) { // endpoints destination address is the source of the datagram - if device.IsUnderLoad() { + disableCookies := device.disableCookies.Load() + if !disableCookies && device.IsUnderLoad() { // verify MAC2 field diff --git a/device/send.go b/device/send.go index 948f72a..2b0a475 100644 --- a/device/send.go +++ b/device/send.go @@ -239,11 +239,6 @@ func (peer *Peer) SendHandshakeResponse() error { } func (device *Device) SendHandshakeCookie(initiatingElem *QueueHandshakeElement) error { - if device.disableCookies.Load() { - device.log.Verbosef("Sending cookie response blocked for %v due to disabled cookies", initiatingElem.endpoint.DstToString()) - return nil - } - device.log.Verbosef("Sending cookie response for denied handshake message for %v", initiatingElem.endpoint.DstToString()) sender := binary.LittleEndian.Uint32(initiatingElem.packet[4:8])