mirror of
https://github.com/netbirdio/netbird.git
synced 2026-10-13 08:59:08 +02:00
[client] Remove lazy connection UI toggle (#6661)
Lazy connections are now opt-out and controlled centrally by NB_LAZY_CONN, MDM policy (lazyConnection), and the management feature flag (#6617). The per-device UI toggle no longer fits this model: after #6617 the daemon stopped persisting the setting and dropped it from GetConfig, so the Wails toggle always read back OFF and its writes did not survive a restart. Remove the toggle and the orphaned runtime plumbing, matching what main did for the Fyne UI: - drop the toggle from SettingsNetwork and the lazy i18n keys - drop LazyConnectionEnabled from the UI settings service and SetConfig request - drop the runtime-apply block in server.SetConfig - delete Engine.SetLazyConnEnabled and ConnMgr.SetLocalLazyConn The proto fields and FullStatus status reporting are left intact.
This commit is contained in:
@@ -125,42 +125,6 @@ func (e *ConnMgr) UpdatedRemoteFeatureFlag(ctx context.Context, enabled bool) er
|
||||
}
|
||||
}
|
||||
|
||||
// SetLocalLazyConn applies a local lazy connection override (UI / CLI / env).
|
||||
// While the local override pins the setting (force != lazyForceNone),
|
||||
// UpdatedRemoteFeatureFlag (management sync) is a no-op, so the local setting
|
||||
// wins until it is turned off again, which returns control to management.
|
||||
func (e *ConnMgr) SetLocalLazyConn(ctx context.Context, enabled bool) error {
|
||||
if enabled {
|
||||
e.force = lazyForceOn
|
||||
} else {
|
||||
e.force = lazyForceNone
|
||||
}
|
||||
|
||||
if enabled {
|
||||
if e.lazyConnMgr != nil {
|
||||
return nil
|
||||
}
|
||||
|
||||
if e.rosenpassEnabled {
|
||||
log.Warnf("rosenpass connection manager is enabled, lazy connection manager will not be started")
|
||||
return nil
|
||||
}
|
||||
|
||||
log.Infof("lazy connection manager is enabled locally")
|
||||
e.initLazyManager(ctx)
|
||||
e.statusRecorder.UpdateLazyConnection(true)
|
||||
return e.addPeersToLazyConnManager()
|
||||
}
|
||||
|
||||
if e.lazyConnMgr == nil {
|
||||
return nil
|
||||
}
|
||||
log.Infof("lazy connection manager is disabled locally")
|
||||
e.closeManager(ctx)
|
||||
e.statusRecorder.UpdateLazyConnection(false)
|
||||
return nil
|
||||
}
|
||||
|
||||
// UpdateRouteHAMap updates the route HA mappings in the lazy connection manager
|
||||
func (e *ConnMgr) UpdateRouteHAMap(haMap route.HAMap) {
|
||||
if !e.isStartedWithLazyMgr() {
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
package internal
|
||||
|
||||
import (
|
||||
"errors"
|
||||
)
|
||||
|
||||
// SetLazyConnEnabled applies a local lazy connection override to the running
|
||||
// engine. It pins the setting like an env/CLI flag, so a later management sync
|
||||
// cannot override it. syncMsgMux guards ConnMgr, which is not thread-safe.
|
||||
func (e *Engine) SetLazyConnEnabled(enabled bool) error {
|
||||
e.syncMsgMux.Lock()
|
||||
defer e.syncMsgMux.Unlock()
|
||||
|
||||
if e.connMgr == nil {
|
||||
return errors.New("connection manager is not initialised")
|
||||
}
|
||||
|
||||
return e.connMgr.SetLocalLazyConn(e.ctx, enabled)
|
||||
}
|
||||
Reference in New Issue
Block a user