manpages.info - online man pages   

SunOS man pages : elf_getident (3)

ELF Library Functions                          elf_getident(3ELF)

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(3ELF) 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 File identification EI_MAG1 ELFMAG1 EI_MAG2 ELFMAG2 EI_MAG3 ELFMAG3 EI_CLASS ELFCLASSNONE File class ELFCLASS32 ELFCLASS64 EI_DATA ELFDATANONE Data encoding ELFDATA2LSB ELFDATA2MSB EI_VERSION EV_CURRENT File version 7-15 0 Unused, set to zero Other kinds of files (see elf_kind(3ELF)) 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 0 stored through ptr, if ptr is non-null. SunOS 5.8 Last change: 29 Dec 1996 1 ELF Library Functions elf_getident(3ELF)

ATTRIBUTES

See attributes(5) for descriptions of the following attri- butes: ____________________________________________________________ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | |_____________________________|_____________________________| | MT-Level | MT-Safe | |_____________________________|_____________________________|

SEE ALSO

elf(3ELF), elf32_getehdr(3ELF), elf_begin(3ELF), elf_kind(3ELF), elf_rawfile(3ELF), attributes(5) SunOS 5.8 Last change: 29 Dec 1996 2