elf_getarhdr(3E) (ELF Library) elf_getarhdr(3E)
NAME
elfgetarhdr - retrieve archive member header
SYNOPSIS
cc [flag ...] file ... -lelf [library ...]
#include <libelf.h>
ElfArhdr *elfgetarhdr(Elf *elf);
DESCRIPTION
elfgetarhdr returns a pointer to an archive member header, if one is
available for the ELF descriptor elf. Otherwise, no archive member
header exists, an error occurred, or elf was null; elfgetarhdr then
returns a null value. The header includes the following members.
char *arname;
timet ardate;
long aruid;
long argid;
unsigned long armode;
offt arsize;
char *arrawname;
An archive member name, available through arname, is a null-
terminated string, with the ar format control characters removed.
The arrawname member holds a null-terminated string that represents
the original name bytes in the file, including the terminating slash
and trailing blanks as specified in the archive format.
In addition to ``regular'' archive members, the archive format
defines some special members. All special member names begin with a
slash (/), distinguishing them from regular members (whose names may
not contain a slash). These special members have the names (arname)
defined below.
/ This is the archive symbol table. If present, it will be the
first archive member. A program may access the archive
symbol table through elfgetarsym. The information in the
symbol table is useful for random archive processing [see
elfrand(3E)].
// This member, if present, holds a string table for long
archive member names. An archive member's header contains a
16-byte area for the name, which may be exceeded in some file
systems. The library automatically retrieves long member
names from the string table, setting arname to the
appropriate value.
Under some error conditions, a member's name might not be available.
Although this causes the library to set arname to a null pointer,
the arrawname member will be set as usual.
8/91 Page 1
elf_getarhdr(3E) (ELF Library) elf_getarhdr(3E)
SEE ALSO
elf(3E), elfbegin(3E), elfgetarsym(3E), elfrand(3E), ar(4).
Page 2 8/91