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 31The 32.Fn Pexecname 33function attempts to determine the full path to the process executable 34referred to by the handle 35.Fa P . 36.Pp 37If found, 38.Fa buf 39will be filled in with the full path for up to 40.Fa buflen 41bytes, including the null terminator. 42.Pp 43For a handle grabbed with 44.Xr Pgrab_file 3PROC , 45the executable refers to the path of the file itself. 46For a core file, the system attempts to determine the original path of the 47executable and return that. 48.Sh RETURN VALUES 49Upon successful completion, the 50.Fn Pexecname 51function returns the value of 52.Fa buf , 53and up to 54.Fa buflen 55bytes of 56.Fa buf 57are filled in with a null-terminated path. 58Otherwise, 59.Dv NULL 60is returned. 61.Sh INTERFACE STABILITY 62.Sy Uncommitted 63.Sh MT-LEVEL 64See 65.Sy LOCKING 66in 67.Xr libproc 3LIB . 68.Sh SEE ALSO 69.Xr libproc 3LIB 70