1*9da22751SDavid van Moolenbroek.\" $NetBSD: kvm_nlist.3,v 1.11 2003/08/07 16:44:37 agc Exp $ 2*9da22751SDavid van Moolenbroek.\" 3*9da22751SDavid van Moolenbroek.\" Copyright (c) 1992, 1993 4*9da22751SDavid van Moolenbroek.\" The Regents of the University of California. All rights reserved. 5*9da22751SDavid van Moolenbroek.\" 6*9da22751SDavid van Moolenbroek.\" This code is derived from software developed by the Computer Systems 7*9da22751SDavid van Moolenbroek.\" Engineering group at Lawrence Berkeley Laboratory under DARPA contract 8*9da22751SDavid van Moolenbroek.\" BG 91-66 and contributed to Berkeley. 9*9da22751SDavid van Moolenbroek.\" 10*9da22751SDavid van Moolenbroek.\" Redistribution and use in source and binary forms, with or without 11*9da22751SDavid van Moolenbroek.\" modification, are permitted provided that the following conditions 12*9da22751SDavid van Moolenbroek.\" are met: 13*9da22751SDavid van Moolenbroek.\" 1. Redistributions of source code must retain the above copyright 14*9da22751SDavid van Moolenbroek.\" notice, this list of conditions and the following disclaimer. 15*9da22751SDavid van Moolenbroek.\" 2. Redistributions in binary form must reproduce the above copyright 16*9da22751SDavid van Moolenbroek.\" notice, this list of conditions and the following disclaimer in the 17*9da22751SDavid van Moolenbroek.\" documentation and/or other materials provided with the distribution. 18*9da22751SDavid van Moolenbroek.\" 3. Neither the name of the University nor the names of its contributors 19*9da22751SDavid van Moolenbroek.\" may be used to endorse or promote products derived from this software 20*9da22751SDavid van Moolenbroek.\" without specific prior written permission. 21*9da22751SDavid van Moolenbroek.\" 22*9da22751SDavid van Moolenbroek.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 23*9da22751SDavid van Moolenbroek.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 24*9da22751SDavid van Moolenbroek.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 25*9da22751SDavid van Moolenbroek.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 26*9da22751SDavid van Moolenbroek.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 27*9da22751SDavid van Moolenbroek.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 28*9da22751SDavid van Moolenbroek.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29*9da22751SDavid van Moolenbroek.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30*9da22751SDavid van Moolenbroek.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31*9da22751SDavid van Moolenbroek.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32*9da22751SDavid van Moolenbroek.\" SUCH DAMAGE. 33*9da22751SDavid van Moolenbroek.\" 34*9da22751SDavid van Moolenbroek.\" @(#)kvm_nlist.3 8.1 (Berkeley) 6/4/93 35*9da22751SDavid van Moolenbroek.\" 36*9da22751SDavid van Moolenbroek.Dd May 11, 2003 37*9da22751SDavid van Moolenbroek.Dt KVM_NLIST 3 38*9da22751SDavid van Moolenbroek.Os 39*9da22751SDavid van Moolenbroek.Sh NAME 40*9da22751SDavid van Moolenbroek.Nm kvm_nlist 41*9da22751SDavid van Moolenbroek.Nd retrieve symbol table names from a kernel image 42*9da22751SDavid van Moolenbroek.Sh LIBRARY 43*9da22751SDavid van Moolenbroek.Lb libkvm 44*9da22751SDavid van Moolenbroek.Sh SYNOPSIS 45*9da22751SDavid van Moolenbroek.In kvm.h 46*9da22751SDavid van Moolenbroek.In nlist.h 47*9da22751SDavid van Moolenbroek.Ft int 48*9da22751SDavid van Moolenbroek.Fn kvm_nlist "kvm_t *kd" "struct nlist *nl" 49*9da22751SDavid van Moolenbroek.Sh DESCRIPTION 50*9da22751SDavid van Moolenbroek.Fn kvm_nlist 51*9da22751SDavid van Moolenbroekretrieves the symbol table entries indicated by the name list argument 52*9da22751SDavid van Moolenbroek.Fa \&nl . 53*9da22751SDavid van MoolenbroekThis argument points to an array of nlist structures, terminated by 54*9da22751SDavid van Moolenbroekan entry whose n_name field is 55*9da22751SDavid van Moolenbroek.Dv NULL 56*9da22751SDavid van Moolenbroek(see 57*9da22751SDavid van Moolenbroek.Xr nlist 3 ) . 58*9da22751SDavid van MoolenbroekEach symbol is looked up using the n_name field, and if found, the 59*9da22751SDavid van Moolenbroekcorresponding n_type and n_value fields are filled in. 60*9da22751SDavid van MoolenbroekThese fields are set to 0 if the symbol is not found. 61*9da22751SDavid van Moolenbroek.Pp 62*9da22751SDavid van MoolenbroekIf 63*9da22751SDavid van Moolenbroek.Fa \&kd 64*9da22751SDavid van Moolenbroekwas created by a call to 65*9da22751SDavid van Moolenbroek.Fn kvm_open 66*9da22751SDavid van Moolenbroekwith a 67*9da22751SDavid van Moolenbroek.Dv NULL 68*9da22751SDavid van Moolenbroekexecutable image name, 69*9da22751SDavid van Moolenbroek.Fn kvm_nlist 70*9da22751SDavid van Moolenbroekwill use 71*9da22751SDavid van Moolenbroek.Pa /dev/ksyms 72*9da22751SDavid van Moolenbroekto retrieve the kernel symbol table. 73*9da22751SDavid van Moolenbroek.Sh RETURN VALUES 74*9da22751SDavid van MoolenbroekThe 75*9da22751SDavid van Moolenbroek.Fn kvm_nlist 76*9da22751SDavid van Moolenbroekfunction returns the number of invalid entries found. 77*9da22751SDavid van MoolenbroekIf the kernel symbol table was unreadable, -1 is returned. 78*9da22751SDavid van Moolenbroek.Sh FILES 79*9da22751SDavid van Moolenbroek.Bl -tag -width /dev/ksyms -compact 80*9da22751SDavid van Moolenbroek.It Pa /dev/ksyms 81*9da22751SDavid van Moolenbroek.El 82*9da22751SDavid van Moolenbroek.Sh SEE ALSO 83*9da22751SDavid van Moolenbroek.Xr kvm 3 , 84*9da22751SDavid van Moolenbroek.Xr kvm_close 3 , 85*9da22751SDavid van Moolenbroek.Xr kvm_getargv 3 , 86*9da22751SDavid van Moolenbroek.Xr kvm_getenvv 3 , 87*9da22751SDavid van Moolenbroek.Xr kvm_geterr 3 , 88*9da22751SDavid van Moolenbroek.Xr kvm_getprocs 3 , 89*9da22751SDavid van Moolenbroek.Xr kvm_open 3 , 90*9da22751SDavid van Moolenbroek.Xr kvm_openfiles 3 , 91*9da22751SDavid van Moolenbroek.Xr kvm_read 3 , 92*9da22751SDavid van Moolenbroek.Xr kvm_write 3 , 93*9da22751SDavid van Moolenbroek.Xr ksyms 4 94