ldreadst(3X)
ldreadst - Reads symbol table information
Showing IRIX 6.5.30 (default release). Last changed in IRIX 6.5.19.
NAME ldreadst - Reads symbol table information SYNOPSIS #include <stdio.h> #include <filehdr.h> #include <syms.h> #include <ldfcn.h> int ldreadst(LDFILE * ldptr, int flags ");" DESCRIPTION This routine is available for o32 ABI programs only. ldreadst reads in the portions of the symbol table implied by the flags argument. A flags argument of -1 reads in the entire symbol table. Since the other symbol table routines, for example, ldtbread, ensure that the relevant portions of the symbol table have been read in, you need not call ldreadst to use the other routines. ldreadst(ldptr,-1) would simply ensure the whole symbol table is read in at once, which is not necessary. ldreadst is useful, however. You can test for the existence of symbol table information in a file in the following way: char *filename; LDFILE *ldptr; ldptr = ldopen(filename, (LDFILE *)0); if(ldptr == NULL) { /* No such file exists */ } else { /* This is not the _only_ way one could test for ** the existence of the symbol table. */ if(ldreadst(pchdr,-1) == FAILURE) { /* This binary has no symbol table */ } } ldreadst returns SUCCESS if it has read in the symbol table successfully or FAILURE if it cannot. If an symbol table has been truncated or damaged, there is a small probability that ldreadst will core dump rather than return FAILURE. The program must be loaded with the object file access routine library libmld.a. SEE ALSO ldopen(3X), ldclose(3X) ldfcn(4)