We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent ee623fd commit f217207Copy full SHA for f217207
binutils/elfedit.c
@@ -105,7 +105,18 @@ update_gnu_property (const char *file_name, FILE *file)
105
if (map == MAP_FAILED)
106
{
107
error (_("%s: mmap () failed\n"), file_name);
108
- return 0;
+ return 1;
109
+ }
110
+
111
+ if ((elf_header.e_ident[EI_CLASS] == ELFCLASS32
112
+ ? sizeof (Elf32_External_Phdr)
113
+ : sizeof (Elf64_External_Phdr)) != elf_header.e_phentsize
114
+ || elf_header.e_phoff > (size_t) st_buf.st_size
115
+ || (elf_header.e_phnum * (size_t) elf_header.e_phentsize
116
+ > st_buf.st_size - elf_header.e_phoff))
117
+ {
118
+ error (_("%s: can't read program headers\n"), file_name);
119
120
}
121
122
phdrs = xmalloc (elf_header.e_phnum * sizeof (*phdrs));
0 commit comments