|| FreeBSD Library Functions Manual
retrieve symbol table names from a kernel image
Kernel Data Access Library (libkvm, -lkvm)
#include < kvm.h>
#include < nlist.h>
kvm_nlist( kvm_t *kd, struct nlist *nl);
() function retrieves the symbol table entries indicated by the name list argument
. This argument points to an array of nlist structures, terminated by an entry whose n_name field is
). Each symbol is looked up using the n_name field, and if found, the corresponding n_type and n_value fields are filled in. These fields are set to 0 if the symbol is not found.
The kldsym(2) system call is used to locate the symbol. This is a less than perfect emulation of the nlist values but has the advantage of being aware of kernel modules and is reasonably fast.
RETURN VALUES The
kvm_nlist() function returns the number of invalid entries found. If the kernel symbol table was unreadable, -1 is returned.