X-Git-Url: http://git.cascardo.info/?p=cascardo%2Fipsilon.git;a=blobdiff_plain;f=ipsilon%2Fproviders%2Fopenid%2Fstore.py;h=bf2898c02f69cc2381f7302242e0a2638849db78;hp=7c637d450e1af353c3230b82da9d74be560be6ca;hb=effa209e386930ad705f255e61c24a5dfb057987;hpb=f958c5e78a7d5665073483d79926e91709a355fe diff --git a/ipsilon/providers/openid/store.py b/ipsilon/providers/openid/store.py index 7c637d4..bf2898c 100644 --- a/ipsilon/providers/openid/store.py +++ b/ipsilon/providers/openid/store.py @@ -65,26 +65,35 @@ class OpenIDStore(Store, OpenIDStoreInterface): return True + def _cleanup(self): + res1 = self.cleanupNonces() + res2 = self.cleanupAssociations() + return res1 + res2 + def cleanupNonces(self): nonces = self.get_unique_data('nonce') + cleaned = 0 for iden in nonces: if nonces[iden]['timestamp'] < (time() - NonceSKEW): + cleaned += 1 self.del_unique_data('nonce', iden) + return cleaned def cleanupAssociations(self): assocs = self.get_unique_data('association') + cleaned = 0 for iden in assocs: if ((int(assocs[iden]['issued']) + int(assocs[iden]['lifetime'])) < time()): + cleaned += 1 self.del_unique_data('association', iden) + return cleaned def _initialize_schema(self): q = self._query(self._db, 'association', UNIQUE_DATA_TABLE, trans=False) q.create() - q = self._query(self._db, 'openid_extensions', OPTIONS_TABLE, - trans=False) - q.create() + q._con.close() # pylint: disable=protected-access def _upgrade_schema(self, old_version): if old_version == 1: