LDGETPD(3X) LDGETPD(3X)
ldgetpd - retrieve procedure descriptor given a procedure descriptor
index
#include <stdio.h>
#include <filehdr.h>
#include <sym.h>
#include <ldfcn.h>
long ldgetpd (ldptr, ipd, ppd)
LDFILE ldptr;
long ipd;
pPDR ppd;
ldgetpd returns a SUCCESS or FAILURE depending on whether the procedure
descriptor with index ipd can be accessed. If it can be accessed, the
structure pointed to by ppd is filled with the contents of the
corresponding procedure descriptor. The isym, iline, and iopt fields of
the procedure descriptor are updated to be used in further LD routine
calls. The adr field is updated from the symbol referenced by the isym
field.
The PDR cannot be retrieved when:
o The procedure descriptor table cannot be found.
o The ipd offset into the procedure descriptor table is beyond the
end of the table.
o The file descriptor that the ipd offset falls into cannot be
found.
Typically, ldgetpd is called while traversing the table that runs from 0
to SYMHEADER(ldptr).ipdMax - 1.
The program must be loaded with the object file access routine library
libmld.a.
ldclose(3X), ldopen(3X), ldtbseek(3X), ldtbread(3X), ldfcn(4).
PPPPaaaaggggeeee 1111 [ Back ]
|