Fixed some audit issues.

This commit is contained in:
jdl
2026-06-15 18:55:29 +02:00
parent 36e9f6149d
commit 9d57f45aea
2 changed files with 7 additions and 4 deletions

View File

@@ -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]))
}

View File

@@ -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
}