From 76bbbfd67b14ae8f6541ba1fc321f27f359362c6 Mon Sep 17 00:00:00 2001 From: Avery Pennarun Date: Fri, 1 Oct 2010 10:34:20 -0700 Subject: [PATCH] Catch the exception thrown when ssh can't connect. Easiest test: give it an invalid hostname. Reported by Chetan Kunte. --- client.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/client.py b/client.py index dd29909..6e4eca6 100644 --- a/client.py +++ b/client.py @@ -100,7 +100,13 @@ def _main(listener, fw, use_server, remotename, python, seed_hosts, auto_nets): else: helpers.logprefix = 'client: ' debug1('connecting to server...\n') - (serverproc, serversock) = ssh.connect(remotename, python) + try: + (serverproc, serversock) = ssh.connect(remotename, python) + except socket.error, e: + if e.errno == errno.EPIPE: + raise Fatal("failed to establish ssh session") + else: + raise mux = Mux(serversock, serversock) handlers.append(mux)