elf_getarsym(ELF)
elf_getarsym --
retrieve archive symbol table
Synopsis
cc [flag . . . ] file . . . -lelf [library] . . .
#include <libelf.h>
Elf_Arsym elf_getarsym(Elf elf, size_t ptr);
Description
elf_getarsym
returns a pointer to the archive symbol table,
if one is available for the
ELF
descriptor
elf.
Otherwise, the archive 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 archive
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
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 zero 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
.
References
ar(F),
Intro(ELF),
elf_getarhdr(ELF),
elf_hash(ELF),
elf_rand(ELF)
© 2005 The SCO Group, Inc. All rights reserved.
SCO OpenServer Release 6.0.0 - 02 June 2005