tailscale/ipn/ipnlocal
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>
2023-03-09 12:53:00 -08:00
..
testdata ipn/ipnlocal: fix the path for writing cert files (#7203) 2023-02-07 14:34:04 -08:00
c2n.go version: unexport all vars, turn Short/Long into funcs 2023-02-11 07:29:55 +00:00
cert_js.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
cert_test.go ipn/ipnlocal: fix the path for writing cert files (#7203) 2023-02-07 14:34:04 -08:00
cert.go version: unexport all vars, turn Short/Long into funcs 2023-02-11 07:29:55 +00:00
dnsconfig_test.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
expiry_test.go ipn/ipnlocal: handle more edge cases in netmap expiry timer 2023-02-06 20:32:25 -05:00
expiry.go ipn/ipnlocal: handle more edge cases in netmap expiry timer 2023-02-06 20:32:25 -05:00
local_test.go all: use tstest.Replace more 2023-03-04 12:24:55 -08:00
local.go ipn/ipnlocal: add support for funnel in tsnet 2023-03-09 12:53:00 -08:00
loglines_test.go all: replace logtail.{Public,Private}ID with logid.{Public,Private}ID (#7404) 2023-02-28 19:00:00 -08:00
network-lock_test.go ipn,cmd/tailscale: implement resigning nodes on tka key removal 2023-03-03 10:09:05 -10:00
network-lock.go all: implement preauth-key support with tailnet lock 2023-03-08 11:56:46 -10:00
peerapi_h2c.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
peerapi_macios_ext.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
peerapi_test.go ipn/ipnlocal: drop not required StateKey parameter 2023-01-30 17:58:55 -08:00
peerapi.go ipn/ipnlocal: add support for funnel in tsnet 2023-03-09 12:53:00 -08:00
profiles_test.go ipn/ipnlocal: use presence of NodeID to identify logins 2023-02-06 21:52:35 -08:00
profiles.go ipn/ipnlocal: use presence of NodeID to identify logins 2023-02-06 21:52:35 -08:00
serve_test.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
serve.go ipn/ipnlocal: add support for funnel in tsnet 2023-03-09 12:53:00 -08:00
ssh_stub.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
ssh_test.go ipn/ipnlocal: drop not required StateKey parameter 2023-01-30 17:58:55 -08:00
ssh.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
state_test.go ipn/ipnlocal: use presence of NodeID to identify logins 2023-02-06 21:52:35 -08:00