Brad Fitzpatrick
7461dded88
wgengine/monitor: on unsupported platforms, use a polling implementation
...
Not great, but lets people working on new ports get going more quickly
without having to do everything up front.
As the link monitor is getting used more, I felt bad having a useless
implementation.
Updates #815
Updates #1427
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
5 years ago
David Anderson
6e42430ad8
wgengine/monitor: don't log any single-IP routes added to the tailscale table.
...
Signed-off-by: David Anderson <danderson@tailscale.com>
5 years ago
David Anderson
df5adb2e23
wgengine/monitor: on linux, also monitor for IPv6 changes.
...
Signed-off-by: David Anderson <danderson@tailscale.com>
5 years ago
Matt Layher
bfbd6b9241
go.mod: bump github.com/mdlayher/netlink to v1.2.0
...
Signed-off-by: Matt Layher <mdlayher@gmail.com>
5 years ago
Brad Fitzpatrick
b983e5340f
wgengine/monitor: add, clean up netlink logging on route changes
...
Updates #643
6 years ago
Brad Fitzpatrick
43bc86588e
wgengine/monitor: log RTM_DELROUTE details, fix format strings
...
Updates #643
6 years ago
Wendi Yu
c3736250a4
wgengine: fix macos staticcheck errors ( #557 )
...
Signed-off-by: Wendi <wendi.yu@yahoo.ca>
6 years ago
Brad Fitzpatrick
ce1b52bb71
wgengine/monitor: fix other potential crashes on Linux
...
Never return "nil, nil" anymore. The caller expected a usable
interface now. I missed some of these earlier.
Also, handle address deletion now.
Updates #532
6 years ago
Brad Fitzpatrick
4b75a27969
wgengine/monitor: fix crash on Linux on type 21 messages
...
Fixes #532
6 years ago
Brad Fitzpatrick
4db60a8436
wgengine/monitor: parse Linux netlink messages, ignore our own events
...
Fixes tailscale/corp#412 ("flood of link change events at start-up")
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
6 years ago
Elias Naur
2dac4f2b24
wgengine/monitor: disable monitor on Android
...
Netlink is not supported on Android.
Signed-off-by: Elias Naur <mail@eliasnaur.com>
6 years ago
Tobias Klauser
4d09316f9a
wgengine/monitor: use RTMGRP_* consts from x/sys/unix
...
Bump golang.org/x/sys/unix to get the RTMGRP_* consts and use them.
Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
6 years ago
Brad Fitzpatrick
997678f540
wgengine/monitor: make Close not block forever on Linux
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
6 years ago
Brad Fitzpatrick
7f5e3febe5
wgengine: move link monitor to be owned by the engine, not the router
...
And make the monitor package portable with no-op implementations on
unsupported operating systems.
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
6 years ago
wardn
2cafbd74c7
monitor: refactor for architecture-specific connection implementations
...
Signed-off-by: wardn <wardn@users.noreply.github.com>
6 years ago