diff options
Diffstat (limited to 'security/min_addr.c')
-rw-r--r-- | security/min_addr.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/security/min_addr.c b/security/min_addr.c index 14cc7b3..fc43c9d 100644 --- a/security/min_addr.c +++ b/security/min_addr.c @@ -28,12 +28,15 @@ static void update_mmap_min_addr(void) * sysctl handler which just sets dac_mmap_min_addr = the new value and then * calls update_mmap_min_addr() so non MAP_FIXED hints get rounded properly */ -int mmap_min_addr_handler(struct ctl_table *table, int write, struct file *filp, +int mmap_min_addr_handler(struct ctl_table *table, int write, void __user *buffer, size_t *lenp, loff_t *ppos) { int ret; - ret = proc_doulongvec_minmax(table, write, filp, buffer, lenp, ppos); + if (!capable(CAP_SYS_RAWIO)) + return -EPERM; + + ret = proc_doulongvec_minmax(table, write, buffer, lenp, ppos); update_mmap_min_addr(); |