diff options
Diffstat (limited to 'source/n/pssh/pssh-2.3.1-py3-non-blocking.patch')
-rw-r--r-- | source/n/pssh/pssh-2.3.1-py3-non-blocking.patch | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/source/n/pssh/pssh-2.3.1-py3-non-blocking.patch b/source/n/pssh/pssh-2.3.1-py3-non-blocking.patch new file mode 100644 index 000000000..bcf4b4fd9 --- /dev/null +++ b/source/n/pssh/pssh-2.3.1-py3-non-blocking.patch @@ -0,0 +1,35 @@ +# https://github.com/nplanel/parallel-ssh/commit/ee379dc5c69e4e0f62f92fb48f9a9ce6af0b2ac4.patch +From ee379dc5c69e4e0f62f92fb48f9a9ce6af0b2ac4 Mon Sep 17 00:00:00 2001 +From: Nicolas PLANEL <nplanel@gmail.com> +Date: Fri, 23 Oct 2015 01:20:25 +1100 +Subject: [PATCH] fixup : wakeup_writefd must be non-blocking + +wakeup_writefd should be non-blocking as signal.set_wakeup_fd() +API request it. + +"ValueError: the fd 4 must be in non-blocking mode" +--- + psshlib/manager.py | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/psshlib/manager.py b/psshlib/manager.py +index 7dbf4e3..db35e76 100644 +--- a/psshlib/manager.py ++++ b/psshlib/manager.py +@@ -2,6 +2,7 @@ + + from errno import EINTR + import os ++import fcntl + import select + import signal + import sys +@@ -209,6 +210,7 @@ def __init__(self): + + # Setup the wakeup file descriptor to avoid hanging on lost signals. + wakeup_readfd, wakeup_writefd = os.pipe() ++ fcntl.fcntl(wakeup_writefd, fcntl.F_SETFL, os.O_NONBLOCK) + self.register_read(wakeup_readfd, self.wakeup_handler) + # TODO: remove test when we stop supporting Python <2.5 + if hasattr(signal, 'set_wakeup_fd'): + |