You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tailscale/wgengine
Brad Fitzpatrick 16a9cfe2f4 wgengine: configure wireguard peers lazily, as needed
wireguard-go uses 3 goroutines per peer (with reasonably large stacks
& buffers).

Rather than tell wireguard-go about all our peers, only tell it about
peers we're actively communicating with. That means we need hooks into
magicsock's packet receiving path and tstun's packet sending path to
lazily create a wireguard peer on demand from the network map.

This frees up lots of memory for iOS (where we have almost nothing
left for larger domains with many users).

We should ideally do this in wireguard-go itself one day, but that'd
be a pretty big change.

Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
4 years ago
..
filter tsdns: initial implementation of a Tailscale DNS resolver (#396) 4 years ago
magicsock wgengine: configure wireguard peers lazily, as needed 4 years ago
monitor wgengine: fix macos staticcheck errors (#557) 4 years ago
packet all: fix vet warnings 4 years ago
router wgengine/router: support legacy resolvconf 4 years ago
tsdns tsdns: response to type ANY queries 4 years ago
tstun wgengine: configure wireguard peers lazily, as needed 4 years ago
winnet Move Linux client & common packages into a public repo. 4 years ago
rusage.go Move "logger" package to under types, now that we have it. 4 years ago
rusage_nowindows.go wgengine: flesh out some docs 4 years ago
rusage_windows.go Move Linux client & common packages into a public repo. 4 years ago
userspace.go wgengine: configure wireguard peers lazily, as needed 4 years ago
watchdog.go wgengine/magicsock: change API to not permit disco key changes 4 years ago
watchdog_test.go wgengine: prevent log after exit in watchdog test 4 years ago
wgengine.go wgengine/magicsock: change API to not permit disco key changes 4 years ago