aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Heffner <cheffner@tacnetsol.com>2011-12-05 14:14:27 -0500
committerRiku Voipio <riku.voipio@linaro.org>2014-06-17 09:21:41 +0300
commitd3606f07440ee2c2bebea2b9932938e08b66d90b (patch)
tree13bf115c8f4aa1a5a0612ba6d106aebd4f95b579
parent480eda2eda7c464e252f17ac87ec61bccc14f285 (diff)
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 <cheffner@tacnetsol.com> Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
-rw-r--r--linux-user/elfload.c1
1 files changed, 0 insertions, 1 deletions
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));
}