aboutsummaryrefslogtreecommitdiffstats
path: root/fs/binfmt_script.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/binfmt_script.c')
-rw-r--r--fs/binfmt_script.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/fs/binfmt_script.c b/fs/binfmt_script.c
index 5027a3e14922..afdf4e3cafc2 100644
--- a/fs/binfmt_script.c
+++ b/fs/binfmt_script.c
@@ -24,6 +24,16 @@ static int load_script(struct linux_binprm *bprm)
24 24
25 if ((bprm->buf[0] != '#') || (bprm->buf[1] != '!')) 25 if ((bprm->buf[0] != '#') || (bprm->buf[1] != '!'))
26 return -ENOEXEC; 26 return -ENOEXEC;
27
28 /*
29 * If the script filename will be inaccessible after exec, typically
30 * because it is a "/dev/fd/<fd>/.." path against an O_CLOEXEC fd, give
31 * up now (on the assumption that the interpreter will want to load
32 * this file).
33 */
34 if (bprm->interp_flags & BINPRM_FLAGS_PATH_INACCESSIBLE)
35 return -ENOENT;
36
27 /* 37 /*
28 * This section does the #! interpretation. 38 * This section does the #! interpretation.
29 * Sorta complicated, but hopefully it will work. -TYT 39 * Sorta complicated, but hopefully it will work. -TYT