diff options
Diffstat (limited to 'fs/exec.c')
| -rw-r--r-- | fs/exec.c | 6 |
1 files changed, 3 insertions, 3 deletions
| @@ -895,13 +895,13 @@ int kernel_read_file(struct file *file, void **buf, loff_t *size, | |||
| 895 | if (!S_ISREG(file_inode(file)->i_mode) || max_size < 0) | 895 | if (!S_ISREG(file_inode(file)->i_mode) || max_size < 0) |
| 896 | return -EINVAL; | 896 | return -EINVAL; |
| 897 | 897 | ||
| 898 | ret = security_kernel_read_file(file, id); | 898 | ret = deny_write_access(file); |
| 899 | if (ret) | 899 | if (ret) |
| 900 | return ret; | 900 | return ret; |
| 901 | 901 | ||
| 902 | ret = deny_write_access(file); | 902 | ret = security_kernel_read_file(file, id); |
| 903 | if (ret) | 903 | if (ret) |
| 904 | return ret; | 904 | goto out; |
| 905 | 905 | ||
| 906 | i_size = i_size_read(file_inode(file)); | 906 | i_size = i_size_read(file_inode(file)); |
| 907 | if (max_size > 0 && i_size > max_size) { | 907 | if (max_size > 0 && i_size > max_size) { |
