fs/binfmt_elf.c: save 1 indent level

Rewrite

	for (...) {
		if (->p_type == PT_INTERP) {
			...
			break;
		}
	}

loop into

	for (...) {
		if (->p_type != PT_INTERP)
			continue;
		...
		break;
	}

Link: http://lkml.kernel.org/r/20190416201906.GA24304@avx2
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Alexey Dobriyan 2019-05-14 15:43:45 -07:00 committed by Linus Torvalds
parent ba0f6b88a8
commit be0deb585e

View file

@ -740,69 +740,66 @@ static int load_elf_binary(struct linux_binprm *bprm)
start_data = 0; start_data = 0;
end_data = 0; end_data = 0;
for (i = 0; i < loc->elf_ex.e_phnum; i++) { for (i = 0; i < loc->elf_ex.e_phnum; i++, elf_ppnt++) {
if (elf_ppnt->p_type == PT_INTERP) { char *elf_interpreter;
char *elf_interpreter; loff_t pos;
loff_t pos;
/* This is the program interpreter used for if (elf_ppnt->p_type != PT_INTERP)
* shared libraries - for now assume that this continue;
* is an a.out format binary
*/
retval = -ENOEXEC;
if (elf_ppnt->p_filesz > PATH_MAX ||
elf_ppnt->p_filesz < 2)
goto out_free_ph;
retval = -ENOMEM; /*
elf_interpreter = kmalloc(elf_ppnt->p_filesz, * This is the program interpreter used for shared libraries -
GFP_KERNEL); * for now assume that this is an a.out format binary.
if (!elf_interpreter) */
goto out_free_ph; retval = -ENOEXEC;
if (elf_ppnt->p_filesz > PATH_MAX || elf_ppnt->p_filesz < 2)
goto out_free_ph;
pos = elf_ppnt->p_offset; retval = -ENOMEM;
retval = kernel_read(bprm->file, elf_interpreter, elf_interpreter = kmalloc(elf_ppnt->p_filesz, GFP_KERNEL);
elf_ppnt->p_filesz, &pos); if (!elf_interpreter)
if (retval != elf_ppnt->p_filesz) { goto out_free_ph;
if (retval >= 0)
retval = -EIO;
goto out_free_interp;
}
/* make sure path is NULL terminated */
retval = -ENOEXEC;
if (elf_interpreter[elf_ppnt->p_filesz - 1] != '\0')
goto out_free_interp;
interpreter = open_exec(elf_interpreter); pos = elf_ppnt->p_offset;
kfree(elf_interpreter); retval = kernel_read(bprm->file, elf_interpreter,
retval = PTR_ERR(interpreter); elf_ppnt->p_filesz, &pos);
if (IS_ERR(interpreter)) if (retval != elf_ppnt->p_filesz) {
goto out_free_ph; if (retval >= 0)
retval = -EIO;
goto out_free_interp;
}
/* make sure path is NULL terminated */
retval = -ENOEXEC;
if (elf_interpreter[elf_ppnt->p_filesz - 1] != '\0')
goto out_free_interp;
/* interpreter = open_exec(elf_interpreter);
* If the binary is not readable then enforce kfree(elf_interpreter);
* mm->dumpable = 0 regardless of the interpreter's retval = PTR_ERR(interpreter);
* permissions. if (IS_ERR(interpreter))
*/ goto out_free_ph;
would_dump(bprm, interpreter);
/* Get the exec headers */ /*
pos = 0; * If the binary is not readable then enforce mm->dumpable = 0
retval = kernel_read(interpreter, &loc->interp_elf_ex, * regardless of the interpreter's permissions.
sizeof(loc->interp_elf_ex), &pos); */
if (retval != sizeof(loc->interp_elf_ex)) { would_dump(bprm, interpreter);
if (retval >= 0)
retval = -EIO;
goto out_free_dentry;
}
break; /* Get the exec headers */
pos = 0;
retval = kernel_read(interpreter, &loc->interp_elf_ex,
sizeof(loc->interp_elf_ex), &pos);
if (retval != sizeof(loc->interp_elf_ex)) {
if (retval >= 0)
retval = -EIO;
goto out_free_dentry;
}
break;
out_free_interp: out_free_interp:
kfree(elf_interpreter); kfree(elf_interpreter);
goto out_free_ph; goto out_free_ph;
}
elf_ppnt++;
} }
elf_ppnt = elf_phdata; elf_ppnt = elf_phdata;