blob: cb03a77f482216bc94bca3d15e5d6de965a78385 [file] [log] [blame]
Robert Mustacchi43051d22016-05-12 09:47:18 -07001.\"
2.\" This file and its contents are supplied under the terms of the
3.\" Common Development and Distribution License ("CDDL"), version 1.0.
4.\" You may only use this file in accordance with the terms of version
5.\" 1.0 of the CDDL.
6.\"
7.\" A full copy of the text of the CDDL should have accompanied this
8.\" source. A copy of the CDDL is also available via the Internet at
9.\" http://www.illumos.org/license/CDDL.
10.\"
11.\"
12.\" Copyright 2015 Joyent, Inc.
13.\"
14.Dd May 11, 2016
15.Dt PFDINFO_ITER 3PROC
16.Os
17.Sh NAME
18.Nm Pfdinfo_iter
19.Nd iterate open files in a process
John Levonab618542018-10-08 15:34:11 +010020.Sh LIBRARY
Robert Mustacchi43051d22016-05-12 09:47:18 -070021.Lb libproc
John Levonab618542018-10-08 15:34:11 +010022.Sh SYNOPSIS
Robert Mustacchi43051d22016-05-12 09:47:18 -070023.In libproc.h
24.Ft int
25.Fo Pfdinfo_iter
26.Fa "struct ps_prochandle *P"
27.Fa "proc_fdinfo_f *func"
28.Fa "void *data"
29.Fc
30.Sh DESCRIPTION
31The
32.Fn Pfdinfo_iter
33function iterates over the open files in the process represented by
34.Fa P .
35.Pp
36For each open file, the callback function
37.Fa func
38will be invoked and it will be passed the
39.Fa data
40argument as well as a pointer to a
41.Sy prfdinfo_t
42structure defined in
43.Xr libproc 3LIB .
44For the full signature of the
45.Vt proc_fdinfo_f
46see
47.Xr libproc 3LIB .
48.Pp
49The return value of
50.Fa func
Yuri Pankov72d3dbb2017-05-29 03:56:19 +030051controls whether or not iteration continues.
52If
Robert Mustacchi43051d22016-05-12 09:47:18 -070053.Fa func
54returns
55.Sy 0 ,
Yuri Pankov72d3dbb2017-05-29 03:56:19 +030056then iteration will continue.
57However, if
Robert Mustacchi43051d22016-05-12 09:47:18 -070058.Fa func
59instead returns a non-zero value, then iteration will halt and that
60value will be used as the return value of the
61.Fn Pfdinfo_iter
Yuri Pankov72d3dbb2017-05-29 03:56:19 +030062function.
63Because the
Robert Mustacchi43051d22016-05-12 09:47:18 -070064.Fn Pfdinfo_iter
65function returns
66.Sy -1
67to an indicate its own errors, it is recommended that the callback
68function does not return
69.Sy -1
70to indicate an error so that the caller may distinguish between the
71failure of the callback function and the failure of the
72.Fn Pfdinfo_iter
73function.
74.Sh RETURN VALUES
75Upon successful completion, the
76.Fn Pfdinfo_iter
77returns
78.Sy 0 .
79Otherwise, if there was an internal error then
80.Sy -1
Yuri Pankov72d3dbb2017-05-29 03:56:19 +030081is returned.
82Otherwise, if the callback function
Robert Mustacchi43051d22016-05-12 09:47:18 -070083.Fa func
84returns non-zero, then its return value will be returned instead.
85.Sh INTERFACE STABILITY
86.Sy Uncommitted
87.Sh MT-LEVEL
88See
89.Sy LOCKING
90in
91.Xr libproc 3LIB .
92.Sh SEE ALSO
93.Xr libproc 3LIB