ELF_GETARHDR(3E)ELF_GETARHDR(3E) NAME elf_getarhdr - Retrieves archive member header SYNOPSIS cc [flag ...] file ... -lelf [library ...] #include <libelf.h> Elf_Arhdr *elf_getarhdr(Elf *elf); DESCRIPTION elf_getarhdr returns a pointer to an archive member header, if one is available for the ELF descriptor, elf. If no archive member header exists, an error occurred, or elf was null, elf_getarhdr returns a null value. The header includes the following members: char *ar_name; time_t ar_date; long ar_uid; long ar_gid; unsigned long ar_mode; off_t ar_size; char *ar_rawname; An archive member name, available through ar_name, is a null- terminated string, with the ar format control characters removed. The ar_rawname 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). The following are definitions of special member names (ar_name): / This is the archive symbol table. If present, it will be the first archive member. A program may access the archive symbol table through elf_getarsym. The information in the symbol table is useful for random archive processing; see elf_rand(3E). // This member 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 ar_name to the appropriate value. Under some error conditions, a member's name might not be available. Although this causes the library to set ar_name to a null pointer, the ar_rawname member will be set as usual. SEE ALSO elf(3E), elf_begin(3E), elf_getarsym(3E), elf_rand(3E) ar(4)