Merge "Change ssh_utils parameter to correctly send keepalive packets" into stable/rocky

This commit is contained in:
Zuul 2019-01-10 22:34:27 +00:00 committed by Gerrit Code Review
commit 89ecc48698
1 changed files with 0 additions and 8 deletions

View File

@ -152,16 +152,8 @@ class SSHPool(pools.Pool):
look_for_keys=look_for_keys,
timeout=self.conn_timeout,
banner_timeout=self.conn_timeout)
# Paramiko by default sets the socket timeout to 0.1 seconds,
# ignoring what we set through the sshclient. This doesn't help for
# keeping long lived connections. Hence we have to bypass it, by
# overriding it after the transport is initialized. We are setting
# the sockettimeout to None and setting a keepalive packet so that,
# the server will keep the connection open. All that does is send
# a keepalive packet every ssh_conn_timeout seconds.
if self.conn_timeout:
transport = ssh.get_transport()
transport.sock.settimeout(None)
transport.set_keepalive(self.conn_timeout)
return ssh
except Exception as e: