Skip to content

Commit

Permalink
mnt: Fix fs_fully_visible to verify the root directory is visible
Browse files Browse the repository at this point in the history
This fixes a dumb bug in fs_fully_visible that allows proc or sys to
be mounted if there is a bind mount of part of /proc/ or /sys/ visible.

Cc: [email protected]
Reported-by: Eric Windisch <[email protected]>
Signed-off-by: "Eric W. Biederman" <[email protected]>
  • Loading branch information
ebiederm committed May 9, 2015
1 parent b787f68 commit 7e96c1b
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions fs/namespace.c
Original file line number Diff line number Diff line change
Expand Up @@ -3179,6 +3179,12 @@ bool fs_fully_visible(struct file_system_type *type)
if (mnt->mnt.mnt_sb->s_type != type)
continue;

/* This mount is not fully visible if it's root directory
* is not the root directory of the filesystem.
*/
if (mnt->mnt.mnt_root != mnt->mnt.mnt_sb->s_root)
continue;

/* This mount is not fully visible if there are any child mounts
* that cover anything except for empty directories.
*/
Expand Down

0 comments on commit 7e96c1b

Please sign in to comment.