summaryrefslogtreecommitdiffstats
path: root/external_libs/python/zmq/eventloop/minitornado/platform/windows.py
diff options
context:
space:
mode:
authorDan Klein <danklei@cisco.com>2015-08-24 17:28:17 +0300
committerDan Klein <danklei@cisco.com>2015-08-24 17:28:17 +0300
commit7d3be8c612e295820649779335288c197b80ccb2 (patch)
tree78e9636bc8780dedc919c30378a621f425e1cbfc /external_libs/python/zmq/eventloop/minitornado/platform/windows.py
parentdab741a80699f86e86c91718872a052cca9bbb25 (diff)
Changes location of console and fixed dependencies
Diffstat (limited to 'external_libs/python/zmq/eventloop/minitornado/platform/windows.py')
-rw-r--r--external_libs/python/zmq/eventloop/minitornado/platform/windows.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/external_libs/python/zmq/eventloop/minitornado/platform/windows.py b/external_libs/python/zmq/eventloop/minitornado/platform/windows.py
new file mode 100644
index 00000000..817bdca1
--- /dev/null
+++ b/external_libs/python/zmq/eventloop/minitornado/platform/windows.py
@@ -0,0 +1,20 @@
+# NOTE: win32 support is currently experimental, and not recommended
+# for production use.
+
+
+from __future__ import absolute_import, division, print_function, with_statement
+import ctypes
+import ctypes.wintypes
+
+# See: http://msdn.microsoft.com/en-us/library/ms724935(VS.85).aspx
+SetHandleInformation = ctypes.windll.kernel32.SetHandleInformation
+SetHandleInformation.argtypes = (ctypes.wintypes.HANDLE, ctypes.wintypes.DWORD, ctypes.wintypes.DWORD)
+SetHandleInformation.restype = ctypes.wintypes.BOOL
+
+HANDLE_FLAG_INHERIT = 0x00000001
+
+
+def set_close_exec(fd):
+ success = SetHandleInformation(fd, HANDLE_FLAG_INHERIT, 0)
+ if not success:
+ raise ctypes.GetLastError()