tailscale/ipn
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>
2024-04-22 10:27:12 -06:00
..
conffile ipn/{conffile,ipnlocal}: start booting tailscaled from a config file w/ auth key 2023-10-17 07:12:49 -07:00
ipnauth go.mod, all: move away from inet.af domain seized by Taliban 2024-02-13 19:21:09 -08:00
ipnlocal ipn/ipnlocal,ssh/tailssh: reject c2n /update if SSH conns are active (#11820) 2024-04-22 10:27:12 -06:00
ipnserver all: use Go 1.22 range-over-int 2024-04-16 15:32:38 -07:00
ipnstate ipn/ipnlocal: populate peers' capabilities (#11365) 2024-04-03 10:55:28 -04:00
localapi all: use Go 1.22 range-over-int 2024-04-16 15:32:38 -07:00
policy ipn,tailconfig: clean up unreleased and removed app connector service 2023-11-09 22:36:52 -08:00
store ipn/store: omit AWS & Kubernetes support on 'small' Linux GOARCHes 2024-04-17 10:20:11 -07:00
backend.go ipn: remove unused Options.LegacyMigrationPrefs 2024-04-15 22:13:53 -07:00
conf.go cmd/k8s-operator,ipn/conf.go: fix --accept-routes for proxies (#11453) 2024-03-19 14:54:17 +00:00
doc.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
ipn_clone.go ipn/{localapi, ipnlocal}: forget the prior exit node when localAPI is used to zero the ExitNodeID (#11681) 2024-04-16 14:53:56 -04:00
ipn_test.go net/packet: split off checksum munging into different pkg 2023-10-11 14:25:58 -07:00
ipn_view.go ipn/{localapi, ipnlocal}: forget the prior exit node when localAPI is used to zero the ExitNodeID (#11681) 2024-04-16 14:53:56 -04:00
prefs.go all: use Go 1.22 range-over-int 2024-04-16 15:32:38 -07:00
prefs_test.go all: use Go 1.22 range-over-int 2024-04-16 15:32:38 -07:00
serve.go all: deprecate Node.Capabilities (more), remove PeerChange.Capabilities [capver 89] 2024-03-24 21:08:46 -07:00
serve_test.go {ipn/serve,cmd/tailscale/cli}: move some shared funcs to ipn 2024-03-05 14:30:38 -05:00
store.go ipn: add comment about thread-safety to StateStore 2024-03-06 12:42:18 -06:00
store_test.go ipn: avoid useless no-op WriteState calls 2023-08-07 08:44:24 -07:00