diff options
Diffstat (limited to 'paramiko/util.py')
-rw-r--r-- | paramiko/util.py | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/paramiko/util.py b/paramiko/util.py index 0d6a534..f4bfbec 100644 --- a/paramiko/util.py +++ b/paramiko/util.py @@ -24,6 +24,7 @@ from __future__ import generators import array from binascii import hexlify, unhexlify +import errno import sys import struct import traceback @@ -270,6 +271,14 @@ def get_logger(name): l.addFilter(_pfilter) return l +def retry_on_signal(function): + """Retries function until it doesn't raise an EINTR error""" + while True: + try: + return function() + except EnvironmentError, e: + if e.errno != errno.EINTR: + raise class Counter (object): """Stateful counter for CTR mode crypto""" |