ldtbread - read an indexed symbol table entry of a common
object file
#include <stdio.h> #include <filehdr.h> #include <syms.h>
#include <ldfcn.h>
int ldtbread(
LDFILE *ldptr,
int symindex,
pSYMR *symbol );
The ldtbread() routine reads the symbol table entry specified
by symindex of the common object file currently associated
with ldptr into the area of memory beginning at
symbol.
It returns SUCCESS or FAILURE. If symindex is greater
than the number of symbols in the object file or if it
cannot read the specified symbol table entry, ldtbread()
fails.
The local and external symbols are concatenated into a
linear list. Symbols are accessible from symbol index
zero to SYMHEADER(ldptr).isymMax + SYMHEADER(ldptr).iextMax.
The index and iss fields of the
SYMR are made absolute (rather than file relative) so that
the routines ldgetname(3), ldgetaux(3), and ldtbread()
proceed normally when given those indices. Only the SYMR
part of the external symbol structure is returned.
Note: The first symbol in the symbol table has an index of
zero.
The program must be loaded with the object file access
routine library libmld.a.
ldclose(3), ldgetname(3), ldopen(3), ldtbseek(3), ldgetname(3), ldfcn(4)
ldtbread(3)
[ Back ] |