Skip to content
This repository was archived by the owner on Jun 12, 2021. It is now read-only.

Commit c6e0287

Browse files
committed
minor changes in session
1 parent 0ae8b88 commit c6e0287

File tree

2 files changed

+13
-11
lines changed

2 files changed

+13
-11
lines changed

src/oidcendpoint/session.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -232,6 +232,7 @@ def delete_kv2sid(self, key, value):
232232
self._db.delete(KEY_FORMAT.format(key, value))
233233

234234
def get_sid_by_kv(self, key, value):
235+
""" KEY_FORMAT = "__{}__{}" """
235236
return self._db.get(KEY_FORMAT.format(key, value))
236237

237238
def get_token(self, sid):
@@ -559,6 +560,7 @@ def get_authentication_event(self, sid):
559560
sesinf = session_info.get("authn_event")
560561
return sesinf or ValueError("No Authn event info")
561562

563+
562564
def create_session_db(ec, token_handler_args, db=None,
563565
sso_db=None, sub_func=None):
564566
_token_handler = token_handler.factory(ec, **token_handler_args)

src/oidcendpoint/sso_db.py

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ def set(self, label, key, value):
3535
def get(self, label, key):
3636
_key = KEY_FORMAT.format(label, key)
3737
value = self._db.get(_key)
38-
logger.debug("SSODb get {} [{}]".format(key, value))
38+
logger.debug("SSODb get {} - {}: {}".format(label, key, value))
3939
return value
4040

4141
def delete(self, label, key):
@@ -45,17 +45,17 @@ def delete(self, label, key):
4545
def remove(self, label, key, value):
4646
_key = KEY_FORMAT.format(label, key)
4747
_values = self._db.get(_key)
48-
if _values:
49-
try:
50-
_values.remove(value)
51-
except ValueError:
52-
pass
48+
vcount = len(_values)
49+
# full clean up
50+
while value in _values:
51+
_values.remove(value)
52+
# if changes have been made -> update them
53+
if vcount != len(_values):
54+
if _values:
55+
self._db.set(_key, _values)
5356
else:
54-
if _values:
55-
self._db.set(_key, _values)
56-
else:
57-
self._db.delete(_key)
58-
57+
self._db.delete(_key)
58+
5959
def map_sid2uid(self, sid, uid):
6060
"""
6161
Store the connection between a Session ID and a User ID

0 commit comments

Comments
 (0)