mirror of
https://github.com/tailscale/tailscale.git
synced 2024-11-29 13:05:46 +00:00
wgengine/magicsock: move discoKey fields to the mutex-protected section.
Fixes #3106 Signed-off-by: David Anderson <danderson@tailscale.com>
This commit is contained in:
parent
27799a1a96
commit
521b44e653
@ -3105,14 +3105,15 @@ type endpoint struct {
|
||||
// These fields are initialized once and never modified.
|
||||
c *Conn
|
||||
publicKey tailcfg.NodeKey // peer public key (for WireGuard + DERP)
|
||||
discoKey tailcfg.DiscoKey // for discovery messages. IsZero() if peer can't disco.
|
||||
discoShort string // ShortString of discoKey. Empty if peer can't disco.
|
||||
fakeWGAddr netaddr.IPPort // the UDP address we tell wireguard-go we're using
|
||||
wgEndpoint string // string from ParseEndpoint, holds a JSON-serialized wgcfg.Endpoints
|
||||
|
||||
// mu protects all following fields.
|
||||
mu sync.Mutex // Lock ordering: Conn.mu, then endpoint.mu
|
||||
|
||||
discoKey tailcfg.DiscoKey // for discovery messages. IsZero() if peer can't disco.
|
||||
discoShort string // ShortString of discoKey. Empty if peer can't disco.
|
||||
|
||||
heartBeatTimer *time.Timer // nil when idle
|
||||
lastSend mono.Time // last time there was outgoing packets sent to this peer (from wireguard-go)
|
||||
lastFullPing mono.Time // last time we pinged all endpoints
|
||||
|
Loading…
Reference in New Issue
Block a user