| GELF_NEWPHDR(3) | Library Functions Manual | GELF_NEWPHDR(3) | 
elf32_newphdr, elf64_newphdr,
  gelf_newphdr —
#include <libelf.h>
Elf32_Phdr *
  
  elf32_newphdr(Elf
    *elf, size_t
    count);
Elf64_Phdr *
  
  elf64_newphdr(Elf
    *elf, size_t
    count);
#include
  <gelf.h>
void *
  
  gelf_newphdr(Elf
    *elf, size_t
    count);
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.
NULL in
  case an error was encountered.
gelf_newphdr() function uses a type of
  void * for its returned value. This differs from some
  other implementations of the elf(3)
  API, which use an unsigned long return type.
ELF_E_ARGUMENT]NULL.ELF_E_ARGUMENT]ELF_E_CLASS]ELF_E_RESOURCE]ELF_E_SEQUENCE]| June 12, 2019 | NetBSD 10.0 |