NAME | SYNOPSIS | DESCRIPTION | ATTRIBUTES | SEE ALSO
cc [ flag ... ] file ... -lelf [ library ... ] #include <libelf.h>Elf32_Ehdr *elf32_getehdr(Elf *elf);
For a 32-bit class file, elf32_getehdr() returns a pointer to an ELF header, if one is available for the ELF descriptor elf. If no header exists for the descriptor, elf32_newehdr() allocates a clean one, but it otherwise behaves the same as elf32_getehdr(). It does not allocate a new header if one exists already. If no header exists for elf32_getehdr( ), one cannot be created for elf32_newehdr( ), a system error occurs, the file is not a 32-bit class file, or elf is null, both functions return a null pointer.
For the 64-bit class, replace 32 with 64 as appropriate.
The header includes the following members:
unsigned char e_ident[EI_NIDENT]; Elf32_Half e_type; Elf32_Half e_machine; Elf32_Word e_version; Elf32_Addr e_entry; Elf32_Off e_phoff; Elf32_Off e_shoff; Elf32_Word e_flags; Elf32_Half e_ehsize; Elf32_Half e_phentsize; Elf32_Half e_phnum; Elf32_Half e_shentsize; Elf32_Half e_shnum; Elf32_Half e_shstrndx;
elf32_newehdr() automatically sets the ELF_F_DIRTY bit. See elf_flagdata(3ELF). A program may use elf_getident() to inspect the identification bytes from a file.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
---|---|
MT-Level | MT-Safe |
NAME | SYNOPSIS | DESCRIPTION | ATTRIBUTES | SEE ALSO