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/desktop
Nick Khyl 6df5c8f32e various: keep tailscale connected when Always On mode is enabled on Windows
In this PR, we enable the registration of LocalBackend extensions to exclude code specific to certain
platforms or environments. We then introduce desktopSessionsExt, which is included only in Windows builds
and only if the ts_omit_desktop_sessions tag is disabled for the build. This extension tracks desktop sessions
and switches to (or remains on) the appropriate profile when a user signs in or out, locks their screen,
or disconnects a remote session.

As desktopSessionsExt requires an ipn/desktop.SessionManager, we register it with tsd.System
for the tailscaled subprocess on Windows.

We also fix a bug in the sessionWatcher implementation where it attempts to close a nil channel on stop.

Updates #14823
Updates tailscale/corp#26247

Signed-off-by: Nick Khyl <nickk@tailscale.com>
10 months ago
..
doc.go ipn/desktop: add a new package for managing desktop sessions on Windows 10 months ago
mksyscall.go ipn/desktop: add a new package for managing desktop sessions on Windows 10 months ago
session.go ipn/desktop: add a new package for managing desktop sessions on Windows 10 months ago
sessions.go ipn/desktop: add a new package for managing desktop sessions on Windows 10 months ago
sessions_notwindows.go ipn/desktop: add a new package for managing desktop sessions on Windows 10 months ago
sessions_windows.go various: keep tailscale connected when Always On mode is enabled on Windows 10 months ago
zsyscall_windows.go ipn/desktop: add a new package for managing desktop sessions on Windows 10 months ago