elf_getident(3E)

elf_getident - retrieve file identification data

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

NAME
     elf_getident - retrieve file identification data

SYNOPSIS
     cc [flag ...] file ...  -lelf [library ...]

     #include <libelf.h>
     char *elf_getident(Elf *elf, size_t *ptr);

DESCRIPTION
     As elf(3E) explains, ELF provides a framework for various classes of
     files, where basic objects may have 32 bits, 64 bits, etc.  To
     accommodate these differences, without forcing the larger sizes on
     smaller machines, the initial bytes in an ELF file hold identification
     information common to all file classes.  Every ELF header's e_ident has
     EI_NIDENT bytes with the following interpretation.

                e_ident Index      Value             Purpose
                __________________________________________________
                EI_MAG0         ELFMAG0
                EI_MAG1         ELFMAG1
                EI_MAG2         ELFMAG2
                EI_MAG3         ELFMAG3        File identification

                __________________________________________________
                                ELFCLASSNONE
                                ELFCLASS32
                EI_CLASS        ELFCLASS64     File class

                __________________________________________________
                                ELFDATANONE
                                ELFDATA2LSB
                EI_DATA         ELFDATA2MSB    Data encoding

                __________________________________________________
                EI_VERSION      EV_CURRENT     File version
                __________________________________________________
                7-15            0              Unused, set to zero
                __________________________________________________
                              |
















                                             |


















     Other kinds of files [see elf_kind(3E)] also may have identification
     data, though they would not conform to e_ident.

     elf_getident returns a pointer to the file's ``initial bytes.''  If the
     library recognizes the file, a conversion from the file image to the
     memory image may occur.  In any case, the identification bytes are
     guaranteed not to have been modified, though the size of the unmodified
     area depends on the file type.  If ptr is non-null, the library stores
     the number of identification bytes in the location to which ptr points.
     If no data are present, elf is null, or an error occurs, the return value
     is a null pointer, with zero optionally stored through ptr.
SEE ALSO
     elf(3E), elf_begin(3E), elf_getehdr(3E), elf_kind(3E), elf_rawfile(3E).