added login filter to filter different peers with the same pub key

This commit is contained in:
crn4
2025-06-12 15:56:32 +01:00
parent bdf2994e97
commit 5b09804a17
7 changed files with 207 additions and 3 deletions
+4 -1
View File
@@ -101,6 +101,8 @@ type DefaultAccountManager struct {
accountUpdateLocks sync.Map
updateAccountPeersBufferInterval atomic.Int64
loginFilter *loginFilter
}
// getJWTGroupsChanges calculates the changes needed to sync a user's JWT groups.
@@ -194,6 +196,7 @@ func BuildManager(
proxyController: proxyController,
settingsManager: settingsManager,
permissionsManager: permissionsManager,
loginFilter: newLoginFilter(),
}
am.startWarmup(ctx)
@@ -1561,7 +1564,7 @@ func (am *DefaultAccountManager) OnPeerDisconnected(ctx context.Context, account
if err != nil {
log.WithContext(ctx).Warnf("failed marking peer as disconnected %s %v", peerPubKey, err)
}
am.loginFilter.removeLogin(peerPubKey)
return nil
}