143051d27SRobert Mustacchi.\" 243051d27SRobert Mustacchi.\" This file and its contents are supplied under the terms of the 343051d27SRobert Mustacchi.\" Common Development and Distribution License ("CDDL"), version 1.0. 443051d27SRobert Mustacchi.\" You may only use this file in accordance with the terms of version 543051d27SRobert Mustacchi.\" 1.0 of the CDDL. 643051d27SRobert Mustacchi.\" 743051d27SRobert Mustacchi.\" A full copy of the text of the CDDL should have accompanied this 843051d27SRobert Mustacchi.\" source. A copy of the CDDL is also available via the Internet at 943051d27SRobert Mustacchi.\" http://www.illumos.org/license/CDDL. 1043051d27SRobert Mustacchi.\" 1143051d27SRobert Mustacchi.\" 1243051d27SRobert Mustacchi.\" Copyright 2015 Joyent, Inc. 1343051d27SRobert Mustacchi.\" 1443051d27SRobert Mustacchi.Dd May 11, 2016 1543051d27SRobert Mustacchi.Dt PZONENAME 3PROC 1643051d27SRobert Mustacchi.Os 1743051d27SRobert Mustacchi.Sh NAME 1843051d27SRobert Mustacchi.Nm Pzonename , 1943051d27SRobert Mustacchi.Nm Pzoneroot , 2043051d27SRobert Mustacchi.Nm Pzonepath 2143051d27SRobert Mustacchi.Nd get zone name, root, and full object path 22ab618543SJohn Levon.Sh LIBRARY 2343051d27SRobert Mustacchi.Lb libproc 24ab618543SJohn Levon.Sh SYNOPSIS 2543051d27SRobert Mustacchi.In libproc.h 2643051d27SRobert Mustacchi.Ft char * 2743051d27SRobert Mustacchi.Fo Pzonename 2843051d27SRobert Mustacchi.Fa "struct ps_prochandle *P" 2943051d27SRobert Mustacchi.Fa "char *buf" 3043051d27SRobert Mustacchi.Fa "size_t nbyte" 3143051d27SRobert Mustacchi.Fc 3243051d27SRobert Mustacchi.Ft char * 3343051d27SRobert Mustacchi.Fo Pzoneroot 3443051d27SRobert Mustacchi.Fa "struct ps_prochandle *P" 3543051d27SRobert Mustacchi.Fa "char *buf" 3643051d27SRobert Mustacchi.Fa "size_t nbyte" 3743051d27SRobert Mustacchi.Fc 3843051d27SRobert Mustacchi.Ft char * 3943051d27SRobert Mustacchi.Fo Pzonepath 4043051d27SRobert Mustacchi.Fa "struct ps_prochandle *P" 4143051d27SRobert Mustacchi.Fa "const char *path" 4243051d27SRobert Mustacchi.Fa "char *buf" 4343051d27SRobert Mustacchi.Fa "size_t nbyte" 4443051d27SRobert Mustacchi.Fc 4543051d27SRobert Mustacchi.Sh DESCRIPTION 4643051d27SRobert MustacchiThe 4743051d27SRobert Mustacchi.Fn Pzonename 4843051d27SRobert Mustacchifunction attempts to determine the name of the zone for the process 4943051d27SRobert Mustacchihandle 5043051d27SRobert Mustacchi.Fa P . 5143051d27SRobert MustacchiIf found, up to 5243051d27SRobert Mustacchi.Fa nbytes , 5343051d27SRobert Mustacchiincluding a null terminator, will be written into 5443051d27SRobert Mustacchi.Fa buf . 5543051d27SRobert Mustacchi.Pp 5643051d27SRobert MustacchiThe 5743051d27SRobert Mustacchi.Fn Pzoneroot 5843051d27SRobert Mustacchifunction attempts to determine the root of the zone corresponding to the 5943051d27SRobert Mustacchiprocess handle 6043051d27SRobert Mustacchi.Fa P . 6143051d27SRobert MustacchiIf found, up to 6243051d27SRobert Mustacchi.Fa nbytes , 6343051d27SRobert Mustacchiincluding a null terminator, will be written into 6443051d27SRobert Mustacchi.Fa buf . 6543051d27SRobert MustacchiIf the root cannot be found, for example a core file that did not 6643051d27SRobert Mustacchioriginate on the current system, then the empty string will be written 6743051d27SRobert Mustacchiinto 6843051d27SRobert Mustacchi.Fa buf . 6943051d27SRobert Mustacchi.Pp 7043051d27SRobert MustacchiThe 7143051d27SRobert Mustacchi.Fn Pzonepath 7243051d27SRobert Mustacchifunction attempts to derive the full path of the object 7343051d27SRobert Mustacchi.Fa path 7443051d27SRobert Mustacchiin a zone relative to the root associated with the current process 7543051d27SRobert Mustacchihandle 7643051d27SRobert Mustacchi.Fa P . 7743051d27SRobert MustacchiIf found, up to 7843051d27SRobert Mustacchi.Fa nbytes , 7943051d27SRobert Mustacchiincluding a null terminator, will be written into 8043051d27SRobert Mustacchi.Fa buf . 8143051d27SRobert MustacchiIt is legal to use the same buffer for both 8243051d27SRobert Mustacchi.Fa path 8343051d27SRobert Mustacchiand 8443051d27SRobert Mustacchi.Fa buf ; 8543051d27SRobert Mustacchiit will not be updated unless the function completes successfully. 8643051d27SRobert Mustacchi.Sh RETURN VALUES 8743051d27SRobert MustacchiUpon successful completion, the 8843051d27SRobert Mustacchi.Fn Pzonename , 8943051d27SRobert Mustacchi.Fn Pzoneroot , 9043051d27SRobert Mustacchiand 9143051d27SRobert Mustacchi.Fn Pzonepath 9243051d27SRobert Mustacchifunctions return 9343051d27SRobert Mustacchi.Sy buf . 9443051d27SRobert MustacchiOtherwise, if an error occurred, 9543051d27SRobert Mustacchi.Dv NULL 9643051d27SRobert Mustacchiis returned and 9743051d27SRobert Mustacchi.Sy errno 9843051d27SRobert Mustacchiis set. 9943051d27SRobert Mustacchi.Sh ERRORS 10043051d27SRobert MustacchiThe 10143051d27SRobert Mustacchi.Fn Pzonename 10243051d27SRobert Mustacchiand 10343051d27SRobert Mustacchi.Fn Pzoneroot 10443051d27SRobert Mustacchifunctions will fail if: 10543051d27SRobert Mustacchi.Bl -tag -width Er 10643051d27SRobert Mustacchi.It Er ENODATA 10743051d27SRobert Mustacchi.Fa P 10843051d27SRobert Mustacchirefers to a core file and zone information was not available in the core 10943051d27SRobert Mustacchidump or 11043051d27SRobert Mustacchi.Fa P 11143051d27SRobert Mustacchirefers to an ELF object grabbed through 11272d3dbb9SYuri Pankov.Xr Pgrab_file 3PROC . 11343051d27SRobert Mustacchi.It Er EFAULT 11443051d27SRobert Mustacchi.Fa P 11543051d27SRobert Mustacchirefers to an active process and 11643051d27SRobert Mustacchi.Fa buf 11743051d27SRobert Mustacchiis invalid. 11843051d27SRobert Mustacchi.El 11943051d27SRobert Mustacchi.Pp 12043051d27SRobert MustacchiThe 12143051d27SRobert Mustacchi.Fn Pzoneroot 12243051d27SRobert Mustacchifunction will fail if: 12343051d27SRobert Mustacchi.Bl -tag -width Er 12443051d27SRobert Mustacchi.It Er ENOMEM 12543051d27SRobert MustacchiInsufficient memory was available on the system. 12643051d27SRobert Mustacchi.El 12743051d27SRobert Mustacchi.Sh INTERFACE STABILITY 12843051d27SRobert Mustacchi.Sy Uncommitted 12943051d27SRobert Mustacchi.Sh MT-LEVEL 13043051d27SRobert MustacchiSee 13143051d27SRobert Mustacchi.Sy LOCKING 13243051d27SRobert Mustacchiin 13343051d27SRobert Mustacchi.Xr libproc 3LIB . 13443051d27SRobert Mustacchi.Sh SEE ALSO 13543051d27SRobert Mustacchi.Xr getzoneidbyname 3C , 13643051d27SRobert Mustacchi.Xr libproc 3LIB , 137*bbf21555SRichard Lowe.Xr proc 5 138