Pfdinfo_iter
—
iterate open files in a process
Process Control Library (libproc, -lproc)
#include
<libproc.h>
int
Pfdinfo_iter
(
struct
ps_prochandle *P,
proc_fdinfo_f *func,
void *data);
The
Pfdinfo_iter
() function iterates over the
open files in the process represented by
P.
For each open file, the callback function
func
will be invoked and it will be passed the
data argument as well as a pointer to a
prfdinfo_t structure defined in
libproc(3LIB). For the full signature of the
proc_fdinfo_f see
libproc(3LIB).
The return value of
func controls whether or
not iteration continues. If
func returns
0, then iteration will continue. However, if
func instead returns a non-zero value, then
iteration will halt and that value will be used as the return value of the
Pfdinfo_iter
() function. Because the
Pfdinfo_iter
() function returns
-1 to an indicate its own errors, it is
recommended that the callback function does not return
-1 to indicate an error so that the caller may
distinguish between the failure of the callback function and the failure of
the
Pfdinfo_iter
() function.
Upon successful completion, the
Pfdinfo_iter
() returns
0. Otherwise, if there was an internal error then
-1 is returned. Otherwise, if the callback
function
func returns non-zero, then its
return value will be returned instead.
Uncommitted
See
LOCKING in
libproc(3LIB).
libproc(3LIB)