mirror of
https://github.com/tailscale/tailscale.git
synced 2025-12-03 02:21:58 +00:00
wgengine/router: take a link monitor
Prep for #1591 which will need to make Linux's router react to changes that the link monitor observes. The router package already depended on the monitor package transitively. Now it's explicit. Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
This commit is contained in:
committed by
Brad Fitzpatrick
parent
24db1a3c9b
commit
ed8587f90d
@@ -13,6 +13,7 @@ import (
|
||||
"golang.zx2c4.com/wireguard/tun"
|
||||
"inet.af/netaddr"
|
||||
"tailscale.com/types/logger"
|
||||
"tailscale.com/wgengine/monitor"
|
||||
)
|
||||
|
||||
// For now this router only supports the WireGuard userspace implementation.
|
||||
@@ -21,13 +22,14 @@ import (
|
||||
|
||||
type openbsdRouter struct {
|
||||
logf logger.Logf
|
||||
linkMon *monitor.Mon
|
||||
tunname string
|
||||
local4 netaddr.IPPrefix
|
||||
local6 netaddr.IPPrefix
|
||||
routes map[netaddr.IPPrefix]struct{}
|
||||
}
|
||||
|
||||
func newUserspaceRouter(logf logger.Logf, tundev tun.Device) (Router, error) {
|
||||
func newUserspaceRouter(logf logger.Logf, tundev tun.Device, linkMon *monitor.Mon) (Router, error) {
|
||||
tunname, err := tundev.Name()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -35,6 +37,7 @@ func newUserspaceRouter(logf logger.Logf, tundev tun.Device) (Router, error) {
|
||||
|
||||
return &openbsdRouter{
|
||||
logf: logf,
|
||||
linkMon: linkMon,
|
||||
tunname: tunname,
|
||||
}, nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user