]> granicus.if.org Git - python/commitdiff
bpo-26835: Add file sealing constants to fcntl (GH-13694)
authorChristian Heimes <christian@python.org>
Fri, 31 May 2019 16:32:33 +0000 (18:32 +0200)
committerGitHub <noreply@github.com>
Fri, 31 May 2019 16:32:33 +0000 (18:32 +0200)
Co-authored-by: nanjekyejoannah <nanjekyejoannah@gmail.com>
Doc/library/fcntl.rst
Misc/NEWS.d/next/Library/2019-05-31-11-33-11.bpo-26835.xGbUX0.rst [new file with mode: 0644]
Modules/fcntlmodule.c

index 88112f6b7e545b79892cf6f83373de15a11306db..2db9674952d7b66baba19c02585f0b6e63b10614 100644 (file)
@@ -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 (file)
index 0000000..1c5ed97
--- /dev/null
@@ -0,0 +1 @@
+The fcntl module now contains file sealing constants for sealing of memfds.
index a938d9e88bf017425c803f2c8265f9fed74014e4..0fbf7876c3e207a2815ca497cc89830b1f982d21 100644 (file)
@@ -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;
 }