author: Linus Torvalds <torvalds@linux-foundation.org> 2019-02-14 15:02:18 -0800
committer: Linus Torvalds <torvalds@linux-foundation.org> 2019-02-14 15:02:18 -0800
commit: cb5b020a8d38f77209d0472a0fea755299a8ec78
parent: 23e93c9b2cde73f9912d0d8534adbddd3dcc48f4
Commit Summary:
Diffstat:
1 file changed, 3 insertions, 7 deletions
diff --git a/fs/binfmt_script.c b/fs/binfmt_script.c
index d0078cbb718b..7cde3f46ad26 100644
--- a/fs/binfmt_script.c
+++ b/fs/binfmt_script.c
@@ -42,14 +42,10 @@ static int load_script(struct linux_binprm *bprm)
fput(bprm->file);
bprm->file = NULL;
- for (cp = bprm->buf+2;; cp++) {
- if (cp >= bprm->buf + BINPRM_BUF_SIZE)
- return -ENOEXEC;
- if (!*cp || (*cp == '\n'))
- break;
- }
+ bprm->buf[BINPRM_BUF_SIZE - 1] = '\0';
+ if ((cp = strchr(bprm->buf, '\n')) == NULL)
+ cp = bprm->buf+BINPRM_BUF_SIZE-1;
*cp = '\0';
-
while (cp > bprm->buf) {
cp--;
if ((*cp == ' ') || (*cp == '\t'))