disable network components on the mgmt server by default

Signed-off-by: Dmitri Dolguikh <dmitri.external@netbird.io>
This commit is contained in:
Dmitri Dolguikh
2026-07-20 11:44:34 +02:00
parent ce55620e37
commit 9a9317df2f
5 changed files with 24 additions and 20 deletions
@@ -233,7 +233,7 @@ func (c *Controller) sendUpdateAccountPeers(ctx context.Context, accountID strin
proxyNetworkMap := proxyNetworkMaps[p.ID] proxyNetworkMap := proxyNetworkMaps[p.ID]
var update *proto.SyncResponse var update *proto.SyncResponse
commonSyncMessageVersion := sharedgrpc.HighestCommonSyncMessageVersions( commonSyncMessageVersion := sharedgrpc.HighestCommonSyncMessageVersion(
c.perAccountOrGlobalSupportedSyncMessageVersions(accountID), c.perAccountOrGlobalSupportedSyncMessageVersions(accountID),
sharedgrpc.SyncMessageVersionFromConfig(&peer.Meta.SyncMessageVersion)) sharedgrpc.SyncMessageVersionFromConfig(&peer.Meta.SyncMessageVersion))
@@ -400,7 +400,7 @@ func (c *Controller) sendUpdateForAffectedPeers(ctx context.Context, accountID s
proxyNetworkMap := proxyNetworkMaps[p.ID] proxyNetworkMap := proxyNetworkMaps[p.ID]
var update *proto.SyncResponse var update *proto.SyncResponse
commonSyncMessageVersion := sharedgrpc.HighestCommonSyncMessageVersions( commonSyncMessageVersion := sharedgrpc.HighestCommonSyncMessageVersion(
c.perAccountOrGlobalSupportedSyncMessageVersions(accountID), c.perAccountOrGlobalSupportedSyncMessageVersions(accountID),
sharedgrpc.SyncMessageVersionFromConfig(&peer.Meta.SyncMessageVersion)) sharedgrpc.SyncMessageVersionFromConfig(&peer.Meta.SyncMessageVersion))
@@ -536,7 +536,7 @@ func (c *Controller) UpdateAccountPeer(ctx context.Context, accountId string, pe
var update *proto.SyncResponse var update *proto.SyncResponse
commonSyncMessageVersion := sharedgrpc.HighestCommonSyncMessageVersions( commonSyncMessageVersion := sharedgrpc.HighestCommonSyncMessageVersion(
c.perAccountOrGlobalSupportedSyncMessageVersions(accountId), c.perAccountOrGlobalSupportedSyncMessageVersions(accountId),
sharedgrpc.SyncMessageVersionFromConfig(&peer.Meta.SyncMessageVersion)) sharedgrpc.SyncMessageVersionFromConfig(&peer.Meta.SyncMessageVersion))
+1 -1
View File
@@ -1023,7 +1023,7 @@ func (s *Server) sendInitialSync(ctx context.Context, peerKey wgtypes.Key, peer
var plainResp *proto.SyncResponse var plainResp *proto.SyncResponse
commonSyncMessageVersion := sharedgrpc.HighestCommonSyncMessageVersions( commonSyncMessageVersion := sharedgrpc.HighestCommonSyncMessageVersion(
s.perAccountOrGlobalSyncMessageVersions(peer.AccountID), s.perAccountOrGlobalSyncMessageVersions(peer.AccountID),
sharedgrpc.SyncMessageVersionFromConfig(&peer.Meta.SyncMessageVersion)) sharedgrpc.SyncMessageVersionFromConfig(&peer.Meta.SyncMessageVersion))
+1 -1
View File
@@ -1047,5 +1047,5 @@ func syncMessageVersion(info system.Info) int32 {
if info.SyncMessageVersion != nil { if info.SyncMessageVersion != nil {
return int32(*info.SyncMessageVersion) return int32(*info.SyncMessageVersion)
} }
return int32(nbmgmtgrpc.CurrentSyncMessageVersion) return int32(nbmgmtgrpc.DefaultSyncMessageVersion)
} }
@@ -12,7 +12,8 @@ const (
ComponentNetworkMap ComponentNetworkMap
) )
const CurrentSyncMessageVersion = ComponentNetworkMap const DefaultSyncMessageVersion = Base
const HighestSyncMessageVersion = ComponentNetworkMap
var ErrorUnrecognizedSyncMessageVersion = errors.New("unrecognized SyncMessageVersion") var ErrorUnrecognizedSyncMessageVersion = errors.New("unrecognized SyncMessageVersion")
@@ -21,8 +22,8 @@ func ValidateSyncMessageVersion(v *int) error {
if v == nil { if v == nil {
return nil return nil
} }
if *v < 0 || *v > int(CurrentSyncMessageVersion) { if *v < 0 || *v > int(HighestSyncMessageVersion) {
return fmt.Errorf("sync message version must between 0 and %d, %w", CurrentSyncMessageVersion, ErrorUnrecognizedSyncMessageVersion) return fmt.Errorf("sync message version must between 0 and %d, %w", HighestSyncMessageVersion, ErrorUnrecognizedSyncMessageVersion)
} }
return nil return nil
} }
@@ -32,9 +33,9 @@ func ValidateSyncMessageVersion(v *int) error {
// the assumption is ValidateSyncMessageVersion() has been called before using SyncMessageVersionFromConfig() // the assumption is ValidateSyncMessageVersion() has been called before using SyncMessageVersionFromConfig()
func SyncMessageVersionFromConfig(v *int) SyncMessageVersion { func SyncMessageVersionFromConfig(v *int) SyncMessageVersion {
if v == nil { if v == nil {
return CurrentSyncMessageVersion return DefaultSyncMessageVersion
} }
if *v < 0 || *v > int(CurrentSyncMessageVersion) { if *v < 0 || *v > int(HighestSyncMessageVersion) {
return Base return Base
} }
@@ -58,7 +59,7 @@ func SyncMessageVersionsFromMap(toconvert map[string]int) map[string]SyncMessage
} }
// return highest common sync message version, or Default (which is always available) // return highest common sync message version, or Default (which is always available)
func HighestCommonSyncMessageVersions(a SyncMessageVersion, b SyncMessageVersion) SyncMessageVersion { func HighestCommonSyncMessageVersion(a SyncMessageVersion, b SyncMessageVersion) SyncMessageVersion {
if a > b { if a > b {
return b return b
} }
@@ -9,26 +9,29 @@ import (
func TestValidation(t *testing.T) { func TestValidation(t *testing.T) {
assert.NoError(t, ValidateSyncMessageVersion(nil)) assert.NoError(t, ValidateSyncMessageVersion(nil))
assert.NoError(t, ValidateSyncMessageVersion(toIntPtr(0))) assert.NoError(t, ValidateSyncMessageVersion(toIntPtr(0)))
assert.NoError(t, ValidateSyncMessageVersion(toIntPtr(1)))
assert.ErrorIs(t, ValidateSyncMessageVersion(toIntPtr(int(^uint(0)>>1))), ErrorUnrecognizedSyncMessageVersion) assert.ErrorIs(t, ValidateSyncMessageVersion(toIntPtr(int(^uint(0)>>1))), ErrorUnrecognizedSyncMessageVersion)
assert.ErrorIs(t, ValidateSyncMessageVersion(toIntPtr(-1)), ErrorUnrecognizedSyncMessageVersion) assert.ErrorIs(t, ValidateSyncMessageVersion(toIntPtr(-1)), ErrorUnrecognizedSyncMessageVersion)
} }
func TestVersionFromConfig(t *testing.T) { func TestVersionFromConfig(t *testing.T) {
assert.Equal(t, CurrentSyncMessageVersion, SyncMessageVersionFromConfig(nil)) assert.Equal(t, DefaultSyncMessageVersion, SyncMessageVersionFromConfig(nil))
assert.Equal(t, CurrentSyncMessageVersion, SyncMessageVersionFromConfig(toIntPtr(1))) assert.Equal(t, Base, SyncMessageVersionFromConfig(toIntPtr(0)))
assert.Equal(t, Base, SyncMessageVersionFromConfig(toIntPtr(-1))) assert.Equal(t, ComponentNetworkMap, SyncMessageVersionFromConfig(toIntPtr(1)))
assert.Equal(t, Base, SyncMessageVersionFromConfig(toIntPtr(int(^uint(0)>>1)))) assert.Equal(t, DefaultSyncMessageVersion, SyncMessageVersionFromConfig(toIntPtr(-1)))
assert.Equal(t, DefaultSyncMessageVersion, SyncMessageVersionFromConfig(toIntPtr(int(^uint(0)>>1))))
} }
func TestPerAccountConversionStringToEnum(t *testing.T) { func TestPerAccountConversionStringToEnum(t *testing.T) {
assert.Equal(t, map[string]SyncMessageVersion{"1": CurrentSyncMessageVersion}, SyncMessageVersionsFromMap(map[string]int{"1": 1})) assert.Equal(t, map[string]SyncMessageVersion{"1": HighestSyncMessageVersion}, SyncMessageVersionsFromMap(map[string]int{"1": 1}))
assert.Equal(t, map[string]SyncMessageVersion{"2": Base}, SyncMessageVersionsFromMap(map[string]int{"2": -1})) assert.Equal(t, map[string]SyncMessageVersion{"2": DefaultSyncMessageVersion}, SyncMessageVersionsFromMap(map[string]int{"2": -1}))
} }
func TestCommonVersions(t *testing.T) { func TestCommonVersions(t *testing.T) {
assert.Equal(t, Base, HighestCommonSyncMessageVersions(Base, CurrentSyncMessageVersion)) assert.Equal(t, Base, HighestCommonSyncMessageVersion(Base, HighestSyncMessageVersion))
assert.Equal(t, Base, HighestCommonSyncMessageVersions(CurrentSyncMessageVersion, Base)) assert.Equal(t, Base, HighestCommonSyncMessageVersion(HighestSyncMessageVersion, Base))
assert.Equal(t, CurrentSyncMessageVersion, HighestCommonSyncMessageVersions(CurrentSyncMessageVersion, CurrentSyncMessageVersion)) assert.Equal(t, Base, HighestCommonSyncMessageVersion(Base, Base))
assert.Equal(t, HighestSyncMessageVersion, HighestCommonSyncMessageVersion(HighestSyncMessageVersion, HighestSyncMessageVersion))
} }
func toIntPtr(v int) *int { func toIntPtr(v int) *int {