[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250312212148.274205-5-ryan.lee@canonical.com>
Date: Wed, 12 Mar 2025 14:21:44 -0700
From: Ryan Lee <ryan.lee@...onical.com>
To: linux-fsdevel@...r.kernel.org,
linux-kernel@...r.kernel.org,
apparmor@...ts.ubuntu.com,
linux-security-module@...r.kernel.org,
selinux@...r.kernel.org
Cc: Ryan Lee <ryan.lee@...onical.com>,
Alexander Viro <viro@...iv.linux.org.uk>,
Christian Brauner <brauner@...nel.org>,
Jan Kara <jack@...e.cz>,
John Johansen <john.johansen@...onical.com>,
Paul Moore <paul@...l-moore.com>,
James Morris <jmorris@...ei.org>,
"Serge E. Hallyn" <serge@...lyn.com>,
Mickaël Salaün <mic@...ikod.net>,
Günther Noack <gnoack@...gle.com>,
Stephen Smalley <stephen.smalley.work@...il.com>,
Ondrej Mosnacek <omosnace@...hat.com>,
Casey Schaufler <casey@...aufler-ca.com>,
Kentaro Takeda <takedakn@...data.co.jp>,
Tetsuo Handa <penguin-kernel@...ove.SAKURA.ne.jp>
Subject: [RFC PATCH 4/6] selinux: explicitly skip mediation of O_PATH file descriptors
Now that O_PATH fds are being passed to the file_open hook,
unconditionally skip mediation of them to preserve existing behavior.
Signed-off-by: Ryan Lee <ryan.lee@...onical.com>
---
security/selinux/hooks.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c
index 07f71e6c2660..886ee9381507 100644
--- a/security/selinux/hooks.c
+++ b/security/selinux/hooks.c
@@ -4009,6 +4009,11 @@ static int selinux_file_open(struct file *file)
*/
fsec->isid = isec->sid;
fsec->pseqno = avc_policy_seqno();
+
+ /* Preserve the behavior of O_PATH fd creation not being mediated */
+ if (file->f_flags & O_PATH)
+ return 0;
+
/*
* Since the inode label or policy seqno may have changed
* between the selinux_inode_permission check and the saving
--
2.43.0
base-kernel: v6.14-rc6
Powered by blists - more mailing lists