summaryrefslogtreecommitdiff
path: root/dev-db/mysql-workbench/files/mysql-workbench-6.2.3-paramiko.patch
blob: ad131b781ace63ce9aa0b98e2a4365651b8a99e5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
Last-Update: 2014-10-07
Forwarded: not-needed
From: Alfredo Kojima
Bug-Upstream: http://bugs.mysql.com/bug.php?id=74223
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=763971
Description: fix connectivity through SSH tunnel.

=== modified file 'plugins/wb.admin/backend/wb_admin_ssh.py'
--- a/plugins/wb.admin/backend/wb_admin_ssh.py
+++ b/plugins/wb.admin/backend/wb_admin_ssh.py
@@ -84,10 +84,14 @@
             m = Message()
             m.add_byte(chr(MSG_CHANNEL_OPEN))
             m.add_string(kind)
             m.add_int(chanid)
-            m.add_int(self.window_size)
-            m.add_int(self.max_packet_size)
+            if server_version_str2tuple(paramiko.__version__) < (1, 15, 0):
+                m.add_int(self.window_size)
+                m.add_int(self.max_packet_size)
+            else:
+                m.add_int(self.default_window_size)
+                m.add_int(self.default_max_packet_size)
             if (kind == 'forwarded-tcpip') or (kind == 'direct-tcpip'):
                 m.add_string(dest_addr[0])
                 m.add_int(dest_addr[1])
                 m.add_string(src_addr[0])
@@ -99,9 +103,12 @@
             self._channels.put(chanid, chan)
             self.channel_events[chanid] = event = threading.Event()
             self.channels_seen[chanid] = True
             chan._set_transport(self)
-            chan._set_window(self.window_size, self.max_packet_size)
+            if server_version_str2tuple(paramiko.__version__) < (1, 15, 0):
+                chan._set_window(self.window_size, self.max_packet_size)
+            else:
+                chan._set_window(self.default_window_size, self.default_max_packet_size)
         finally:
             self.lock.release()
         self._send_user_message(m)
         ts = time.time() + OPEN_CHANNEL_TIMEOUT if (timeout is None) else timeout
@@ -669,8 +676,9 @@
 
         read_timeout = 10
 
         if self.client is not None:
+            chan = None
             transport = self.client.get_transport()
             try:
                 spawn_process = False
                 if 'nohup' in cmd: