LDGETNAME(3X) SysV LDGETNAME(3X)
NAME
ldgetname - retrieve symbol name for common object file symbol table
entry
SYNOPSIS
#include <stdio.h>
#include <filehdr.h>
#include <syms.h>
#include <ldfcn.h>
char *ldgetname (ldptr, symbol)
LDFILE *ldptr;
SYMENT *symbol;
DESCRIPTION
ldgetname returns a pointer to the name associated with symbol as a
string. The string is contained in a static buffer local to ldgetname
that is overwritten by each call to ldgetname, and therefore must be
copied by the caller if the name is to be saved.
ldgetname can be used to retrieve names from object files without any
backward compatibility problems. ldgetname will return NULL (defined in
stdio.h) for an object file if the name cannot be retrieved. This
situation can occur:
- if the "string table" cannot be found,
- if not enough memory can be allocated for the string table,
- if the string table appears not to be a string table (for example,
if an auxiliary entry is handed to ldgetname that looks like a
reference to a name in a nonexistent string table), or
- if the name's offset into the string table is past the end of the
string table.
Typically, ldgetname will be called immediately after a successful call
to ldtbread to retrieve the name associated with the symbol table entry
filled by ldtbread.
The program must be loaded with the object file access routine library
libld.a.
SEE ALSO
ldclose(3X), ldopen(3X), ldtbread(3X), ldtbseek(3X), ldfcn(4).