diff options
Diffstat (limited to 'fs/proc/root.c')
| -rw-r--r-- | fs/proc/root.c | 4 | 
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/proc/root.c b/fs/proc/root.c index c6e9fac26ba..9c7fab1d23f 100644 --- a/fs/proc/root.c +++ b/fs/proc/root.c @@ -16,6 +16,7 @@  #include <linux/sched.h>  #include <linux/module.h>  #include <linux/bitops.h> +#include <linux/user_namespace.h>  #include <linux/mount.h>  #include <linux/pid_namespace.h>  #include <linux/parser.h> @@ -108,6 +109,9 @@ static struct dentry *proc_mount(struct file_system_type *fs_type,  	} else {  		ns = task_active_pid_ns(current);  		options = data; + +		if (!current_user_ns()->may_mount_proc) +			return ERR_PTR(-EPERM);  	}  	sb = sget(fs_type, proc_test_super, proc_set_super, flags, ns);  |