These functions allocate an ELF Program Header table for an ELF descriptor.
Elf32_Phdr and
Elf64_Phdr descriptors are described further in
elf(5).
Functions
elf32_newphdr() and
elf64_newphdr() allocate a table of
count Elf32_Phdr and
Elf64_Phdr descriptors respectively, discarding any existing program header table already present in the ELF descriptor
elf. A value of zero for argument
count may be used to delete an existing program header table from an ELF descriptor.
Function
gelf_newphdr() will return a table of
Elf32_Phdr or
Elf64_Phdr with
count elements depending on the ELF class of ELF descriptor
elf.
The functions set the
ELF_F_DIRTY flag on the program header table. All members of the returned array of Phdr structures will be initialized to zero.
After a successful call to these functions, the pointer returned by a prior call to
elf32_getphdr() or
elf64_getphdr() on the same descriptor
elf will no longer be valid.