From a0fe80cd9998956907dc6e587a71ee11ed4b09f1 Mon Sep 17 00:00:00 2001 From: Dmitri Dolguikh Date: Tue, 4 Aug 2026 12:52:09 +0200 Subject: [PATCH] wire up validated peers Signed-off-by: Dmitri Dolguikh --- management/internals/network_map_db/db_store.go | 4 +--- .../internals/network_map_db/pgsql/network_map_data.go | 6 ++++++ management/internals/network_map_db/pgsql/pg_store.go | 6 +++++- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/management/internals/network_map_db/db_store.go b/management/internals/network_map_db/db_store.go index c8ba94b80..d24bbc64d 100644 --- a/management/internals/network_map_db/db_store.go +++ b/management/internals/network_map_db/db_store.go @@ -8,7 +8,6 @@ import ( "reflect" "strings" - "github.com/netbirdio/netbird/management/server/integrations/integrated_validator" "github.com/netbirdio/netbird/shared/management/networkmap" "github.com/netbirdio/netbird/shared/management/networkmap/nmdata" "github.com/rs/xid" @@ -38,8 +37,7 @@ type NetworkMapDBStore interface { } type NetworkMapDBStoreImpl struct { - store NetworkMapDBStore - integratedPeerValidator integrated_validator.IntegratedValidator + store NetworkMapDBStore } func FromSqlTypesToSharedTypes(src reflect.Value, dst reflect.Value) error { diff --git a/management/internals/network_map_db/pgsql/network_map_data.go b/management/internals/network_map_db/pgsql/network_map_data.go index a52022c53..7aacda264 100644 --- a/management/internals/network_map_db/pgsql/network_map_data.go +++ b/management/internals/network_map_db/pgsql/network_map_data.go @@ -81,6 +81,11 @@ func (pg *PgStore) GetNetworkMapData(ctx context.Context, accountId string) (*ne if err != nil { return rollbackAndReturnError(ctx, tx, err) } + extraSettings, err := pg.settingsManager.GetExtraSettings(ctx, accountId) + if err != nil { + return rollbackAndReturnError(ctx, tx, err) + } + validatedPeers, err := pg.integratedPeerValidator.GetValidatedPeers(ctx, accountId, toSliceOfPtrs(groups), toSliceOfPtrs(peers), extraSettings) resourcePolicies := make(map[string][]*nmdata.Policy) for _, resource := range networkResources { @@ -117,6 +122,7 @@ func (pg *PgStore) GetNetworkMapData(ctx context.Context, accountId string) (*ne DNSSettings: &dnsSettings, Network: &network, Peers: toMap(peers, func(p nmdata.Peer) string { return p.ID }), + ValidatedPeers: validatedPeers, Groups: toMap(groups, func(g nmdata.Group) string { return g.PublicID }), Policies: toSliceOfPtrs(policies), ResourcePolicies: resourcePolicies, diff --git a/management/internals/network_map_db/pgsql/pg_store.go b/management/internals/network_map_db/pgsql/pg_store.go index 9c7b98682..ae80b1479 100644 --- a/management/internals/network_map_db/pgsql/pg_store.go +++ b/management/internals/network_map_db/pgsql/pg_store.go @@ -7,6 +7,8 @@ import ( "github.com/jackc/pgx/v5/pgxpool" networkmapdb "github.com/netbirdio/netbird/management/internals/network_map_db" + "github.com/netbirdio/netbird/management/server/integrations/integrated_validator" + "github.com/netbirdio/netbird/management/server/settings" ) const ( @@ -19,7 +21,9 @@ const ( var _ networkmapdb.NetworkMapDBStore = &PgStore{} type PgStore struct { - Pool *pgxpool.Pool + Pool *pgxpool.Pool + integratedPeerValidator integrated_validator.IntegratedValidator + settingsManager settings.Manager } func NewPostgresqlStore(ctx context.Context, dsn string) (*PgStore, error) {