| GELF_NEWEHDR(3) | Library Functions Manual | GELF_NEWEHDR(3) | 
elf32_newehdr, elf64_newehdr,
  gelf_newehdr —
#include <libelf.h>
Elf32_Ehdr *
  
  elf32_newehdr(Elf
    *elf);
Elf64_Ehdr *
  
  elf64_newehdr(Elf
    *elf);
#include
  <gelf.h>
void *
  
  gelf_newehdr(Elf
    *elf, int
    elfclass);
Function elf32_newehdr() returns a pointer
    to a 32 bit Elf32_Ehdr structure. Function
    elf64_newehdr() returns a pointer to a 64 bit
    Elf64_Ehdr structure.
When argument elfclass has value
    ELFCLASS32, function
    gelf_newehdr() returns the value returned by
    elf32_newehdr(elf). When
    argument elfclass has value
    ELFCLASS64 it returns the value returned by
    elf64_newehdr(elf).
If a fresh header structure is allocated, the members of the structure are initialized as follows:
EI_MAG0,
      EI_MAG1, EI_MAG2 and
      EI_MAG3 are set to the ELF signature.EI_CLASS is set
      to the ELF class associated with the function being called or to argument
      elfclass for function
      gelf_newehdr().EI_DATA is set
      to ELFDATANONE.EI_VERSION is
      set to the ELF library's operating version set by a prior call to
      elf_version(3).EM_NONE.ELF_K_NONE.Other members of the header are set to zero. The application is
    responsible for changing these values as needed before calling
    elf_update().
If successful, these three functions set the
    ELF_F_DIRTY flag on ELF descriptor
    elf.
ELF_E_ARGUMENT]ELF_E_ARGUMENT]ELF_E_ARGUMENT]ELF_E_ARGUMENT]ELF_E_ARGUMENT]gelf_newehdr(), the class of argument
      elf was not ELFCLASSNONE and
      did not match the argument elfclass.ELF_E_CLASS]ELF_E_HEADER]ELF_E_RESOURCE]ELF_E_SECTION]ELF_E_VERSION]| October 22, 2007 | NetBSD 9.4 |