[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1457536687-32794-2-git-send-email-seth.forshee@canonical.com>
Date: Wed, 9 Mar 2016 09:18:06 -0600
From: Seth Forshee <seth.forshee@...onical.com>
To: "Eric W. Biederman" <ebiederm@...ssion.com>,
Alexander Viro <viro@...iv.linux.org.uk>
Cc: "Serge E. Hallyn" <serge.hallyn@...ntu.com>,
linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org,
Seth Forshee <seth.forshee@...onical.com>
Subject: [PATCH 1/2] fs: Allow bind mounts with locked children on permaenetly empty directories
Forbidding a bind mount due to a locked child on a permanently
empty directory provides no security benefit since the
directory cannot contain any contents which have been overmounted
for security reasons.
Cc: stable@...r.kernel.org # v4.1+
Signed-off-by: Seth Forshee <seth.forshee@...onical.com>
---
fs/namespace.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/fs/namespace.c b/fs/namespace.c
index 4fb1691b4355..930f5557b1d1 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -2065,6 +2065,8 @@ static bool has_locked_children(struct mount *mnt, struct dentry *dentry)
list_for_each_entry(child, &mnt->mnt_mounts, mnt_child) {
if (!is_subdir(child->mnt_mountpoint, dentry))
continue;
+ if (is_empty_dir_inode(child->mnt_mountpoint->d_inode))
+ continue;
if (child->mnt.mnt_flags & MNT_LOCKED)
return true;
--
1.9.1
Powered by blists - more mailing lists