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/wgengine
James Tucker f4aad61e67 wgengine/monitor: ignore duplicate RTM_NEWADDRs
Ignoring the events at this layer is the simpler path for right now, a
broader change should follow to suppress irrelevant change events in a
higher layer so as to avoid related problems with other monitoring paths
on other platforms.  This approach may also carry a small risk that it
applies an at-most-once invariant low in the chain that could be assumed
otherwise higher in the code.

I adjusted the newAddrMessage type to include interface index rather
than a label, as labels are not always supplied, and in particular on my
test hosts they were consistently missing for ipv6 address messages.

I adjusted the newAddrMessage.Addr field to be populated from
Attributes.Address rather than Attributes.Local, as again for ipv6
.Local was always empty, and with ipv4 the .Address and .Local contained
the same contents in each of my test environments.

Update #4282

Signed-off-by: James Tucker <james@tailscale.com>
3 years ago
..
bench types/netmap: use key.NodePublic instead of tailcfg.NodeKey. 3 years ago
filter all: use strings.Cut even more 3 years ago
magicsock all: use strings.Cut even more 3 years ago
monitor wgengine/monitor: ignore duplicate RTM_NEWADDRs 3 years ago
netstack wgengine/netstack: disable refsvfs2 leak tracking (#4378) 3 years ago
router all: use any instead of interface{} 3 years ago
wgcfg all: use any instead of interface{} 3 years ago
wglog all: use any instead of interface{} 3 years ago
winnet all: gofmt -w -s (simplify) tests 3 years ago
mem_ios.go go.mod: upgrade wireguard-windows, de-fork wireguard-go 4 years ago
pendopen.go envknob: add new package for all the strconv.ParseBool(os.Getenv(..)) 3 years ago
userspace.go net/dns, net/dns/resolver, wgengine: refactor DNS request path (#4364) 3 years ago
userspace_ext_test.go go.mod: upgrade wireguard-windows, de-fork wireguard-go 4 years ago
userspace_test.go all: gofmt -w -s (simplify) tests 3 years ago
watchdog.go all: use any instead of interface{} 3 years ago
watchdog_test.go all: use any instead of interface{} 3 years ago
wgengine.go ipn/ipnlocal: do not process old status messages received out of order 3 years ago