[ovs-dev] [PATCH V3 04/21] python tests: Register signal handlers only on supported types on Windows

Paul Boca pboca at cloudbasesolutions.com
Thu Jun 23 11:17:01 UTC 2016


SIGHUP and SIGALRM are not available on Windows.

Signed-off-by: Paul-Daniel Boca <pboca at cloudbasesolutions.com>
---
V2: Fixed Python function inet_open_active, treat WSAEWOULDBLOCK error as
    EINPROGRESS on Windows
V3: No changes
---
 python/ovs/fatal_signal.py | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/python/ovs/fatal_signal.py b/python/ovs/fatal_signal.py
index 7308039..5b90559 100644
--- a/python/ovs/fatal_signal.py
+++ b/python/ovs/fatal_signal.py
@@ -15,6 +15,7 @@
 import atexit
 import os
 import signal
+import sys
 
 import ovs.vlog
 
@@ -128,9 +129,13 @@ def _init():
     global _inited
     if not _inited:
         _inited = True
-
-        for signr in (signal.SIGTERM, signal.SIGINT,
-                      signal.SIGHUP, signal.SIGALRM):
-            if signal.getsignal(signr) == signal.SIG_DFL:
-                signal.signal(signr, _signal_handler)
+        if sys.platform == "win32":
+            for signr in (signal.SIGTERM, signal.SIGINT):
+                if signal.getsignal(signr) == signal.SIG_DFL:
+                    signal.signal(signr, _signal_handler)
+        else:
+            for signr in (signal.SIGTERM, signal.SIGINT,
+                          signal.SIGHUP, signal.SIGALRM):
+                if signal.getsignal(signr) == signal.SIG_DFL:
+                    signal.signal(signr, _signal_handler)
         atexit.register(_atexit_handler)
-- 
2.7.2.windows.1



More information about the dev mailing list