ELF_GETARSYM(3) | MidnightBSD Library Functions Manual | ELF_GETARSYM(3) |
elf_getarsym
—
retrieve the symbol table of an archive
ELF Access Library (libelf, -lelf)
#include
<libelf.h>
Elf_Arsym *
elf_getarsym
(Elf
*elf, size_t
*ptr);
The function
elf_getarsym
()
retrieves the symbol table for an
ar(1) archive, if one is
available.
Argument elf should be a
descriptor for an ar(1)
archive opened using
elf_begin
()
or
elf_memory
().
If the archive elf contains a symbol table with n entries, this function returns a pointer to an array of n+1 Elf_Arsym structures. An Elf_Arsym structure has the following elements:
The last entry of the returned array will have a NULL value for member as_name, a zero value for member as_off and an illegal value of ~0UL for as_hash.
If argument ptr is
non-null, the
elf_getarsym
()
function will store the number of table entries returned (including the
sentinel entry at the end) into the location it points to.
Function elf_getarsym
() returns a pointer
to an array of Elf_Arsym structures if successful, or
a NULL pointer if an error was encountered.
If argument ptr is non-null and there was no error, the library will store the number of archive symbol entries returned into the location it points to. If argument ptr is non-null and an error was encountered, the library will set the location pointed to by it to zero.
Function elf_getarsym
() may fail with the
following errors:
ELF_E_ARGUMENT
]ELF_E_ARGUMENT
]elf(3), elf_begin(3), elf_getarhdr(3), elf_hash(3), elf_memory(3), elf_next(3), elf_rand(3)
August 15, 2006 | midnightbsd-3.1 |