tailscale/wgengine/monitor
Brad Fitzpatrick 14dc790137 wgengine/monitor: make the darwin link monitor work in the sandbox too
Previously tailscaled on macOS was running "/sbin/route monitor" as a
child process, but child processes aren't allowed in the Network
Extension / App Store sandbox. Instead, just do what "/sbin/route monitor"
itself does: unix.Socket(unix.AF_ROUTE, unix.SOCK_RAW, 0) and read that.

We also parse it now, but don't do anything with the parsed results yet.

We will over time, as we have with Linux netlink messages over time.

Currently any message is considered a signal to poll and see what changed.

Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-02-28 21:14:51 -08:00
..
monitor.go wgengine/monitor: change API to permit multiple independent callbakcks 2021-02-27 19:36:52 -08:00
monitor_darwin.go wgengine/monitor: make the darwin link monitor work in the sandbox too 2021-02-28 21:14:51 -08:00
monitor_freebsd.go wgengine/monitor_freebsd.go: remove duplicated errcheck 2020-08-21 09:48:22 -07:00
monitor_linux.go wgengine/monitor: don't log any single-IP routes added to the tailscale table. 2021-02-22 20:21:51 -08:00
monitor_unsupported.go wgengine/monitor: make the darwin link monitor work in the sandbox too 2021-02-28 21:14:51 -08:00
monitor_windows.go wgengine/monitor: close closeHandle 2021-01-07 20:18:02 -08:00