summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJeff Forcier <jeff@bitprophet.org>2013-09-20 13:45:18 -0700
committerJeff Forcier <jeff@bitprophet.org>2013-09-20 13:45:18 -0700
commit0355672721a08ffb5d1b283a85f125e2a67224c4 (patch)
tree5e0beedc7530b91867fbf05dede1b880f0c59422
parente6abab18eeb0b9f6425cd77c564ff59d19d39c98 (diff)
parentf7d74d03d9f1f6ec10b0f7df3061384afdb61b48 (diff)
Merge branch '1.10' into 1.11
Conflicts: NEWS
-rw-r--r--NEWS7
-rw-r--r--paramiko/packet.py12
2 files changed, 11 insertions, 8 deletions
diff --git a/NEWS b/NEWS
index 7365e4d7..7f576633 100644
--- a/NEWS
+++ b/NEWS
@@ -12,6 +12,13 @@ Issues noted as "Fabric #NN" can be found at https://github.com/fabric/fabric/.
Releases
========
+v1.10.3 (20th Sep 2013)
+-----------------------
+
+* #162: Clean up HMAC module import to avoid deadlocks in certain uses of
+ SSHClient. Thanks to Gernot Hillier for the catch & suggested
+ fix.
+
v1.11.0 (26th Jul 2013)
-----------------------
diff --git a/paramiko/packet.py b/paramiko/packet.py
index 38a6d4b5..be502e9b 100644
--- a/paramiko/packet.py
+++ b/paramiko/packet.py
@@ -33,17 +33,13 @@ from paramiko.ssh_exception import SSHException, ProxyCommandFailure
from paramiko.message import Message
-got_r_hmac = False
try:
- import r_hmac
- got_r_hmac = True
+ from r_hmac import HMAC
except ImportError:
- pass
+ from Crypto.Hash.HMAC import HMAC
+
def compute_hmac(key, message, digest_class):
- if got_r_hmac:
- return r_hmac.HMAC(key, message, digest_class).digest()
- from Crypto.Hash import HMAC
- return HMAC.HMAC(key, message, digest_class).digest()
+ return HMAC(key, message, digest_class).digest()
class NeedRekeyException (Exception):