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 2015 Joyent, Inc. 13.\" 14.Dd March 2, 2017 15.Dt PENV_ITER 3PROC 16.Os 17.Sh NAME 18.Nm Penv_iter 19.Nd iterate process environment 20.Sh SYNOPSIS 21.Lb libproc 22.In libproc.h 23.Ft int 24.Fo Penv_iter 25.Fa "struct ps_prochandle *P" 26.Fa "proc_env_f *func" 27.Fa "void *data" 28.Fc 29.Sh DESCRIPTION 30The 31.Fn Penv_iter 32function iterates over the environment of the process represented by 33.Fa P . 34For each environment variable, 35.Fa func 36is passed the caller argument 37.Fa data 38along with the address of the environment variable and the key-value 39pair. For the full signature of the 40.Ft proc_env_f 41callback, see 42.Xr libproc 3LIB . 43.Pp 44The callback's return value controls whether or not iteration 45proceeds. If 46.Fa func 47returns zero, then iteration continues. Otherwise, iteration is 48terminated and the value is returned. It is recommended that callback 49functions do not return 50.Sy -1 51so as to distinguish between the failure of the 52.Fn Penv_iter 53function and the callback function. 54.Sh RETURN VALUES 55Upon successful completion, the 56.Fn Penv_iter 57function returns 58.Sy 0 . 59Otherwise, if there was an internal error, for example due to a 60corrupted environment, then 61.Sy -1 62is returned. Otherwise, if the callback function 63.Fa func 64returns non-zero, then its return value will be returned instead. 65.Sh INTERFACE STABILITY 66.Sy Uncommitted 67.Sh MT-LEVEL 68See 69.Sy LOCKING 70in 71.Xr libproc 3LIB . 72.Sh SEE ALSO 73.Xr libproc 3LIB 74