summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Forcier <jeff@bitprophet.org>2014-02-13 12:54:23 -0800
committerJeff Forcier <jeff@bitprophet.org>2014-02-13 12:54:23 -0800
commit244e09f57a6670fbdda9979882d81b1d7e40b75c (patch)
treead3974b73ab9149b696c125d47798f5db4c83704
parent8003c738ca3ea567bfec876bcbf3e7c6facae6a6 (diff)
downloadparamiko-244e09f57a6670fbdda9979882d81b1d7e40b75c.tar.gz
Slightly safer socket.error handling
-rw-r--r--paramiko/transport.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/paramiko/transport.py b/paramiko/transport.py
index 6aae0837..990c9d3c 100644
--- a/paramiko/transport.py
+++ b/paramiko/transport.py
@@ -1608,7 +1608,10 @@ class Transport (threading.Thread):
self.saved_exception = e
except socket.error, e:
if type(e.args) is tuple:
- emsg = '%s (%d)' % (e.args[1], e.args[0])
+ if e.args:
+ emsg = '%s (%d)' % (e.args[1], e.args[0])
+ else: # empty tuple, e.g. socket.timeout
+ emsg = str(e) or repr(e)
else:
emsg = e.args
self._log(ERROR, 'Socket exception: ' + emsg)