Commit a44ddbb6 authored by Al Viro's avatar Al Viro

Make open_exec() and sys_uselib() use may_open(), instead of duplicating its parts

Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent e24977d4
...@@ -126,11 +126,7 @@ SYSCALL_DEFINE1(uselib, const char __user *, library) ...@@ -126,11 +126,7 @@ SYSCALL_DEFINE1(uselib, const char __user *, library)
if (nd.path.mnt->mnt_flags & MNT_NOEXEC) if (nd.path.mnt->mnt_flags & MNT_NOEXEC)
goto exit; goto exit;
error = inode_permission(nd.path.dentry->d_inode, error = may_open(&nd.path, MAY_READ | MAY_EXEC | MAY_OPEN, 0);
MAY_READ | MAY_EXEC | MAY_OPEN);
if (error)
goto exit;
error = ima_path_check(&nd.path, MAY_READ | MAY_EXEC | MAY_OPEN);
if (error) if (error)
goto exit; goto exit;
...@@ -677,10 +673,7 @@ struct file *open_exec(const char *name) ...@@ -677,10 +673,7 @@ struct file *open_exec(const char *name)
if (nd.path.mnt->mnt_flags & MNT_NOEXEC) if (nd.path.mnt->mnt_flags & MNT_NOEXEC)
goto out_path_put; goto out_path_put;
err = inode_permission(nd.path.dentry->d_inode, MAY_EXEC | MAY_OPEN); err = may_open(&nd.path, MAY_EXEC | MAY_OPEN, 0);
if (err)
goto out_path_put;
err = ima_path_check(&nd.path, MAY_EXEC | MAY_OPEN);
if (err) if (err)
goto out_path_put; goto out_path_put;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment