Deauth expiring members right away.

This commit is contained in:
Adam Ierymenko 2021-07-26 23:45:18 -04:00
parent 0cf62d334d
commit 663e748b8d
No known key found for this signature in database
GPG key ID: C8877CF2D7A5D7F3
3 changed files with 16 additions and 11 deletions

View file

@ -240,9 +240,8 @@ void DBMirrorSet::onNetworkMemberDeauthorize(const void *db,uint64_t networkId,u
_listener->onNetworkMemberDeauthorize(this,networkId,memberId);
}
std::set< std::pair<uint64_t, uint64_t> > DBMirrorSet::membersExpiringSoon()
void DBMirrorSet::membersExpiring(std::set< std::pair<uint64_t, uint64_t> > &soon, std::set< std::pair<uint64_t, uint64_t> > &expired)
{
std::set< std::pair<uint64_t, uint64_t> > soon;
std::unique_lock<std::mutex> l(_membersExpiringSoon_l);
int64_t now = OSUtils::now();
for(auto next=_membersExpiringSoon.begin();next!=_membersExpiringSoon.end();) {
@ -276,10 +275,9 @@ std::set< std::pair<uint64_t, uint64_t> > DBMirrorSet::membersExpiringSoon()
}
_membersExpiringSoon.erase(next++);
}
return soon;
}
void DBMirrorSet::memberExpiring(int64_t expTime, uint64_t nwid, uint64_t memberId)
void DBMirrorSet::memberWillExpire(int64_t expTime, uint64_t nwid, uint64_t memberId)
{
std::unique_lock<std::mutex> l(_membersExpiringSoon_l);
_membersExpiringSoon.insert(std::pair< int64_t, std::pair< uint64_t, uint64_t > >(expTime, std::pair< uint64_t, uint64_t >(nwid, memberId)));