tailscale/wgengine/router
Brad Fitzpatrick 2d96215d97 wgengine/router: make Linux delRoute idempotent, cidrDiff fail late as possible
This makes cidrDiff do as much as possible before failing, and makes a
delete of an already-deleted rule be a no-op. We should never do this
ourselves, but other things on the system can, and this should help us
recover a bit.

Also adds the start of root-requiring tests.

TODO: hook into wgengine/monitor and notice when routes are changed
behind our back, and invalidate our routes map and re-read from
kernel (via the ip command) at least on the next reconfig call.

Updates tailscale/corp#1338

Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-02-18 10:36:00 -08:00
..
dns wgengine/router/dns: remove unused code 2021-01-14 14:04:35 -08:00
ifconfig_windows_test.go wgengine/router: unfork winipcfg-go package, use upstream 2020-10-13 09:21:22 -07:00
ifconfig_windows.go wgengine/router: stop setPrivateNetwork goroutine on configureInterface failure 2021-01-25 13:22:51 -08:00
router_darwin.go all: dns refactor, add Proxied and PerDomain flags from control (#615) 2020-07-31 16:27:09 -04:00
router_default.go Remove tuntap references. We only use TUN. 2020-09-25 13:13:13 -07:00
router_fake.go all: annotate log verbosity levels on most egregiously spammy log prints 2020-12-21 12:59:33 -08:00
router_freebsd.go all: dns refactor, add Proxied and PerDomain flags from control (#615) 2020-07-31 16:27:09 -04:00
router_linux_test.go wgengine/router: make Linux delRoute idempotent, cidrDiff fail late as possible 2021-02-18 10:36:00 -08:00
router_linux.go wgengine/router: make Linux delRoute idempotent, cidrDiff fail late as possible 2021-02-18 10:36:00 -08:00
router_openbsd.go all: replace wgcfg.IP and wgcfg.CIDR with netaddr types 2020-12-28 13:00:42 -08:00
router_userspace_bsd.go wgengine/router: fix BSD router to support multiple local addrs, IPv6 2021-02-11 19:13:03 -08:00
router_windows.go wgengine/router: add another Windows firewall rule to allow incoming UDP 2021-02-10 13:12:17 -08:00
router.go ipn: split LocalBackend off into new ipn/ipnlocal package 2021-02-04 14:04:23 -08:00
runner.go wgengine/router: set up basic IPv6 routing/firewalling. 2020-09-24 18:37:00 -07:00