Merge pull request #270 from Zotil/encoding_timeout

timeout on exec_command
This commit is contained in:
Shengdun Hua
2022-02-20 21:18:18 +08:00
committed by GitHub
+11 -6
View File
@@ -427,15 +427,20 @@ class IndexHandler(MixinHandler, tornado.web.RequestHandler):
for command in commands:
try:
_, stdout, _ = ssh.exec_command(command, get_pty=True)
_, stdout, _ = ssh.exec_command(command,
get_pty=True,
timeout=1)
except paramiko.SSHException as exc:
logging.info(str(exc))
else:
data = stdout.read()
logging.debug('{!r} => {!r}'.format(command, data))
result = self.parse_encoding(data)
if result:
return result
try:
data = stdout.read()
logging.debug('{!r} => {!r}'.format(command, data))
result = self.parse_encoding(data)
if result:
return result
except socket.timeout:
pass
logging.warning('Could not detect the default encoding.')
return 'utf-8'