Loading fs/binfmt_elf.c +10 −9 Original line number Diff line number Diff line Loading @@ -180,7 +180,8 @@ create_elf_tables(struct linux_binprm *bprm, struct elfhdr *exec, elf_info = (elf_addr_t *)current->mm->saved_auxv; #define NEW_AUX_ENT(id, val) \ do { \ elf_info[ei_index++] = id; elf_info[ei_index++] = val; \ elf_info[ei_index++] = id; \ elf_info[ei_index++] = val; \ } while (0) #ifdef ARCH_DLINFO Loading @@ -199,17 +200,17 @@ create_elf_tables(struct linux_binprm *bprm, struct elfhdr *exec, NEW_AUX_ENT(AT_BASE, interp_load_addr); NEW_AUX_ENT(AT_FLAGS, 0); NEW_AUX_ENT(AT_ENTRY, exec->e_entry); NEW_AUX_ENT(AT_UID, (elf_addr_t)tsk->uid); NEW_AUX_ENT(AT_EUID, (elf_addr_t)tsk->euid); NEW_AUX_ENT(AT_GID, (elf_addr_t)tsk->gid); NEW_AUX_ENT(AT_EGID, (elf_addr_t)tsk->egid); NEW_AUX_ENT(AT_SECURE, (elf_addr_t)security_bprm_secureexec(bprm)); NEW_AUX_ENT(AT_UID, tsk->uid); NEW_AUX_ENT(AT_EUID, tsk->euid); NEW_AUX_ENT(AT_GID, tsk->gid); NEW_AUX_ENT(AT_EGID, tsk->egid); NEW_AUX_ENT(AT_SECURE, security_bprm_secureexec(bprm)); if (k_platform) { NEW_AUX_ENT(AT_PLATFORM, (elf_addr_t)(unsigned long)u_platform); } if (bprm->interp_flags & BINPRM_FLAGS_EXECFD) { NEW_AUX_ENT(AT_EXECFD, (elf_addr_t)bprm->interp_data); NEW_AUX_ENT(AT_EXECFD, bprm->interp_data); } #undef NEW_AUX_ENT /* AT_NULL is zero; clear the rest too */ Loading Loading
fs/binfmt_elf.c +10 −9 Original line number Diff line number Diff line Loading @@ -180,7 +180,8 @@ create_elf_tables(struct linux_binprm *bprm, struct elfhdr *exec, elf_info = (elf_addr_t *)current->mm->saved_auxv; #define NEW_AUX_ENT(id, val) \ do { \ elf_info[ei_index++] = id; elf_info[ei_index++] = val; \ elf_info[ei_index++] = id; \ elf_info[ei_index++] = val; \ } while (0) #ifdef ARCH_DLINFO Loading @@ -199,17 +200,17 @@ create_elf_tables(struct linux_binprm *bprm, struct elfhdr *exec, NEW_AUX_ENT(AT_BASE, interp_load_addr); NEW_AUX_ENT(AT_FLAGS, 0); NEW_AUX_ENT(AT_ENTRY, exec->e_entry); NEW_AUX_ENT(AT_UID, (elf_addr_t)tsk->uid); NEW_AUX_ENT(AT_EUID, (elf_addr_t)tsk->euid); NEW_AUX_ENT(AT_GID, (elf_addr_t)tsk->gid); NEW_AUX_ENT(AT_EGID, (elf_addr_t)tsk->egid); NEW_AUX_ENT(AT_SECURE, (elf_addr_t)security_bprm_secureexec(bprm)); NEW_AUX_ENT(AT_UID, tsk->uid); NEW_AUX_ENT(AT_EUID, tsk->euid); NEW_AUX_ENT(AT_GID, tsk->gid); NEW_AUX_ENT(AT_EGID, tsk->egid); NEW_AUX_ENT(AT_SECURE, security_bprm_secureexec(bprm)); if (k_platform) { NEW_AUX_ENT(AT_PLATFORM, (elf_addr_t)(unsigned long)u_platform); } if (bprm->interp_flags & BINPRM_FLAGS_EXECFD) { NEW_AUX_ENT(AT_EXECFD, (elf_addr_t)bprm->interp_data); NEW_AUX_ENT(AT_EXECFD, bprm->interp_data); } #undef NEW_AUX_ENT /* AT_NULL is zero; clear the rest too */ Loading