https://github.com/python/cpython/commit/69cf92fbca9bf51c70d06bb12329f881af6f4b65
commit: 69cf92fbca9bf51c70d06bb12329f881af6f4b65
branch: 3.13
author: Miss Islington (bot) <[email protected]>
committer: freakboy3742 <[email protected]>
date: 2024-08-16T16:07:27+08:00
summary:

[3.13] gh-116622: Don't expose `FICLONE` ioctl on Android (GH-122522) (#122539)

gh-116622: Don't expose `FICLONE` ioctl on Android (GH-122522)

Don't expose `FICLONE` ioctl on Android

(cherry picked from commit 06656e259bc9b2c3cf8a23bdc6e4acb052c56e1f)

Co-authored-by: Malcolm Smith <[email protected]>
Co-authored-by: Russell Keith-Magee <[email protected]>

files:
A Misc/NEWS.d/next/Library/2024-07-31-15-08-42.gh-issue-116622.aKxIQA.rst
M Modules/fcntlmodule.c

diff --git 
a/Misc/NEWS.d/next/Library/2024-07-31-15-08-42.gh-issue-116622.aKxIQA.rst 
b/Misc/NEWS.d/next/Library/2024-07-31-15-08-42.gh-issue-116622.aKxIQA.rst
new file mode 100644
index 00000000000000..fc65b4d973b27d
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2024-07-31-15-08-42.gh-issue-116622.aKxIQA.rst
@@ -0,0 +1,2 @@
+On Android, the ``FICLONE`` and ``FICLONERANGE`` constants are no longer
+exposed by :mod:`fcntl`, as these ioctls are blocked by SELinux.
diff --git a/Modules/fcntlmodule.c b/Modules/fcntlmodule.c
index b6eeec2c66f6e5..17ecf4c6731ff7 100644
--- a/Modules/fcntlmodule.c
+++ b/Modules/fcntlmodule.c
@@ -580,12 +580,17 @@ all_ins(PyObject* m)
 #ifdef F_GETPIPE_SZ
     if (PyModule_AddIntMacro(m, F_GETPIPE_SZ)) return -1;
 #endif
+
+/* On Android, FICLONE is blocked by SELinux. */
+#ifndef __ANDROID__
 #ifdef FICLONE
     if (PyModule_AddIntMacro(m, FICLONE)) return -1;
 #endif
 #ifdef FICLONERANGE
     if (PyModule_AddIntMacro(m, FICLONERANGE)) return -1;
 #endif
+#endif
+
 #ifdef F_GETOWN_EX
     // since Linux 2.6.32
     if (PyModule_AddIntMacro(m, F_GETOWN_EX)) return -1;

_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/python-checkins.python.org/
Member address: [email protected]

Reply via email to