#include <stdio.h> #include <filehdr.h> #include <sym.h> #include <ldfcn.h>
pAUXU ldgetaux (ldptr, iaux ) LDFILE ldptr ; long iaux ;
The ldgetaux routine returns a pointer to the auxiliary table entry (AUXU) indexed by iaux. The entry is contained in a static buffer. Because the buffer can be overwritten by later calls to ldgetaux, the entry must be copied by the caller if it is to be saved or changed.
Note that auxiliary table entries are not swapped. If LDAUXSWAP(ldptr,ldf) is non-zero, a further call to swap_aux is required. Before calling the swap_aux routine, the caller should copy the entry.
If the auxiliary table entry cannot be retrieved, ldgetaux returns NULL. This occurs when: The auxiliary table cannot be found The iaux offset into the auxiliary table is beyond the end of the table
The ltdbread routine returns a local symbol (SYMR) structure that may contain an index into the auxiliary table. If so, ldgetaux can be called with this index to retrieve data type information for the local symbol. If the data type information for a symbol is not present, ldgetaux should not be called.
The program must be loaded with the object file access routine library libmld.a.
ldclose(3), ldopen(3), ldtbseek(3), ldtbread(3), ldfcn(4) delim off