diff options
-rw-r--r-- | Doc/library/fcntl.rst | 4 | ||||
-rw-r--r-- | Misc/NEWS.d/next/Library/2019-05-31-11-33-11.bpo-26835.xGbUX0.rst | 1 | ||||
-rw-r--r-- | Modules/fcntlmodule.c | 10 |
3 files changed, 14 insertions, 1 deletions
diff --git a/Doc/library/fcntl.rst b/Doc/library/fcntl.rst index 88112f6..2db9674 100644 --- a/Doc/library/fcntl.rst +++ b/Doc/library/fcntl.rst @@ -28,6 +28,10 @@ descriptor. Operations in this module used to raise an :exc:`IOError` where they now raise an :exc:`OSError`. +.. versionchanged:: 3.8 + The fcntl module now contains ``F_ADD_SEALS``, ``F_GET_SEALS``, and + ``F_SEAL_*`` constants for sealing of :func:`os.memfd_create` file + descriptors. The module defines the following functions: diff --git a/Misc/NEWS.d/next/Library/2019-05-31-11-33-11.bpo-26835.xGbUX0.rst b/Misc/NEWS.d/next/Library/2019-05-31-11-33-11.bpo-26835.xGbUX0.rst new file mode 100644 index 0000000..1c5ed97 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2019-05-31-11-33-11.bpo-26835.xGbUX0.rst @@ -0,0 +1 @@ +The fcntl module now contains file sealing constants for sealing of memfds. diff --git a/Modules/fcntlmodule.c b/Modules/fcntlmodule.c index a938d9e..0fbf787 100644 --- a/Modules/fcntlmodule.c +++ b/Modules/fcntlmodule.c @@ -620,7 +620,15 @@ all_ins(PyObject* m) if (PyModule_AddIntMacro(m, I_PLINK)) return -1; if (PyModule_AddIntMacro(m, I_PUNLINK)) return -1; #endif - +#ifdef F_ADD_SEALS + /* Linux: file sealing for memfd_create() */ + if (PyModule_AddIntMacro(m, F_ADD_SEALS)) return -1; + if (PyModule_AddIntMacro(m, F_GET_SEALS)) return -1; + if (PyModule_AddIntMacro(m, F_SEAL_SEAL)) return -1; + if (PyModule_AddIntMacro(m, F_SEAL_SHRINK)) return -1; + if (PyModule_AddIntMacro(m, F_SEAL_GROW)) return -1; + if (PyModule_AddIntMacro(m, F_SEAL_WRITE)) return -1; +#endif return 0; } |