The branch, twofactorauth has been updated via 8e5e79a0cca5e63ee05b90d1c6d985bcb6306b31 (commit) from bc957c408401c7583cb07618c0fc9aee762de3ec (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- ----------------------------------------------------------------------- Summary of changes: debian/changelog | 2 ++ x2go/backends/control/_stdout.py | 15 +++++++++------ 2 files changed, 11 insertions(+), 6 deletions(-) The diff of changes is: diff --git a/debian/changelog b/debian/changelog index 2bb8c70..e230305 100644 --- a/debian/changelog +++ b/debian/changelog @@ -4,6 +4,8 @@ python-x2go (0.2.0.7-0~x2go1) UNRELEASED; urgency=low - Refresh server feature list on re-connecting (log-off, log-on). - Fix property method X2goControlSession._x2go_remote_home on broken connections. + - Make sure SSH proxy sessions get torn down on control session disconnect + no matter what happens to the control session itself. -- Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Mon, 02 Jul 2012 20:57:37 +0200 diff --git a/x2go/backends/control/_stdout.py b/x2go/backends/control/_stdout.py index b58445c..6dff16a 100644 --- a/x2go/backends/control/_stdout.py +++ b/x2go/backends/control/_stdout.py @@ -878,21 +878,24 @@ class X2goControlSessionSTDOUT(paramiko.SSHClient): # in any case, release out internal transport lock self._transport_lock.release() + retval = False try: if self.get_transport() is not None: - still_active = self.get_transport().is_active() + retval = self.get_transport().is_active() try: self.close() except IOError: pass - if self.sshproxy_session is not None: - self.sshproxy_session.stop_thread() - return still_active - return False except AttributeError: # if the Paramiko _transport object has not yet been initialized, ignore it # but state that this method call did not close the SSH client, but was already closed - return False + pass + + # take down sshproxy_session no matter what happened to the control session itself + if self.sshproxy_session is not None: + self.sshproxy_session.stop_thread() + + return retval def home_exists(self): """\ hooks/post-receive -- python-x2go.git (Python X2Go Client API) This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "python-x2go.git" (Python X2Go Client API).