[reSIProcate] Purging expired registrations
I notice the following code in InMemoryRegistrationDatabase.cxx,
getContacts() is similar, it appears that the aor and/or contacts are
returned without checking for expiry.
I am happy to write patches for InMemoryRegistrationDatabase to purge
the expired registrations whenever the relevent aor is queried.
Furthermore, if a class implementing RegistrationPersistenceManager is
modified to purge expired registrations in this way, will it need to
initiate (possibly through the stack) some callback to the
ServerRegistrationHandler?
bool
InMemoryRegistrationDatabase::aorIsRegistered(const Uri& aor)
{
database_map_t::iterator i;
Lock g(mDatabaseMutex);
i = mDatabase.find(aor);
if (i == mDatabase.end() || i->second == 0)
{
return false;
}
return true;
}