Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ elf_getident(3E) — Dell System V Release 4 Issue 2.2

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

elf(3E)



elf_getident(3E)          UNIX System V(ELF Library)           elf_getident(3E)


NAME
      elfgetident - retrieve file identification data

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

      #include <libelf.h>
      char *elfgetident(Elf *elf, sizet *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 eident has
      EINIDENT bytes with the following interpretation.

                 eident Index      Value             Purpose
                 _____________|______________|_____________________
                 EIMAG0      |  ELFMAG0     |
                 EIMAG1      |  ELFMAG1     |
                 EIMAG2      |  ELFMAG2     |  File identification
                 EIMAG3      |  ELFMAG3     |
                 _____________|______________|_____________________
                              |  ELFCLASSNONE|
                 EICLASS     |  ELFCLASS32  |  File class
                              |  ELFCLASS64  |
                 _____________|______________|_____________________
                              |  ELFDATANONE |
                 EIDATA      |  ELFDATA2LSB |  Data encoding
                              |  ELFDATA2MSB |
                 _____________|______________|_____________________
                 EIVERSION   |  EVCURRENT  |  File version
                 _____________|______________|_____________________
                 7-15         |  0           |  Unused, set to zero
                 _____________|______________|_____________________

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

      elfgetident 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), elfbegin(3E), elfgetehdr(3E), elfkind(3E), elfrawfile(3E)



10/89                                                                    Page 1





Typewritten Software • bear@typewritten.org • Edmonds, WA 98026