1.\" 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 2020 OmniOS Community Edition (OmniOSce) Association. 13.\" 14.Dd November 27, 2023 15.Dt PROC_FDINFOWALK 3PROC 16.Os 17.Sh NAME 18.Nm proc_fdinfowalk 19.Nd walk the additional miscellaneous information in a prfdinfo_t structure 20.Sh LIBRARY 21.Lb libproc 22.Sh SYNOPSIS 23.In libproc.h 24.Ft int 25.Fo proc_fdinfowalk 26.Fa "const prfdinfo_t *info" 27.Fa "proc_fdinfowalk_f *func" 28.Fa "void *arg" 29.Fc 30.Sh DESCRIPTION 31The 32.Fn proc_fdinfowalk 33function walks a 34.Vt prfdinfo_t 35structure and calls the callback function 36.Fa func 37once for each miscellaneous item of information present, 38along with the user-specified 39.Fa arg . 40The definition of 41.Sy proc_fdinfowalk_f 42is available in 43.Xr libproc 3LIB . 44The miscellaneous data types and structures are found in the 45.Sx fdinfo 46section of 47.Xr proc 5 . 48.Pp 49.Fa func 50will be called once for each miscellaneous item, providing the item's 51.Fa type , 52.Fa size 53and 54.Fa address. 55The 56.Fa size 57may include trailing padding bytes which will be set to zero. 58.Pp 59The return value of the caller's 60.Fa func 61function determines whether or not iteration will continue. 62If 63.Fa func 64returns a non-zero value, then iteration will terminate and that 65return value will be returned to the caller. 66To distinguish between system errors and caller errors, it is recommended that 67the function only return positive integers in the event of an error. 68.Sh RETURN VALUES 69Upon successful completion, the 70.Fn proc_fdinfowalk 71function returns 72.Sy 0 . 73Otherwise, 74.Sy -1 75is returned and 76.Sy errno 77is updated to reflect the error that occurred. 78.Sh ERRORS 79In addition to the errors listed below, the 80.Fn proc_fdinfowalk 81function may fail for the same reasons as the 82.Xr opendir 3C , 83.Xr readdir 3C , 84and 85.Xr malloc 3C 86functions. 87.Sh INTERFACE STABILITY 88.Sy Uncommitted 89.Sh MT-LEVEL 90.Sy MT-Safe 91.Sh SEE ALSO 92.Xr malloc 3C , 93.Xr opendir 3C , 94.Xr readdir 3C , 95.Xr libproc 3LIB , 96.Xr proc 5 97