diff options
| author | Al Viro <viro@zeniv.linux.org.uk> | 2013-06-11 08:23:01 +0400 |
|---|---|---|
| committer | Moyster <oysterized@gmail.com> | 2019-05-02 15:59:01 +0200 |
| commit | 0a1b2d115f24c817db3bf821ae87a95d56826363 (patch) | |
| tree | 03bdabb652ea0f68ccc5e7c83895dde4de4eb675 /fs/exec.c | |
| parent | a056f360307bfc102d6ddf533d079c3769cc5c94 (diff) | |
allow build_open_flags() to return an error
Change-Id: Ief5582ec8c4aeb4fb7bf9b2abd51b3d65ae9e81c
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/exec.c')
| -rw-r--r-- | fs/exec.c | 10 |
1 files changed, 6 insertions, 4 deletions
@@ -111,13 +111,14 @@ SYSCALL_DEFINE1(uselib, const char __user *, library) static const struct open_flags uselib_flags = { .open_flag = O_LARGEFILE | O_RDONLY | __FMODE_EXEC, .acc_mode = MAY_READ | MAY_EXEC | MAY_OPEN, - .intent = LOOKUP_OPEN + .intent = LOOKUP_OPEN, + .lookup_flags = LOOKUP_FOLLOW, }; if (IS_ERR(tmp)) goto out; - file = do_filp_open(AT_FDCWD, tmp, &uselib_flags, LOOKUP_FOLLOW); + file = do_filp_open(AT_FDCWD, tmp, &uselib_flags); putname(tmp); error = PTR_ERR(file); if (IS_ERR(file)) @@ -780,10 +781,11 @@ struct file *open_exec(const char *name) static const struct open_flags open_exec_flags = { .open_flag = O_LARGEFILE | O_RDONLY | __FMODE_EXEC, .acc_mode = MAY_EXEC | MAY_OPEN, - .intent = LOOKUP_OPEN + .intent = LOOKUP_OPEN, + .lookup_flags = LOOKUP_FOLLOW, }; - file = do_filp_open(AT_FDCWD, &tmp, &open_exec_flags, LOOKUP_FOLLOW); + file = do_filp_open(AT_FDCWD, &tmp, &open_exec_flags); if (IS_ERR(file)) goto out; |
