--- /usr/lib/mysql-workbench/modules/wb_admin_ssh.bak 2015-02-03 22:25:45.820467604 +0100 +++ /usr/lib/mysql-workbench/modules/wb_admin_ssh.py 2015-02-04 00:02:18.296003089 +0100 @@ -73,7 +73,10 @@ import threading OPEN_CHANNEL_TIMEOUT = 15 - def wba_open_channel(self, kind, dest_addr=None, src_addr=None, timeout = None): + def wba_open_channel(self, kind, dest_addr=None, src_addr=None, timeout=None, window_size=None, max_packet_size=None): + + log_info('Trying connect with timeout using paramiko version %s\n' % paramiko.__version__) + chan = None if not self.active: # don't bother trying to allocate a channel @@ -88,6 +91,11 @@ if (server_version_str2tuple(paramiko.__version__) <= (1, 14, 99)): m.add_int(self.window_size) m.add_int(self.max_packet_size) + else: + window_size = self._sanitize_window_size(window_size) + max_packet_size = self._sanitize_packet_size(max_packet_size) + m.add_int(window_size) + m.add_int(max_packet_size) if (kind == 'forwarded-tcpip') or (kind == 'direct-tcpip'): m.add_string(dest_addr[0]) m.add_int(dest_addr[1]) @@ -103,6 +111,8 @@ chan._set_transport(self) if (server_version_str2tuple(paramiko.__version__) <= (1, 14, 99)): chan._set_window(self.window_size, self.max_packet_size) + else: + chan._set_window(window_size, max_packet_size) finally: self.lock.release() self._send_user_message(m)