summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomas Touceda <chiiph@leap.se>2013-05-10 16:41:42 -0300
committerkali <kali@leap.se>2013-05-11 21:59:59 +0900
commitc533900a43f5006e6b4cb9d070b4bd30fb67f0b5 (patch)
treea93358dc44e80366d1c8de2d08f068622e258fe7
parent89805e33ca85616fdea351b8ce0652adf2c99e2c (diff)
Save auth token
-rw-r--r--changes/feature_save-token1
-rw-r--r--src/leap/crypto/srpauth.py12
2 files changed, 13 insertions, 0 deletions
diff --git a/changes/feature_save-token b/changes/feature_save-token
new file mode 100644
index 00000000..dc347310
--- /dev/null
+++ b/changes/feature_save-token
@@ -0,0 +1 @@
+ o Saves the token to allow token authenticated queries. \ No newline at end of file
diff --git a/src/leap/crypto/srpauth.py b/src/leap/crypto/srpauth.py
index 9446cee8..26bd0295 100644
--- a/src/leap/crypto/srpauth.py
+++ b/src/leap/crypto/srpauth.py
@@ -82,6 +82,8 @@ class SRPAuth(QtCore.QObject):
self._session_id_lock = QtCore.QMutex()
self._uid = None
self._uid_lock = QtCore.QMutex()
+ self._token = None
+ self._token_lock = QtCore.QMutex()
self._srp_user = None
self._srp_a = None
@@ -240,10 +242,12 @@ class SRPAuth(QtCore.QObject):
M2 = auth_result.json().get("M2", None)
uid = auth_result.json().get("id", None)
+ token = auth_result.json().get("token", None)
events_signal(proto.CLIENT_UID, content=uid)
self.set_uid(uid)
+ self.set_token(token)
if M2 is None or self.get_uid() is None:
logger.error("Something went wrong. Content = %r" %
@@ -356,6 +360,14 @@ class SRPAuth(QtCore.QObject):
QtCore.QMutexLocker(self._uid_lock)
return self._uid
+ def set_token(self, token):
+ QtCore.QMutexLocker(self._token_lock)
+ self._token = token
+
+ def get_token(self, token):
+ QtCore.QMutexLocker(self._token_lock)
+ return self._token
+
__instance = None
authentication_finished = QtCore.Signal(bool, str)