From 9d57f45aeadb9336bbe3e99a17fa470bd530d355 Mon Sep 17 00:00:00 2001 From: jdl Date: Mon, 15 Jun 2026 18:55:29 +0200 Subject: [PATCH] Fixed some audit issues. --- peer/control/ping.go | 9 ++++++--- peer/on_multicast.go | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/peer/control/ping.go b/peer/control/ping.go index ebde243..411cb74 100644 --- a/peer/control/ping.go +++ b/peer/control/ping.go @@ -66,15 +66,18 @@ func Unmarshal(buf [Size]byte) (Ping, error) { PingTS: int64(binary.BigEndian.Uint64(buf[1:9])), } - if addr := netip.AddrFrom4([4]byte(buf[9:13])); !addr.IsUnspecified() && addr.Is4() { + addr := netip.AddrFrom4([4]byte(buf[9:13])) + if !addr.IsUnspecified() && addr.Is4() { p.SrcV4 = netip.AddrPortFrom(addr, binary.BigEndian.Uint16(buf[13:15])) } - if addr := netip.AddrFrom16([16]byte(buf[15:31])); !addr.IsUnspecified() && addr.Is6() { + addr = netip.AddrFrom16([16]byte(buf[15:31])).Unmap() + if addr.IsUnspecified() && addr.Is6() { p.SrcV6 = netip.AddrPortFrom(addr, binary.BigEndian.Uint16(buf[31:33])) } - if addr := netip.AddrFrom16([16]byte(buf[33:49])).Unmap(); !addr.IsUnspecified() { + addr = netip.AddrFrom16([16]byte(buf[33:49])).Unmap() + if !addr.IsUnspecified() { p.Dst = netip.AddrPortFrom(addr, binary.BigEndian.Uint16(buf[49:51])) } diff --git a/peer/on_multicast.go b/peer/on_multicast.go index e2ac44b..84c86d7 100644 --- a/peer/on_multicast.go +++ b/peer/on_multicast.go @@ -32,7 +32,7 @@ func (a *App) onMulticastDiscovery(pkt multicast.Packet) { } endpoint := netip.AddrPortFrom(pkt.Src, pkt.WGPort) - if !endpoint.IsValid() { + if !endpoint.IsValid() || endpoint.Port() == 0 { return }