From d3606f07440ee2c2bebea2b9932938e08b66d90b Mon Sep 17 00:00:00 2001 From: Craig Heffner Date: Mon, 5 Dec 2011 14:14:27 -0500 Subject: [PATCH] User mode support for Linux ELF files with no section header 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 Signed-off-by: Riku Voipio --- linux-user/elfload.c | 1 - 1 file changed, 1 deletion(-) diff --git a/linux-user/elfload.c b/linux-user/elfload.c index c123244ecd..1248eda272 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)); }