xref: /openbsd-src/lib/libkvm/kvm_getfiles.3 (revision 62a742911104f98b9185b2c6b6007d9b1c36396c)
1.\"	$OpenBSD: kvm_getfiles.3,v 1.3 1998/08/06 21:23:00 kstailey Exp $
2.\"	$NetBSD: kvm_getfiles.3,v 1.3 1996/03/18 22:33:23 thorpej Exp $
3.\"
4.\" Copyright (c) 1992, 1993
5.\"	The Regents of the University of California.  All rights reserved.
6.\"
7.\" This code is derived from software developed by the Computer Systems
8.\" Engineering group at Lawrence Berkeley Laboratory under DARPA contract
9.\" BG 91-66 and contributed to Berkeley.
10.\"
11.\" Redistribution and use in source and binary forms, with or without
12.\" modification, are permitted provided that the following conditions
13.\" are met:
14.\" 1. Redistributions of source code must retain the above copyright
15.\"    notice, this list of conditions and the following disclaimer.
16.\" 2. Redistributions in binary form must reproduce the above copyright
17.\"    notice, this list of conditions and the following disclaimer in the
18.\"    documentation and/or other materials provided with the distribution.
19.\" 3. All advertising materials mentioning features or use of this software
20.\"    must display the following acknowledgement:
21.\"	This product includes software developed by the University of
22.\"	California, Berkeley and its contributors.
23.\" 4. Neither the name of the University nor the names of its contributors
24.\"    may be used to endorse or promote products derived from this software
25.\"    without specific prior written permission.
26.\"
27.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
28.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
29.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
30.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
31.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
32.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
33.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
34.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
35.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
36.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
37.\" SUCH DAMAGE.
38.\"
39.\"     @(#)kvm_getfiles.3	8.2 (Berkeley) 4/19/94
40.\"
41.Dd April 19, 1994
42.Dt KVM_GETFILES 3
43.Os
44.Sh NAME
45.Nm kvm_getfiles
46.Nd survey open files
47.Sh SYNOPSIS
48.Fd #include <kvm.h>
49.Fd #define _KERNEL
50.Fd #include <sys/file.h>
51.Fd #undef _KERNEL
52.\" .Fa kvm_t *kd
53.br
54.Ft char *
55.Fn kvm_getfiles "kvm_t *kd" "int op" "int arg" "int *cnt"
56.Sh DESCRIPTION
57.Fn kvm_getfiles
58returns a (sub-)set of the open files in the kernel indicated by
59.Fa kd.
60The
61.Fa op
62and
63.Fa arg
64arguments constitute a predicate which limits the set of files
65returned.  No predicates are currently defined.
66.Pp
67The number of processes found is returned in the reference parameter
68.Fa cnt .
69The files are returned as a contiguous array of file structures,
70preceded by the address of the first file entry in the kernel.
71This memory is owned by kvm and is not guaranteed to be persistent across
72subsequent kvm library calls.  Data should be copied out if it needs to be
73saved.
74.Sh RETURN VALUES
75.Fn kvm_getfiles
76will return NULL on failure.
77.Pp
78.Sh BUGS
79This routine does not belong in the kvm interface.
80.Sh SEE ALSO
81.Xr kvm 3 ,
82.Xr kvm_open 3 ,
83.Xr kvm_openfiles 3 ,
84.Xr kvm_close 3 ,
85.Xr kvm_read 3 ,
86.Xr kvm_write 3 ,
87.Xr kvm_nlist 3 ,
88.Xr kvm_geterr 3
89