diff options
| author | Jordan Whited <jordan@tailscale.com> | 2025-06-06 09:46:29 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-06-06 09:46:29 -0700 |
| commit | 66ae8737f40bf5aebcff96824bf0d4f8439db9c7 (patch) | |
| tree | 4b795a852c1387946eb416ed21ef7650102404fe /control/controlhttp/controlhttpserver | |
| parent | 3f7a9f82e39813ca42701aca18cf23a97b5652dc (diff) | |
| download | tailscale-66ae8737f40bf5aebcff96824bf0d4f8439db9c7.tar.xz tailscale-66ae8737f40bf5aebcff96824bf0d4f8439db9c7.zip | |
wgengine/magicsock: make endpoint.bestAddr Geneve-aware (#16195)
This commit adds a new type to magicsock, epAddr, which largely ends up
replacing netip.AddrPort in packet I/O paths throughout, enabling
Geneve encapsulation over UDP awareness.
The conn.ReceiveFunc for UDP has been revamped to fix and more clearly
distinguish the different classes of packets we expect to receive: naked
STUN binding messages, naked disco, naked WireGuard, Geneve-encapsulated
disco, and Geneve-encapsulated WireGuard.
Prior to this commit, STUN matching logic in the RX path could swallow
a naked WireGuard packet if the keypair index, which is randomly
generated, happened to overlap with a subset of the STUN magic cookie.
Updates tailscale/corp#27502
Updates tailscale/corp#29326
Signed-off-by: Jordan Whited <jordan@tailscale.com>
Diffstat (limited to 'control/controlhttp/controlhttpserver')
0 files changed, 0 insertions, 0 deletions
