summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKali Kaneko <kali@leap.se>2013-08-02 11:10:01 +0200
committerKali Kaneko <kali@leap.se>2013-08-06 00:08:35 +0200
commit4028fc6be007d32209db8657809539d1e110302d (patch)
tree7743b59c5a53a36e223a3284b06e97289a154cda
parent11294fe5b7de8149bc3beee6812ad045c78ee469 (diff)
Properly shutdown soledad instance.
-rw-r--r--src/leap/gui/mainwindow.py12
-rw-r--r--src/leap/services/soledad/soledadbootstrapper.py3
2 files changed, 12 insertions, 3 deletions
diff --git a/src/leap/gui/mainwindow.py b/src/leap/gui/mainwindow.py
index bf959d05..ed0d4652 100644
--- a/src/leap/gui/mainwindow.py
+++ b/src/leap/gui/mainwindow.py
@@ -910,8 +910,8 @@ class MainWindow(QtGui.QMainWindow):
# TODO: display in the GUI:
# should pass signal to a slot in status_panel
# that sets the global status
- logger.error("Soledad failed to start: %s" %
- (data[self._soledad_bootstrapper.ERROR_KEY],))
+ logger.warning("Soledad failed to start: %s" %
+ (data[self._soledad_bootstrapper.ERROR_KEY],))
def _soledad_bootstrapped_stage(self, data):
"""
@@ -1381,8 +1381,15 @@ class MainWindow(QtGui.QMainWindow):
if self._srp_auth is not None:
if self._srp_auth.get_session_id() is not None or \
self._srp_auth.get_token() is not None:
+ # XXX this can timeout after loong time: See #3368
self._srp_auth.logout()
+ if self._soledad:
+ logger.debug("Closing soledad...")
+ self._soledad.close()
+ else:
+ logger.error("No instance of soledad was found.")
+
logger.debug('Cleaning pidfiles')
self._cleanup_pidfiles()
@@ -1396,6 +1403,7 @@ class MainWindow(QtGui.QMainWindow):
self._cleanup_and_quit()
self._really_quit = True
+
if self._wizard:
self._wizard.close()
diff --git a/src/leap/services/soledad/soledadbootstrapper.py b/src/leap/services/soledad/soledadbootstrapper.py
index e3ccc7fb..f14e9e50 100644
--- a/src/leap/services/soledad/soledadbootstrapper.py
+++ b/src/leap/services/soledad/soledadbootstrapper.py
@@ -62,6 +62,7 @@ class SoledadBootstrapper(AbstractBootstrapper):
self._download_if_needed = False
self._user = ""
self._password = ""
+ self._soledad = None
@property
def keymanager(self):
@@ -193,7 +194,7 @@ class SoledadBootstrapper(AbstractBootstrapper):
address,
"https://%s:6425" % (self._provider_config.get_domain()),
self._soledad,
- #token=srp_auth.get_token(), # TODO: enable token usage
+ #token=srp_auth.get_token(), # TODO: enable token usage
session_id=srp_auth.get_session_id(),
ca_cert_path=self._provider_config.get_ca_cert_path(),
api_uri=self._provider_config.get_api_uri(),