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/ipn
Maisem Ali b797f773c7 ipn/ipnlocal: add support for funnel in tsnet
Previously the part that handled Funnel connections was not
aware of any listeners that tsnet.Servers might have had open
so it would check against the ServeConfig and fail.

Adding a ServeConfig for a TCP proxy was also not suitable in this
scenario as that would mean creating two different listeners and have
one forward to the other, which really meant that you could not have
funnel and tailnet-only listeners on the same port.

This also introduces the ipn.FunnelConn as a way for users to identify
whether the call is coming over funnel or not. Currently it only holds
the underlying conn and the target as presented in the "Tailscale-Ingress-Target"
header.

Signed-off-by: Maisem Ali <maisem@tailscale.com>
2 years ago
..
ipnauth all: update copyright and license headers 2 years ago
ipnlocal ipn/ipnlocal: add support for funnel in tsnet 2 years ago
ipnserver all: update copyright and license headers 2 years ago
ipnstate ipn/ipnstate: update field docs on PeerStatus. 2 years ago
localapi all: implement preauth-key support with tailnet lock 2 years ago
policy all: update copyright and license headers 2 years ago
store all: use Go 1.20's bytes.Clone 2 years ago
backend.go all: update copyright and license headers 2 years ago
doc.go all: update copyright and license headers 2 years ago
fake_test.go all: update copyright and license headers 2 years ago
ipn_clone.go all: update copyright and license headers 2 years ago
ipn_view.go all: update copyright and license headers 2 years ago
prefs.go all: update copyright and license headers 2 years ago
prefs_test.go all: update copyright and license headers 2 years ago
serve.go ipn/ipnlocal: add support for funnel in tsnet 2 years ago
store.go ipn: remove unused NLKeyStateKey constant 2 years ago