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/ipnlocal
Andrew Lytvynov b743b85dad
ipn/ipnlocal,ssh/tailssh: reject c2n /update if SSH conns are active (#11820)
Since we already track active SSH connections, it's not hard to
proactively reject updates until those finish. We attempt to do the same
on the control side, but the detection latency for new connections is in
the minutes, which is not fast enough for common short sessions.

Handle a `force=true` query parameter to override this behavior, so that
control can still trigger an update on a server where some long-running
abandoned SSH session is open.

Updates https://github.com/tailscale/corp/issues/18556

Signed-off-by: Andrew Lytvynov <awly@tailscale.com>
5 months ago
..
testdata ipn/ipnlocal: fix the path for writing cert files (#7203) 2 years ago
breaktcp_darwin.go cmd/tailscale: add debug commands to break connections 1 year ago
breaktcp_linux.go cmd/tailscale: add debug commands to break connections 1 year ago
c2n.go ipn/ipnlocal,ssh/tailssh: reject c2n /update if SSH conns are active (#11820) 5 months ago
c2n_pprof.go ipn/ipnlocal: add c2n /debug/pprof/allocs endpoint 7 months ago
c2n_test.go util/cmpx: delete now that we're using Go 1.22 8 months ago
cert.go ipn/ipnlocal: remove ancient transition mechanism for https certs 8 months ago
cert_js.go ipn/ipnlocal: add c2n method to check on TLS cert fetch status 11 months ago
cert_test.go all: use Go 1.21 slices, maps instead of x/exp/{slices,maps} 1 year ago
dnsconfig_test.go util/cmpx: delete now that we're using Go 1.22 8 months ago
drive.go all: use Go 1.22 range-over-int 6 months ago
expiry.go ssh/tailssh: use control server time instead of local time 11 months ago
expiry_test.go types/netmap, all: make NetworkMap.SelfNode a tailcfg.NodeView 1 year ago
local.go ipn/ipnlocal,ssh/tailssh: reject c2n /update if SSH conns are active (#11820) 5 months ago
local_test.go ipn/ipnlocal,clientupdate: disallow auto-updates in containers (#11814) 6 months ago
loglines_test.go all: use Go 1.22 range-over-int 6 months ago
network-lock.go all: use Go 1.22 range-over-int 6 months ago
network-lock_test.go ipn/ipnlocal,cmd/tailscale: persist tailnet name in user profile 11 months ago
peerapi.go tailscale: switch tailfs to drive syntax for api and logs (#11625) 6 months ago
peerapi_h2c.go all: update copyright and license headers 2 years ago
peerapi_macios_ext.go all: update copyright and license headers 2 years ago
peerapi_test.go all: use Go 1.22 range-over-int 6 months ago
profiles.go util/cmpx: remove code that's in the stdlib now 10 months ago
profiles_notwindows.go ipn/ipnlocal: fix profile duplication 1 year ago
profiles_test.go ipn/ipnlocal,cmd/tailscale: persist tailnet name in user profile 11 months ago
profiles_windows.go ipn/ipnlocal: better enforce system policies 10 months ago
serve.go all: use Go 1.22 range-over-int 6 months ago
serve_test.go ipn/ipnlocal: q-encode (RFC 2047) Tailscale serve header values 6 months ago
ssh.go ipnlocal: log failure to get ssh host keys 8 months ago
ssh_stub.go ipnlocal: log failure to get ssh host keys 8 months ago
ssh_test.go ipn/ipnlocal: drop not required StateKey parameter 2 years ago
state_test.go all: use Go 1.22 range-over-int 6 months ago
taildrop.go ipn/localapi: add support for multipart POST to file-put 6 months ago
web_client.go all: remove LenIter, use Go 1.22 range-over-int instead 7 months ago
web_client_stub.go ipn/ipnlocal: add mutex to webClient struct 11 months ago