elf_getehdr(3E)

elf_getehdr: elf32_getehdr, elf32_newehdr, elf64_getehdr, elf64_newehdr - retrieve class-dependent object file header

As shipped in IRIX 6.5. First release of IRIX 6.5.

NAME
     elf_getehdr: elf32_getehdr, elf32_newehdr, elf64_getehdr, elf64_newehdr -
     retrieve 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 exists already.  If no header exists (for elf_getehdr),
     one cannot be created (for elf_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 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 identically, simply replacing all instances of 32
     in the description with 64.

SEE ALSO
     elf(3E), elf_begin(3E), elf_flag(3E), elf_getident(3E).