[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#780130: unblock (pre-approval): python-x2go/0.5.0.1-3



Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Please consider unblocking planned upload of package python-x2go.

I skimmed through python-x2go upstream Git and considered the below
patches important enough to attempt for an unblock request.

+  * debian/patches:
+    + Add 0003_use-correct-loglevel-WARN.patch. Use the proper
+      log.loglevel_WARN expression (instead of undefined
+      log.loglevel_WARNING). Upstream patch needed
+      rebasing and a modification to apply correctly. (Closes: #780128).

-> Cherry-picked from upstream. Prevent python-x2go from throwing
exceptions due to flaw in log message calls.

+    + Update 0001_catch-connection-exception-during-session-startup.patch.
+      Fix expression errors in two Python exceptions. (Closes: #780125).

-> I should have paid more attention here, in the first place. The issue
got fixed upstream way back already, but I forgot to provide the fix in
Debian (until today).

+    + Add 0005_fix-password-auth-if-keys-have-passphrase.patch. Fix password
+      authentication in pyhoca-cli if people have default SSH keys locked with
+      a passphrase. (Closes: #780127).

-> Nasty issue if people use pyhoca-cli (X2Go command line client) and
have locked SSH private keys. PyHoca-CLI won't stop trying to unlock the
SSH key instead of using the interactively provide password for normal
username/password SSH authentication.


light+love,
Mike


(include/attach the debdiff against the package in testing)

unblock python-x2go/0.5.0.1-3

-- System Information:
Debian Release: 8.0
  APT prefers stable
  APT policy: (990, 'stable'), (500, 'testing-updates'), (500, 'testing-proposed-updates'), (500, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.16.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
diff -Nru python-x2go-0.5.0.1/debian/changelog python-x2go-0.5.0.1/debian/changelog
--- python-x2go-0.5.0.1/debian/changelog	2014-11-27 12:19:50.000000000 +0100
+++ python-x2go-0.5.0.1/debian/changelog	2015-03-09 16:04:24.000000000 +0100
@@ -1,3 +1,18 @@
+python-x2go (0.5.0.1-3) unstable; urgency=medium
+
+  * debian/patches:
+    + Add 0003_use-correct-loglevel-WARN.patch. Use the proper
+      log.loglevel_WARN expression (instead of undefined
+      log.loglevel_WARNING). Upstream patch needed
+      rebasing and a modification to apply correctly. (Closes: #780128).
+    + Update 0001_catch-connection-exception-during-session-startup.patch.
+      Fix expression errors in two Python exceptions. (Closes: #780125).
+    + Add 0005_fix-password-auth-if-keys-have-passphrase.patch. Fix password
+      authentication in pyhoca-cli if people have default SSH keys locked with
+      a passphrase. (Closes: #780127).
+
+ -- Mike Gabriel <sunweaver@debian.org>  Mon, 09 Mar 2015 15:55:42 +0100
+
 python-x2go (0.5.0.1-2) unstable; urgency=medium
 
   * debian/patches:
diff -Nru python-x2go-0.5.0.1/debian/patches/0001_catch-connection-exception-during-session-startup.patch python-x2go-0.5.0.1/debian/patches/0001_catch-connection-exception-during-session-startup.patch
--- python-x2go-0.5.0.1/debian/patches/0001_catch-connection-exception-during-session-startup.patch	2014-11-27 12:14:46.000000000 +0100
+++ python-x2go-0.5.0.1/debian/patches/0001_catch-connection-exception-during-session-startup.patch	2015-03-09 16:03:47.000000000 +0100
@@ -17,7 +17,7 @@
 -                    self.has_terminal_session() and self.terminal_session.run_command(env=self.session_environment)
 +                    try:
 +                        self.has_terminal_session() and self.terminal_session.run_command(env=self.session_environment)
-+                    except x2go_exceptions.X2GoControlSessionException:
++                    except x2go_exceptions.X2GoControlSessionException, e:
 +                        self.logger('%s' % str(e), loglevel=log.loglevel_ERROR)
 +                        self.HOOK_on_control_session_death()
 +                        self._X2GoSession__disconnect()
@@ -32,7 +32,7 @@
 -                self.terminal_session.run_command(env=self.session_environment)
 +                try:
 +                    self.terminal_session.run_command(env=self.session_environment)
-+                except x2go_exceptions.X2GoControlSessionException:
++                except x2go_exceptions.X2GoControlSessionException, e:
 +                    self.logger('%s' % str(e), loglevel=log.loglevel_ERROR)
 +                    self.HOOK_on_control_session_death()
 +                    self._X2GoSession__disconnect()
diff -Nru python-x2go-0.5.0.1/debian/patches/0003_use-correct-loglevel-WARN.patch python-x2go-0.5.0.1/debian/patches/0003_use-correct-loglevel-WARN.patch
--- python-x2go-0.5.0.1/debian/patches/0003_use-correct-loglevel-WARN.patch	1970-01-01 01:00:00.000000000 +0100
+++ python-x2go-0.5.0.1/debian/patches/0003_use-correct-loglevel-WARN.patch	2015-03-09 16:03:47.000000000 +0100
@@ -0,0 +1,54 @@
+From: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
+Date: Thu, 26 Feb 2015 09:17:55 +0000 (+0100)
+Subject: No such constant loglevel_WARNING, must be logolevel_WARN.
+X-Git-Url: http://code.x2go.org/gitweb?p=python-x2go.git;a=commitdiff_plain;h=db715ac943ac859edff198112055f0801f57843e
+
+No such constant loglevel_WARNING, must be logolevel_WARN.
+
+Debian package maintainer: Patched needed rebasing and modification to apply cleanly.
+---
+
+#diff --git a/debian/changelog b/debian/changelog
+#index f83f094..f3fbe01 100644
+#--- a/debian/changelog
+#+++ b/debian/changelog
+#@@ -1,7 +1,7 @@
+# python-x2go (0.5.0.4-0x2go1) UNRELEASED; urgency=medium
+# 
+#   * New upstream version (0.5.0.4):
+#-    - Continue development...
+#+    - No such constant loglevel_WARNING, must be logolevel_WARN.
+# 
+#  -- Mike Gabriel <mike.gabriel@das-netzwerkteam.de>  Thu, 26 Feb 2015 10:16:25 +0100
+# 
+--- a/x2go/backends/control/plain.py
++++ b/x2go/backends/control/plain.py
+@@ -1015,7 +1015,7 @@
+                                                            look_for_keys=False)
+                             except TypeError:
+                                 if _twofactorauth and password and passphrase and password != passphrase:
+-                                    self.logger('your version of Paramiko/SSH does not support authentication workflows which require SSH key decryption in combination with two-factor authentication', loglevel=log.loglevel_WARNING)
++                                    self.logger('your version of Paramiko/SSH does not support authentication workflows which require SSH key decryption in combination with two-factor authentication', loglevel=log.loglevel_WARN)
+                                 paramiko.SSHClient.connect(self, _hostname, port=port, username=username, password=password, pkey=pkey,
+                                                            key_filename=key_filename, timeout=timeout, allow_agent=False,
+                                                            look_for_keys=False)
+@@ -1027,7 +1027,7 @@
+                                                            look_for_keys=look_for_keys)
+                             except TypeError:
+                                 if _twofactorauth and password and passphrase and password != passphrase:
+-                                    self.logger('your version of Paramiko/SSH does not support authentication workflows which require SSH key decryption in combination with two-factor authentication', loglevel=log.loglevel_WARNING)
++                                    self.logger('your version of Paramiko/SSH does not support authentication workflows which require SSH key decryption in combination with two-factor authentication', loglevel=log.loglevel_WARN)
+                                 paramiko.SSHClient.connect(self, _hostname, port=port, username=username, password=password, pkey=None,
+                                                            key_filename=None, timeout=timeout, allow_agent=allow_agent,
+                                                            look_for_keys=look_for_keys)
+--- a/x2go/backends/terminal/plain.py
++++ b/x2go/backends/terminal/plain.py
+@@ -568,7 +568,7 @@
+                 ###
+                 ### ARTSD AUDIO
+                 ###
+-                self.logger('the ArtsD sound server (as in KDE3) is obsolete and will not be supported by Python X2Go...', loglevel=log.loglevel_WARNING)
++                self.logger('the ArtsD sound server (as in KDE3) is obsolete and will not be supported by Python X2Go...', loglevel=log.loglevel_WARN)
+ 
+             elif self.params.snd_system == 'esd':
+                 ###
diff -Nru python-x2go-0.5.0.1/debian/patches/0004_fix-password-auth-if-keys-have-passphrase.patch python-x2go-0.5.0.1/debian/patches/0004_fix-password-auth-if-keys-have-passphrase.patch
--- python-x2go-0.5.0.1/debian/patches/0004_fix-password-auth-if-keys-have-passphrase.patch	1970-01-01 01:00:00.000000000 +0100
+++ python-x2go-0.5.0.1/debian/patches/0004_fix-password-auth-if-keys-have-passphrase.patch	2015-03-09 16:03:47.000000000 +0100
@@ -0,0 +1,37 @@
+From: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
+Date: Wed, 17 Dec 2014 15:30:51 +0000 (+0100)
+Subject: Only sync password and passphrase if we do not enforce password authentication.
+X-Git-Tag: 0.5.0.3~5
+X-Git-Url: http://code.x2go.org/gitweb?p=python-x2go.git;a=commitdiff_plain;h=a74403b987b943b23cc76955766ba5e59202e359
+
+Only sync password and passphrase if we do not enforce password authentication.
+---
+
+#diff --git a/debian/changelog b/debian/changelog
+#index d197cfc..03fcf56 100644
+#--- a/debian/changelog
+#+++ b/debian/changelog
+#@@ -3,6 +3,8 @@ python-x2go (0.5.0.3-0x2go1) UNRELEASED; urgency=medium
+#   * New upstream version (0.5.0.3):
+#     - Fix catching control session exceptions in X2GoSession class.
+#     - Catch EOFError in x2go_forward_tunnel_handle().
+#+    - Only sync password and passphrase if we do not enforce password
+#+      authentication.
+# 
+#  -- Mike Gabriel <mike.gabriel@das-netzwerkteam.de>  Thu, 27 Nov 2014 13:15:44 +0100
+# 
+diff --git a/x2go/backends/control/plain.py b/x2go/backends/control/plain.py
+index ea5b6e1..5915fb2 100644
+--- a/x2go/backends/control/plain.py
++++ b/x2go/backends/control/plain.py
+@@ -909,7 +909,7 @@ class X2GoControlSession(paramiko.SSHClient):
+             pkey = None
+ 
+         _twofactorauth = False
+-        if password and (passphrase is None): passphrase = password
++        if password and (passphrase is None) and not force_password_auth: passphrase = password
+ 
+         if use_sshproxy and sshproxy_host and sshproxy_user:
+             try:
+
+
diff -Nru python-x2go-0.5.0.1/debian/patches/series python-x2go-0.5.0.1/debian/patches/series
--- python-x2go-0.5.0.1/debian/patches/series	2014-11-27 12:15:43.000000000 +0100
+++ python-x2go-0.5.0.1/debian/patches/series	2015-03-09 16:03:47.000000000 +0100
@@ -1,2 +1,4 @@
 0001_catch-connection-exception-during-session-startup.patch
 0002_fix-desktop-sharing.patch
+0003_use-correct-loglevel-WARN.patch
+0004_fix-password-auth-if-keys-have-passphrase.patch

Reply to: