From 02c56e7a34b8299c2e9df40a4cf6381e5417a112 Mon Sep 17 00:00:00 2001 From: Sheng Date: Fri, 8 Dec 2017 15:43:19 +0800 Subject: [PATCH] Generated friendly error message for some exception types --- main.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/main.py b/main.py index 8009398..ae95f73 100644 --- a/main.py +++ b/main.py @@ -1,6 +1,7 @@ import io import logging import os.path +import socket import traceback import uuid import weakref @@ -186,7 +187,12 @@ class IndexHandler(tornado.web.RequestHandler): args = self.get_args() dst_addr = '{}:{}'.format(*args[:2]) logging.info('Connecting to {}'.format(dst_addr)) - ssh.connect(*args) + try: + ssh.connect(*args, timeout=6) + except socket.error: + raise ValueError('Unable to connect to {}'.format(dst_addr)) + except paramiko.BadAuthenticationType: + raise ValueError('Authentication failed.') chan = ssh.invoke_shell(term='xterm') chan.setblocking(0) worker = Worker(ssh, chan, dst_addr)