summaryrefslogtreecommitdiffstats
path: root/Modules
diff options
context:
space:
mode:
authorKumar Aditya <59607654+kumaraditya303@users.noreply.github.com>2022-07-28 10:24:36 (GMT)
committerGitHub <noreply@github.com>2022-07-28 10:24:36 (GMT)
commit7813d976aeaabea0a232f3c782e4fc25fe93a27d (patch)
tree729c5458843ad1c4c8cd053c0c108e5fe67ce1ba /Modules
parent33efd7f7a3e3af172c93675d13d71916a3614b86 (diff)
downloadcpython-7813d976aeaabea0a232f3c782e4fc25fe93a27d.zip
cpython-7813d976aeaabea0a232f3c782e4fc25fe93a27d.tar.gz
cpython-7813d976aeaabea0a232f3c782e4fc25fe93a27d.tar.bz2
[3.11] GH-93899: fix checks for eventfd flags (GH-95170). (#95342)
(cherry picked from commit 4dd099bafff14639ef5d2185965016d8f253353f) Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
Diffstat (limited to 'Modules')
-rw-r--r--Modules/clinic/posixmodule.c.h14
-rw-r--r--Modules/posixmodule.c10
2 files changed, 14 insertions, 10 deletions
diff --git a/Modules/clinic/posixmodule.c.h b/Modules/clinic/posixmodule.c.h
index d62b09e..aaf3bf3 100644
--- a/Modules/clinic/posixmodule.c.h
+++ b/Modules/clinic/posixmodule.c.h
@@ -7887,7 +7887,7 @@ exit:
#endif /* defined(HAVE_MEMFD_CREATE) */
-#if defined(HAVE_EVENTFD)
+#if (defined(HAVE_EVENTFD) && defined(EFD_CLOEXEC))
PyDoc_STRVAR(os_eventfd__doc__,
"eventfd($module, /, initval, flags=EFD_CLOEXEC)\n"
@@ -7933,9 +7933,9 @@ exit:
return return_value;
}
-#endif /* defined(HAVE_EVENTFD) */
+#endif /* (defined(HAVE_EVENTFD) && defined(EFD_CLOEXEC)) */
-#if defined(HAVE_EVENTFD)
+#if (defined(HAVE_EVENTFD) && defined(EFD_CLOEXEC))
PyDoc_STRVAR(os_eventfd_read__doc__,
"eventfd_read($module, /, fd)\n"
@@ -7971,9 +7971,9 @@ exit:
return return_value;
}
-#endif /* defined(HAVE_EVENTFD) */
+#endif /* (defined(HAVE_EVENTFD) && defined(EFD_CLOEXEC)) */
-#if defined(HAVE_EVENTFD)
+#if (defined(HAVE_EVENTFD) && defined(EFD_CLOEXEC))
PyDoc_STRVAR(os_eventfd_write__doc__,
"eventfd_write($module, /, fd, value)\n"
@@ -8013,7 +8013,7 @@ exit:
return return_value;
}
-#endif /* defined(HAVE_EVENTFD) */
+#endif /* (defined(HAVE_EVENTFD) && defined(EFD_CLOEXEC)) */
#if (defined(TERMSIZE_USE_CONIO) || defined(TERMSIZE_USE_IOCTL))
@@ -9370,4 +9370,4 @@ exit:
#ifndef OS_WAITSTATUS_TO_EXITCODE_METHODDEF
#define OS_WAITSTATUS_TO_EXITCODE_METHODDEF
#endif /* !defined(OS_WAITSTATUS_TO_EXITCODE_METHODDEF) */
-/*[clinic end generated code: output=6150bcc25f5e4bc7 input=a9049054013a1b77]*/
+/*[clinic end generated code: output=2a53748bcf001a3f input=a9049054013a1b77]*/
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index d7cac2b..f97013f 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -13134,7 +13134,7 @@ os_memfd_create_impl(PyObject *module, PyObject *name, unsigned int flags)
}
#endif
-#ifdef HAVE_EVENTFD
+#if defined(HAVE_EVENTFD) && defined(EFD_CLOEXEC)
/*[clinic input]
os.eventfd
@@ -13205,7 +13205,7 @@ os_eventfd_write_impl(PyObject *module, int fd, unsigned long long value)
}
Py_RETURN_NONE;
}
-#endif /* HAVE_EVENTFD */
+#endif /* HAVE_EVENTFD && EFD_CLOEXEC */
/* Terminal size querying */
@@ -15505,11 +15505,15 @@ all_ins(PyObject *m)
#endif
#endif /* HAVE_MEMFD_CREATE */
-#ifdef HAVE_EVENTFD
+#if defined(HAVE_EVENTFD) && defined(EFD_CLOEXEC)
if (PyModule_AddIntMacro(m, EFD_CLOEXEC)) return -1;
+#ifdef EFD_NONBLOCK
if (PyModule_AddIntMacro(m, EFD_NONBLOCK)) return -1;
+#endif
+#ifdef EFD_SEMAPHORE
if (PyModule_AddIntMacro(m, EFD_SEMAPHORE)) return -1;
#endif
+#endif /* HAVE_EVENTFD && EFD_CLOEXEC */
#if defined(__APPLE__)
if (PyModule_AddIntConstant(m, "_COPYFILE_DATA", COPYFILE_DATA)) return -1;