Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ nlist(3E) — UnixWare 2.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

a.out(4)

elf(3E)

getksym(2)

kmem(7)






       nlist(3E)                                                  nlist(3E)


       NAME
             nlist - get entries from name list

       SYNOPSIS
             cc [flag . . . ] file . . . -lelf [library] . . .
             #include <nlist.h>
             int nlist (const char *file, struct nlist *nl);

       DESCRIPTION
             nlist examines the name list in the executable file whose name
             is pointed to by file, 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, 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 n_name
             are set to 0.

             If you want to examine symbols in a running kernel (and these
             symbols are associated with a dynamically loaded module), then
             you must use ioctl [see kmem(7)] or getksym(2), instead of
             nlist.  To learn if a module is dynamically loaded, check to
             see if it is present in /etc/conf/mod.d.

          Return Values
             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.

       REFERENCES
             a.out(4), elf(3E), getksym(2), kmem(7)





                           Copyright 1994 Novell, Inc.               Page 1








Typewritten Software • bear@typewritten.org • Edmonds, WA 98026