opnsense-ports/lang/tauthon/files/patch-Modules_posixmodule.c
Franco Fichtner f61b9e831e */*: sync with upstream
Taken from: FreeBSD
2023-06-15 10:55:42 +02:00

31 lines
850 B
C

# Add closefrom(2) support
# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=242274
# https://bugs.python.org/issue38061
# TODO: Upstream
--- Modules/posixmodule.c.orig 2023-02-04 10:09:53 UTC
+++ Modules/posixmodule.c
@@ -6812,11 +6812,18 @@ posix_closerange(PyObject *self, PyObject *args)
return NULL;
Py_BEGIN_ALLOW_THREADS
_Py_BEGIN_SUPPRESS_IPH
- for (i = fd_from; i < fd_to; i++)
- if (_PyVerify_fd(i)) {
- errno = 0;
- close(i);
- }
+#ifdef __FreeBSD__
+ if (fd_to >= sysconf(_SC_OPEN_MAX)) {
+ closefrom(fd_from);
+ } else
+#endif
+ {
+ for (i = fd_from; i < fd_to; i++)
+ if (_PyVerify_fd(i)) {
+ errno = 0;
+ close(i);
+ }
+ }
_Py_END_SUPPRESS_IPH
Py_END_ALLOW_THREADS
Py_RETURN_NONE;