I would appreciate any donations. Wishlist or send e-mail type donations to maekawa AT daemon-systems.org.

Thank you.

GELF_NEWEHDR(3) Library Functions Manual GELF_NEWEHDR(3)
NAMEelf32_newehdr, elf64_newehdr, gelf_newehdr - retrieve or allocate the
object file header
LIBRARY
ELF Access Library (libelf, -lelf)
SYNOPSIS#include<libelf.h>Elf32_Ehdr*elf32_newehdr(Elf*elf);
Elf64_Ehdr*elf64_newehdr(Elf*elf);
#include<gelf.h>void*gelf_newehdr(Elf*elf, intelfclass);
DESCRIPTION
These functions retrieve the ELF header from the ELF descriptor elf,
allocating a new header if needed. File data structures are translated
to their in-memory representations as described in elf(3).
Function elf32_newehdr() returns a pointer to a 32 bit Elf32_Ehdr
structure. Function elf64_newehdr() returns a pointer to a 64 bit
Elf64_Ehdrstructure.
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:
e_ident[EI_MAG0..EI_MAG3]
Identification bytes at offsets EI_MAG0, EI_MAG1, EI_MAG2 and
EI_MAG3 are set to the ELF signature.
e_ident[EI_CLASS]
The identification byte at offset EI_CLASS is set to the ELF
class associated with the function being called or to argument
elfclass for function gelf_newehdr().
e_ident[EI_DATA]
The identification byte at offset EI_DATA is set to ELFDATANONE.
e_ident[EI_VERSION]
The identification byte at offset EI_VERSION is set to the ELF
library's operating version set by a prior call to
elf_version(3).
e_machine
is set to EM_NONE.
e_type is set to ELF_K_NONE.
e_version
is set to the ELF library's operating version set by a prior call
to elf_version(3).
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.
RETURNVALUES
These functions return a pointer to a translated header descriptor if
successful, or NULL on failure.
ERRORS
These functions can fail with the following errors:
[ELF_E_ARGUMENT] The argument elf was null.
[ELF_E_ARGUMENT] Argument elf was not a descriptor for an ELF object.
[ELF_E_ARGUMENT] Argument elfclass had an unsupported value.
[ELF_E_ARGUMENT] The class of the ELF descriptor elf did not match that
of the requested operation.
[ELF_E_ARGUMENT] For function gelf_newehdr(), the class of argument elf
was not ELFCLASSNONE and did not match the argument
elfclass.
[ELF_E_CLASS] The ELF class of descriptor elf did not match that of
the API function being called.
[ELF_E_HEADER] A malformed ELF header was detected.
[ELF_E_RESOURCE] An out of memory condition was detected during
execution.
[ELF_E_SECTION] The ELF descriptor in argument elf did not adhere to
the conventions used for extended numbering.
[ELF_E_VERSION] The ELF descriptor elf had an unsupported ELF version
number.
SEEALSOelf(3), elf32_getehdr(3), elf64_getehdr(3), elf_flagdata(3),
elf_getident(3), elf_update(3), elf_version(3), gelf(3), gelf_getehdr(3),
elf(5)
NetBSD 8.0 October 22, 2007 NetBSD 8.0