mirror of
https://github.com/tailscale/tailscale.git
synced 2024-12-05 16:05:36 +00:00
wgengine/magicsock: fix panic in wireguard-go rate limiting path
Fixes #6686
Change-Id: I1055a87141b07261afed8e36c963a69f3be26088
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
(cherry picked from commit 44be59c15a
)
This commit is contained in:
parent
22ad72014f
commit
c1d23495bd
@ -3329,7 +3329,7 @@ type endpoint struct {
|
||||
publicKey key.NodePublic // peer public key (for WireGuard + DERP)
|
||||
publicKeyHex string // cached output of publicKey.UntypedHexString
|
||||
fakeWGAddr netip.AddrPort // the UDP address we tell wireguard-go we're using
|
||||
nodeAddr netip.Addr // the node's first tailscale address (only used for logging)
|
||||
nodeAddr netip.Addr // the node's first tailscale address; used for logging & wireguard rate-limiting (Issue 6686)
|
||||
|
||||
// mu protects all following fields.
|
||||
mu sync.Mutex // Lock ordering: Conn.mu, then endpoint.mu
|
||||
@ -3516,7 +3516,7 @@ func (de *endpoint) ClearSrc() {}
|
||||
func (de *endpoint) SrcToString() string { panic("unused") } // unused by wireguard-go
|
||||
func (de *endpoint) SrcIP() netip.Addr { panic("unused") } // unused by wireguard-go
|
||||
func (de *endpoint) DstToString() string { return de.publicKeyHex }
|
||||
func (de *endpoint) DstIP() netip.Addr { panic("unused") }
|
||||
func (de *endpoint) DstIP() netip.Addr { return de.nodeAddr } // see tailscale/tailscale#6686
|
||||
func (de *endpoint) DstToBytes() []byte { return packIPPort(de.fakeWGAddr) }
|
||||
|
||||
// addrForSendLocked returns the address(es) that should be used for
|
||||
|
Loading…
Reference in New Issue
Block a user