#
165535 |
|
25-Dec-2006 |
jkoshy |
Keep shadow copies of the `e_shnum', `e_phnum' and `e_shstrndx' members of the ELF Executable Header inside the library-private `struct _Elf' descriptor and only update the underlying Elf{32,64}_Ehdr structure on an elf_update(3) call. These fields of the Ehdr structure are technically `out of bounds' for an application program per the ELF(3) API, but we've seen applications that initialize a new Ehdr structure using memcpy(), messing up the library's invariants. [1]
Implement elf_getphnum() and handle ELF objects with more than 64K program header table entries.
Reported by: jb [1]
|