elf_getarsym(3ELF) ELF Library Functions elf_getarsym(3ELF)NAMEelf_getarsym - retrieve archive symbol table
SYNOPSIS
cc [ flag ... ] file ... -lelf [ library ... ]
#include <libelf.h>
Elf_Arsym *elf_getarsym(Elf *elf, size_t *ptr);
DESCRIPTION
The elf_getarsym() function returns a pointer to the archive symbol ta‐
ble, if one is available for the ELF descriptor elf. Otherwise, the ar‐
chive doesn't have a symbol table, an error occurred, or elf was null;
elf_getarsym() then returns a null value. The symbol table is an array
of structures that include the following members.
char *as_name;
size_t as_off;
unsigned long as_hash;
These members have the following semantics:
as_name A pointer to a null-terminated symbol name resides here.
as_off This value is a byte offset from the beginning of the ar‐
chive to the member's header. The archive member residing at
the given offset defines the associated symbol. Values in
as_off may be passed as arguments to elf_rand(). See
elf_begin(3ELF) to access the desired archive member.
as_hash This is a hash value for the name, as computed by
elf_hash().
If ptr is non-null, the library stores the number of table entries in
the location to which ptr points. This value is set to 0 when the
return value is NULL. The table's last entry, which is included in the
count, has a null as_name, a zero value for as_off, and ~0UL for
as_hash.
The hash value returned is guaranteed not to be the bit pattern of all
ones ( ~0UL).
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌─────────────────────────────┬─────────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├─────────────────────────────┼─────────────────────────────┤
│Interface Stability │Committed │
├─────────────────────────────┼─────────────────────────────┤
│MT-Level │MT-Safe │
└─────────────────────────────┴─────────────────────────────┘
SEE ALSOar.h(3HEAD), elf(3ELF), elf_begin(3ELF), elf_getarhdr(3ELF),
elf_hash(3ELF), libelf(3LIB), attributes(5)SunOS 5.10 11 Jul 2001 elf_getarsym(3ELF)