nlist(3E) 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() structures 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,
i.e. by a structure containing a null string in the name position.
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.
RESULT
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.
SEE ALSO
a.out(4).
Page 1 Reliant UNIX 5.44 Printed 11/98