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 May 11, 2016 15.Dt PASFD 3PROC 16.Os 17.Sh NAME 18.Nm Pasfd 19.Nd obtain the process address space file descriptor 20.Sh LIBRARY 21.Lb libproc 22.Sh SYNOPSIS 23.In libproc.h 24.Ft int 25.Fo Pasfd 26.Fa "struct ps_prochandle *P" 27.Fc 28.Sh DESCRIPTION 29The 30.Fn Pasfd 31funtion returns a file descriptor that allows direct access to the 32address space of the process handle 33.Fa P . 34A defined file descriptor is provided when using the 35.Xr Pcreate 3PROC , 36.Xr Pgrab 3PROC , 37.Xr Pgrab_file 3PROC , 38and 39.Xr Pgrab_core 3PROC 40functions. 41Note that the address space may be different in each of these cases and doesn't 42necessarily correspond to the /proc 43.Sy as 44file, except for live processes. 45Other means of obtaining a 46.Sy libproc 47process handle may not define a file descriptor that contains the 48address space. 49.Pp 50The returned file descriptor must not be closed and is only valid for 51as long as the corresponding process handle 52.Fa P 53is valid. 54After a call to 55.Xr Prelease 3PROC 56the file descriptor is invalidated. 57.Sh RETURN VALUES 58Upon successful completion, the 59.Fn Pasfd 60function returns a valid file descriptor. 61Otherwise, if none exists, then 62.Sy -1 63is returned. 64.Sh INTERFACE STABILITY 65.Sy Uncommitted 66.Sh MT-LEVEL 67See 68.Sy LOCKING 69in 70.Xr libproc 3LIB . 71.Sh SEE ALSO 72.Xr libproc 3LIB , 73.Xr Pcreate 3PROC , 74.Xr Pgrab 3PROC , 75.Xr Pgrab_core 3PROC , 76.Xr Pgrab_file 3PROC , 77.Xr Prelease 3PROC , 78.Xr proc 5 79