HPlogo HP-UX Reference Volume 3 of 5 > n

nlist(4)

» 

Technical documentation

Complete book in PDF

 » Table of Contents

 » Index

NAME

nlist, nlist64 — nlist and nlist64 structure formats, respectively

SYNOPSIS

#include <nlist.h>

Remarks

The exact content of the structures defined below can be best found by examining /usr/include/nlist.h. It varies somewhat between various HP-UX implementations.

DESCRIPTION

nlist() and nlist64() can be used to extract information from the symbol table in an object file (see nlist(3C)). They are basically the same tool except nlist() can only process SOM files on a PA32 system while nlist64() can process SOM and Elf files on either a PA32 or PA64 system. Since symbol tables are machine dependent (as defined in each implementation's copy of <a.out.h>), a header file, nlist.h is defined to encapsulate the differences.

The nlist function, either nlist() or nlist64(), when used with the corresponding nlist structure, can be used to extract certain information about selected symbols in the symbol table. The data associated with each symbol is machine specific, thus only the name and position of the n_name field in the function is standardized by HP-UX. The rest of the structure includes at least the value and type of the symbol. The names and meanings of all fields not standardized will change no more than necessary.

struct nlist { char *n_name; /* other fields as needed; the following are suggested if they apply */ char *n_qual; unsigned short n_type; unsigned short n_scope; unsigned int n_info; unsigned long n_value; };

struct nlist64 { char *n_name; /* other fields as needed; the following are suggested if they apply */ char *n_qual; unsigned short n_type; unsigned short n_scope; unsigned long n_info; unsigned long long n_value; unsigned int is_elf:1; unsigned int is_32:1; unsigned int reserved1:30; unsigned long long reserved2; unsigned long long reserved3; };

© Hewlett-Packard Development Company, L.P.