summaryrefslogtreecommitdiffstats
path: root/source/n/pssh/pssh-2.3.1-py3-non-blocking.patch
diff options
context:
space:
mode:
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.patch35
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'):
+