nlist(3E) MISC. REFERENCE MANUAL PAGES nlist(3E)
NAME
nlist - get entries from name list
SYNOPSIS
cc [flag ...] file ... -lelf [library ...]
#include <nlist.h>
int nlist (const char *filename, struct nlist *nl);
DESCRIPTION
nlist examines the name list in the executable file whose
name is pointed to by filename, and selectively extracts a
list of values and puts them in the array of nlist struc-
tures pointed to by nl. The name list nl consists of an
array of structures containing names of variables, types,
and values. The list is terminated with a null name, that
is, a null string is in the name position of the structure.
Each variable name is looked up in the name list of the
file. If the name is found, the type, value, storage class,
and section number of the name are inserted in the other
fields. The type field may be set to 0 if the file was not
compiled with the -g option to cc(1). nlist will always
return the information for an external symbol of a given
name if the name exists in the file. If an external symbol
does not exist, and there is more than one symbol with the
specified name in the file (such as static symbols defined
in separate files), the values returned will be for the last
occurrence of that name in the file. If the name is not
found, all fields in the structure except nname are set to
0.
This function is useful for examining the system name list
kept in the file /stand/unix. In this way programs can
obtain system addresses that are up to date.
SEE ALSO
a.out(4).
DIAGNOSTICS
All value entries are set to 0 if the file cannot be read or
if it does not contain a valid name list.
nlist returns 0 on success, -1 on error.
Last change: C Programming Language Utilities 1