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 PEXECNAME 3PROC 16 .Os 17 .Sh NAME 18 .Nm Pexecname 19 .Nd obtain full path to process executable 20 .Sh LIBRARY 21 .Lb libproc 22 .Sh SYNOPSIS 23 .In libproc.h 24 .Ft "char *" 25 .Fo Pexecname 26 .Fa "struct ps_prochandle *P" 27 .Fa "char *buf" 28 .Fa "size_t buflen" 29 .Fc 30 .Sh DESCRIPTION 31 The 32 .Fn Pexecname 33 function attempts to determine the full path to the process executable 34 referred to by the handle 35 .Fa P . 36 .Pp 37 If found, 38 .Fa buf 39 will be filled in with the full path for up to 40 .Fa buflen 41 bytes, including the null terminator. 42 .Pp 43 For a handle grabbed with 44 .Xr Pgrab_file 3PROC , 45 the executable refers to the path of the file itself. 46 For a core file, the system attempts to determine the original path of the 47 executable and return that. 48 .Sh RETURN VALUES 49 Upon successful completion, the 50 .Fn Pexecname 51 function returns the value of 52 .Fa buf , 53 and up to 54 .Fa buflen 55 bytes of 56 .Fa buf 57 are filled in with a null-terminated path. 58 Otherwise, 59 .Dv NULL 60 is returned. 61 .Sh INTERFACE STABILITY 62 .Sy Uncommitted 63 .Sh MT-LEVEL 64 See 65 .Sy LOCKING 66 in 67 .Xr libproc 3LIB . 68 .Sh SEE ALSO 69 .Xr libproc 3LIB