LDGETNAME(3X)

NAME
ldgetname - retrieve symbol name for COFF 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;

AVAILABILITY

Available only on Sun 386i systems running a SunOS 4.0.x release or earlier. Not a SunOS 4.1 release feature.

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), ldfcn(3), ldopen(3X), ldtbread(3X), ldtbseek(3X)