``F_SETPIPE_SZ`` constants, which allow to check and modify a pipe's size
respectively.
+.. versionchanged:: 3.11
+ On FreeBSD, the fcntl module exposes the ``F_DUP2FD`` and ``F_DUP2FD_CLOEXEC``
+ constants, which allow to duplicate a file descriptor, the latter setting
+ ``FD_CLOEXEC`` flag in addition.
+
The module defines the following functions:
* The Unicode database has been updated to version 14.0.0. (:issue:`45190`).
+fcntl
+-----
+
+* On FreeBSD, the `F_DUP2FD` and `F_DUP2FD_CLOEXEC` flags respectively
+ are supported, the former equals to ``dup2`` usage while the latter set
+ the ``FD_CLOEXEC`` flag in addition.
+
+
Optimizations
=============
--- /dev/null
+Adding `F_DUP2FD` and `F_DUP2FD_CLOEXEC` constants from FreeBSD into the fcntl module.
if (PyModule_AddIntMacro(m, F_NOCACHE)) return -1;
#endif
+/* FreeBSD specifics */
+#ifdef F_DUP2FD
+ if (PyModule_AddIntMacro(m, F_DUP2FD)) return -1;
+#endif
+#ifdef F_DUP2FD_CLOEXEC
+ if (PyModule_AddIntMacro(m, F_DUP2FD_CLOEXEC)) return -1;
+#endif
+
/* For F_{GET|SET}FL */
#ifdef FD_CLOEXEC
if (PyModule_AddIntMacro(m, FD_CLOEXEC)) return -1;