Persist virtual session processes for crash recovery and identify them by start time

This commit is contained in:
Viktor Liu
2026-08-29 09:48:45 +02:00
parent 6806be2cda
commit 1c10c19d45
8 changed files with 299 additions and 41 deletions
+4
View File
@@ -9,6 +9,7 @@ import (
"github.com/netbirdio/netbird/client/internal/routemanager/systemops"
"github.com/netbirdio/netbird/client/internal/statemanager"
"github.com/netbirdio/netbird/client/ssh/config"
vncserver "github.com/netbirdio/netbird/client/vnc/server"
)
// registerStates registers all states that need crash recovery cleanup.
@@ -18,4 +19,7 @@ func registerStates(mgr *statemanager.Manager) {
mgr.RegisterState(&nftables.ShutdownState{})
mgr.RegisterState(&iptables.ShutdownState{})
mgr.RegisterState(&config.ShutdownState{})
// Virtual VNC sessions leave an X server and a desktop behind if the daemon
// dies without stopping them.
mgr.RegisterState(&vncserver.ShutdownState{})
}