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/net
Brad Fitzpatrick 723c775dbb tsd, ipnlocal, etc: add tsd.System.HealthTracker, start some plumbing
This adds a health.Tracker to tsd.System, accessible via
a new tsd.System.HealthTracker method.

In the future, that new method will return a tsd.System-specific
HealthTracker, so multiple tsnet.Servers in the same process are
isolated. For now, though, it just always returns the temporary
health.Global value. That permits incremental plumbing over a number
of changes. When the second to last health.Global reference is gone,
then the tsd.System.HealthTracker implementation can return a private
Tracker.

The primary plumbing this does is adding it to LocalBackend and its
dozen and change health calls. A few misc other callers are also
plumbed. Subsequent changes will flesh out other parts of the tree
(magicsock, controlclient, etc).

Updates #11874
Updates #4136

Change-Id: Id51e73cfc8a39110425b6dc19d18b3975eac75ce
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2 years ago
..
art all: use Go 1.22 range-over-int 2 years ago
connstats all: use Go 1.22 range-over-int 2 years ago
dns health: break Warnable into a global and per-Tracker value halves 2 years ago
dnscache util/cmpx: delete now that we're using Go 1.22 2 years ago
dnsfallback tsd, ipnlocal, etc: add tsd.System.HealthTracker, start some plumbing 2 years ago
flowtrack all: update copyright and license headers 3 years ago
interfaces interfaces: create android impl (#11784) 2 years ago
ktimeout net/ktimeout: add a package to set TCP user timeout 2 years ago
memnet net/memnet: export the network name (#9111) 2 years ago
netaddr all: update copyright and license headers 3 years ago
netcheck net/netcheck,wgengine/magicsock: align DERP frame receive time heuristics 2 years ago
neterror net/neterror, wgengine/magicsock: use UDP GSO and GRO on Linux (#7791) 3 years ago
netkernelconf client/tailscale,ipn/{ipnlocal,localapi}: check UDP GRO config (#10071) 2 years ago
netknob all: update copyright and license headers 3 years ago
netmon net/netmon: when a new network is added, trigger netmon update (#10840) 2 years ago
netns net/{interfaces,netmon}: remove "interesting", EqualFiltered API 2 years ago
netstat net/{netns,netstat}: use new x/sys/cpu.IsBigEndian 3 years ago
netutil health: warn about reverse path filtering and exit nodes 2 years ago
packet all: use Go 1.22 range-over-int 2 years ago
ping net/ping: fix ICMP echo code field to 0 2 years ago
portmapper all: use Go 1.22 range-over-int 2 years ago
proxymux all: cleanup unused code, part 1 (#10661) 2 years ago
routetable net/routetable: increase route limit used by the test 2 years ago
socks5 net/socks5: add password auth support 3 years ago
sockstats all: use Go 1.22 range-over-int 2 years ago
speedtest all: update copyright and license headers 3 years ago
stun wgengine/magicsock, types/nettype, etc: finish ReadFromUDPAddrPort netip migration 3 years ago
stunserver all: use Go 1.22 range-over-int 2 years ago
tcpinfo all: use Go 1.22 range-over-int 2 years ago
tlsdial tsd, ipnlocal, etc: add tsd.System.HealthTracker, start some plumbing 2 years ago
tsaddr all: use Go 1.22 range-over-int 2 years ago
tsdial net/tsdial: assume all connections are affected if no default route is present 2 years ago
tshttpproxy all: use Go 1.22 range-over-int 2 years ago
tstun all: use Go 1.22 range-over-int 2 years ago
wsconn net/wsconn: accept a remote addr string and plumb it through 2 years ago