diff options
Diffstat (limited to 'fs/proc')
| -rw-r--r-- | fs/proc/root.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/proc/root.c b/fs/proc/root.c index e0a790da726d..87dbcbef7fe4 100644 --- a/fs/proc/root.c +++ b/fs/proc/root.c | |||
| @@ -110,7 +110,11 @@ static struct dentry *proc_mount(struct file_system_type *fs_type, | |||
| 110 | ns = task_active_pid_ns(current); | 110 | ns = task_active_pid_ns(current); |
| 111 | options = data; | 111 | options = data; |
| 112 | 112 | ||
| 113 | if (!current_user_ns()->may_mount_proc) | 113 | if (!capable(CAP_SYS_ADMIN) && !fs_fully_visible(fs_type)) |
| 114 | return ERR_PTR(-EPERM); | ||
| 115 | |||
| 116 | /* Does the mounter have privilege over the pid namespace? */ | ||
| 117 | if (!ns_capable(ns->user_ns, CAP_SYS_ADMIN)) | ||
| 114 | return ERR_PTR(-EPERM); | 118 | return ERR_PTR(-EPERM); |
| 115 | } | 119 | } |
| 116 | 120 | ||
