elf_getehdr(3E)
elf_getehdr, elf32_getehdr, elf32_newehdr, elf64_getehdr, elf64_newehdr - Retrieves class-dependent object file header
As shipped in IRIX 6.5.30. Last changed in IRIX 6.5.19.
NAME elf_getehdr, elf32_getehdr, elf32_newehdr, elf64_getehdr, elf64_newehdr - Retrieves class-dependent object file header SYNOPSIS cc [flag ...] file ... -lelf [library ...] #include <libelf.h> Elf32_Ehdr *elf32_getehdr(Elf *elf); Elf32_Ehdr *elf32_newehdr(Elf *elf); Elf64_Ehdr *elf64_getehdr(Elf *elf); Elf64_Ehdr *elf64_newehdr(Elf *elf); DESCRIPTION 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 already exists. If no header exists (for elf_getehdr), one cannot be created (for elf_newehdr); if a system error occurs, the file is not a 32-bit class file, or elf is null, both functions return a null pointer. For 64-bit class files, the 64 version is applicable instead of the 32 version of the functions. 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; For 64-bit class files, the following is applicable: unsigned char e_ident[EI_NIDENT]; Elf64_Half e_type; Elf64_Half e_machine; Elf64_Word e_version; Elf64_Addr e_entry; Elf64_Off e_phoff; Elf64_Off e_shoff; Elf64_Word e_flags; Elf64_Half e_ehsize; Elf64_Half e_phentsize; Elf64_Half e_phnum; Elf64_Half e_shentsize; Elf64_Half e_shnum; Elf64_Half e_shstrndx; elf32_newehdr automatically sets the ELF_F_DIRTY bit; see elf_flag(3E). A program may use elf_getident to inspect the identification bytes from a file. The 64-bit class works in the same way. In the previous description, replace all instances of 32 with 64. SEE ALSO elf(3E), elf_begin(3E), elf_flag(3E), elf_getident(3E)