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
Josh Bleecher Snyder aacb2107ae all: add extra information to serialized endpoints
magicsock.Conn.ParseEndpoint requires a peer's public key,
disco key, and legacy ip/ports in order to do its job.
We currently accomplish that by:

* adding the public key in our wireguard-go fork
* encoding the disco key as magic hostname
* using a bespoke comma-separated encoding

It's a bit messy.

Instead, switch to something simpler: use a json-encoded struct
containing exactly the information we need, in the form we use it.

Our wireguard-go fork still adds the public key to the
address when it passes it to ParseEndpoint, but now the code
compensating for that is just a couple of simple, well-commented lines.
Once this commit is in, we can remove that part of the fork
and remove the compensating code.

Signed-off-by: Josh Bleecher Snyder <josharian@gmail.com>
3 years ago
..
bench all: add extra information to serialized endpoints 3 years ago
filter net/packet, wgengine/{filter,tstun}: add TSMP ping 3 years ago
magicsock all: add extra information to serialized endpoints 3 years ago
monitor wgengine/monitor: reduce Linux log spam on down 3 years ago
netstack wgengine/netstack: avoid delivering incoming packets to both netstack + host 3 years ago
router wgengine/router: use net.IP.Equal instead of bytes.Equal to compare IPs 3 years ago
wgcfg all: add extra information to serialized endpoints 3 years ago
wglog wgengine/wglog: optimize wireguardGoString 3 years ago
winnet wgengine/winnet: don't build on non-windows 3 years ago
pendopen.go wgengine: fix pendopen debug to not track SYN+ACKs, show Node.Online state 3 years ago
userspace.go all: add extra information to serialized endpoints 3 years ago
userspace_ext_test.go cmd/tailscaled, wgengine{,/netstack}: add netstack hybrid mode, add to Windows 3 years ago
userspace_test.go all: add extra information to serialized endpoints 3 years ago
watchdog.go wgengine: take in dns.Config, split out to resolver.Config and dns.OSConfig. 3 years ago
watchdog_test.go wgengine: extend TestWatchdog timeout on macOS 3 years ago
wgengine.go tailcfg: add Endpoint, EndpointType, MapRequest.EndpointType 3 years ago