ELF_GETARSYM(3) | Library Functions Manual | ELF_GETARSYM(3) |
elf_getarsym
—
#include <libelf.h>
Elf_Arsym *
elf_getarsym
(Elf
*elf, size_t
*ptr);
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.
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.
elf_getarsym
() may fail with the following
errors:
ELF_E_ARGUMENT
]ELF_E_ARGUMENT
]August 15, 2006 | NetBSD 9.0 |