mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-26 13:44:15 +08:00
ubifs: Enforce crypto policy in mmap
We need this extra check in mmap because a process could gain an already opened fd. Signed-off-by: Richard Weinberger <richard@nod.at>
This commit is contained in:
parent
700eada82a
commit
959c2de2b3
@ -1594,6 +1594,15 @@ static const struct vm_operations_struct ubifs_file_vm_ops = {
|
|||||||
static int ubifs_file_mmap(struct file *file, struct vm_area_struct *vma)
|
static int ubifs_file_mmap(struct file *file, struct vm_area_struct *vma)
|
||||||
{
|
{
|
||||||
int err;
|
int err;
|
||||||
|
struct inode *inode = file->f_mapping->host;
|
||||||
|
|
||||||
|
if (ubifs_crypt_is_encrypted(inode)) {
|
||||||
|
err = fscrypt_get_encryption_info(inode);
|
||||||
|
if (err)
|
||||||
|
return -EACCES;
|
||||||
|
if (!fscrypt_has_encryption_key(inode))
|
||||||
|
return -ENOKEY;
|
||||||
|
}
|
||||||
|
|
||||||
err = generic_file_mmap(file, vma);
|
err = generic_file_mmap(file, vma);
|
||||||
if (err)
|
if (err)
|
||||||
|
Loading…
Reference in New Issue
Block a user