[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL v2 17/17] User mode support for Linux ELF files with
From: |
riku . voipio |
Subject: |
[Qemu-devel] [PULL v2 17/17] User mode support for Linux ELF files with no section header |
Date: |
Tue, 17 Jun 2014 17:57:00 +0300 |
From: Craig Heffner <address@hidden>
In user mode Linux, Qemu currently refuses to load ELF files that do not
contain section headers (ehdr->e_shentsize == 0). Since section headers are not
required in order to load an ELF file, simply removing the e_shentsize check in
elf_check_ehdr() allows ELF binaries with no section headers to be run properly
in user mode:
Signed-off-by: Craig Heffner <address@hidden>
Signed-off-by: Riku Voipio <address@hidden>
---
linux-user/elfload.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/linux-user/elfload.c b/linux-user/elfload.c
index c123244..1248eda 100644
--- a/linux-user/elfload.c
+++ b/linux-user/elfload.c
@@ -1292,7 +1292,6 @@ static bool elf_check_ehdr(struct elfhdr *ehdr)
return (elf_check_arch(ehdr->e_machine)
&& ehdr->e_ehsize == sizeof(struct elfhdr)
&& ehdr->e_phentsize == sizeof(struct elf_phdr)
- && ehdr->e_shentsize == sizeof(struct elf_shdr)
&& (ehdr->e_type == ET_EXEC || ehdr->e_type == ET_DYN));
}
--
2.0.0.rc2
- [Qemu-devel] [PULL v2 00/17] linux-user updates, riku . voipio, 2014/06/17
- [Qemu-devel] [PULL v2 10/17] signal/ppc/{save, restore}_user_regs remove __put/get error checks, riku . voipio, 2014/06/17
- [Qemu-devel] [PULL v2 02/17] signal/x86/setup_frame: __put_user cleanup, riku . voipio, 2014/06/17
- [Qemu-devel] [PULL v2 12/17] signal/ppc/do_setcontext remove __get_user return check, riku . voipio, 2014/06/17
- [Qemu-devel] [PULL v2 04/17] signal/all: remove return value from setup_sigcontext, riku . voipio, 2014/06/17
- [Qemu-devel] [PULL v2 17/17] User mode support for Linux ELF files with no section header,
riku . voipio <=
- [Qemu-devel] [PULL v2 08/17] signal/all/do_sigreturn - remove __get_user checks, riku . voipio, 2014/06/17
- [Qemu-devel] [PULL v2 16/17] linux-user: Return correct errno for unsupported netlink socket, riku . voipio, 2014/06/17
- [Qemu-devel] [PULL v2 03/17] signal/all: remove return value from copy_siginfo_to_user, riku . voipio, 2014/06/17
- [Qemu-devel] [PULL v2 01/17] signal/all: remove __get/__put_user return value reading, riku . voipio, 2014/06/17
- [Qemu-devel] [PULL v2 14/17] linux-user/uname: Return correct uname string for x86_64, riku . voipio, 2014/06/17
- [Qemu-devel] [PULL v2 11/17] signal/sparc64_set_context: remove __get_user checks, riku . voipio, 2014/06/17
- [Qemu-devel] [PULL v2 09/17] signal/all/setup_frame remove __put_user checks, riku . voipio, 2014/06/17
- [Qemu-devel] [PULL v2 13/17] linux-user: fix gcc-4.9 compiler error on __{get, put]}_user, riku . voipio, 2014/06/17
- [Qemu-devel] [PULL v2 15/17] linux-user: Don't overrun guest buffer in sched_getaffinity, riku . voipio, 2014/06/17
- [Qemu-devel] [PULL v2 07/17] signal/all/do_sigaltstack remove __get_user value check, riku . voipio, 2014/06/17