wireguard-go-awg2-lx/device
James Tucker 2f5d148bcf conn,device: enable cryptorouting via PeerAwareEndpoint
Introduce an optional extension point for Endpoint that enables a path
for WireGuard to inform an integration about the peer public key that is
associated with an Endpoint.

The API is expected to return either the same or a new Endpoint in
response to this function. A future version of this patch could
potentially remove the returned Endpoint, but would require larger
integrator changes downstream.

This adds a small per-packet cost that could later be removed with a
larger refactor of the wireguard-go interface and Tailscale magicsock
code, as well as introducing a generic bound for Endpoint in a device &
bind instance.

Updates tailscale/corp#20732
2024-07-05 08:25:31 -07:00
..
allowedips.go global: bump copyright year 2023-02-07 20:39:29 -03:00
allowedips_rand_test.go global: bump copyright year 2023-02-07 20:39:29 -03:00
allowedips_test.go global: bump copyright year 2023-02-07 20:39:29 -03:00
bind_test.go all: rename module (#7) 2023-09-27 15:03:39 -07:00
channels.go device: move Queue{In,Out}boundElement Mutex to container type 2023-09-29 15:32:56 -07:00
constants.go global: bump copyright year 2023-02-07 20:39:29 -03:00
cookie.go global: bump copyright year 2023-02-07 20:39:29 -03:00
cookie_test.go global: bump copyright year 2023-02-07 20:39:29 -03:00
device.go device: change Peer.endpoint locking to reduce contention 2023-11-21 10:48:58 -08:00
device_test.go all: rename module (#7) 2023-09-27 15:03:39 -07:00
devicestate_string.go device: remove deviceStateNew 2021-02-09 15:39:19 +01:00
endpoint_test.go global: bump copyright year 2023-02-07 20:39:29 -03:00
indextable.go global: bump copyright year 2023-02-07 20:39:29 -03:00
ip.go global: bump copyright year 2023-02-07 20:39:29 -03:00
kdf_test.go global: bump copyright year 2023-02-07 20:39:29 -03:00
keypair.go all: rename module (#7) 2023-09-27 15:03:39 -07:00
logger.go global: bump copyright year 2023-02-07 20:39:29 -03:00
mobilequirks.go device: change Peer.endpoint locking to reduce contention 2023-11-21 10:48:58 -08:00
noise-helpers.go device: uniformly check ECDH output for zeros 2023-02-16 16:33:14 +01:00
noise-protocol.go conn,device: enable cryptorouting via PeerAwareEndpoint 2024-07-05 08:25:31 -07:00
noise-types.go global: bump copyright year 2023-02-07 20:39:29 -03:00
noise_test.go all: rename module (#7) 2023-09-27 15:03:39 -07:00
peer.go conn,device: enable cryptorouting via PeerAwareEndpoint 2024-07-05 08:25:31 -07:00
pools.go device: fix WaitPool sync.Cond usage 2024-06-27 10:12:25 -07:00
pools_test.go device: fix WaitPool sync.Cond usage 2024-06-27 10:12:25 -07:00
queueconstants_android.go all: rename module (#7) 2023-09-27 15:03:39 -07:00
queueconstants_default.go all: rename module (#7) 2023-09-27 15:03:39 -07:00
queueconstants_ios.go global: bump copyright year 2023-02-07 20:39:29 -03:00
queueconstants_windows.go global: bump copyright year 2023-02-07 20:39:29 -03:00
race_disabled_test.go global: bump copyright year 2023-02-07 20:39:29 -03:00
race_enabled_test.go global: bump copyright year 2023-02-07 20:39:29 -03:00
receive.go device: reduce redundant per-packet overhead in RX path 2023-11-21 10:48:58 -08:00
send.go device: fix missed return of QueueOutboundElementsContainer to its WaitPool 2024-06-27 10:12:25 -07:00
sticky_default.go all: rename module (#7) 2023-09-27 15:03:39 -07:00
sticky_linux.go device: change Peer.endpoint locking to reduce contention 2023-11-21 10:48:58 -08:00
timers.go device: change Peer.endpoint locking to reduce contention 2023-11-21 10:48:58 -08:00
tun.go all: rename module (#7) 2023-09-27 15:03:39 -07:00
uapi.go device: change Peer.endpoint locking to reduce contention 2023-11-21 10:48:58 -08:00