8354 sync regcomp(3C) with upstream (fix make catalog)
[unleashed/tickless.git] / usr / src / man / man3proc / Pzonename.3proc
blob0dc78d5959a00d5b7af25d47380f0faef6db5c75
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 PZONENAME 3PROC
16 .Os
17 .Sh NAME
18 .Nm Pzonename ,
19 .Nm Pzoneroot ,
20 .Nm Pzonepath
21 .Nd get zone name, root, and full object path
22 .Sh SYNOPSIS
23 .Lb libproc
24 .In libproc.h
25 .Ft char *
26 .Fo Pzonename
27 .Fa "struct ps_prochandle *P"
28 .Fa "char *buf"
29 .Fa "size_t nbyte"
30 .Fc
31 .Ft char *
32 .Fo Pzoneroot
33 .Fa "struct ps_prochandle *P"
34 .Fa "char *buf"
35 .Fa "size_t nbyte"
36 .Fc
37 .Ft char *
38 .Fo Pzonepath
39 .Fa "struct ps_prochandle *P"
40 .Fa "const char *path"
41 .Fa "char *buf"
42 .Fa "size_t nbyte"
43 .Fc
44 .Sh DESCRIPTION
45 The
46 .Fn Pzonename
47 function attempts to determine the name of the zone for the process
48 handle
49 .Fa P .
50 If found, up to
51 .Fa nbytes ,
52 including a null terminator, will be written into
53 .Fa buf .
54 .Pp
55 The
56 .Fn Pzoneroot
57 function attempts to determine the root of the zone corresponding to the
58 process handle
59 .Fa P .
60 If found, up to
61 .Fa nbytes ,
62 including a null terminator, will be written into
63 .Fa buf .
64 If the root cannot be found, for example a core file that did not
65 originate on the current system, then the empty string will be written
66 into
67 .Fa buf .
68 .Pp
69 The
70 .Fn Pzonepath
71 function attempts to derive the full path of the object
72 .Fa path
73 in a zone relative to the root associated with the current process
74 handle
75 .Fa P .
76 If found, up to
77 .Fa nbytes ,
78 including a null terminator, will be written into
79 .Fa buf .
80 It is legal to use the same buffer for both
81 .Fa path
82 and
83 .Fa buf ;
84 it will not be updated unless the function completes successfully.
85 .Sh RETURN VALUES
86 Upon successful completion, the
87 .Fn Pzonename ,
88 .Fn Pzoneroot ,
89 and
90 .Fn Pzonepath
91 functions return
92 .Sy buf .
93 Otherwise, if an error occurred,
94 .Dv NULL
95 is returned and
96 .Sy errno
97 is set.
98 .Sh ERRORS
99 The
100 .Fn Pzonename
102 .Fn Pzoneroot
103 functions will fail if:
104 .Bl -tag -width Er
105 .It Er ENODATA
106 .Fa P
107 refers to a core file and zone information was not available in the core
108 dump or
109 .Fa P
110 refers to an ELF object grabbed through
111 .Xr Pgrab_file 3PROC .
112 .It Er EFAULT
113 .Fa P
114 refers to an active process and
115 .Fa buf
116 is invalid.
120 .Fn Pzoneroot
121 function will fail if:
122 .Bl -tag -width Er
123 .It Er ENOMEM
124 Insufficient memory was available on the system.
126 .Sh INTERFACE STABILITY
127 .Sy Uncommitted
128 .Sh MT-LEVEL
130 .Sy LOCKING
132 .Xr libproc 3LIB .
133 .Sh SEE ALSO
134 .Xr getzoneidbyname 3C ,
135 .Xr libproc 3LIB ,
136 .Xr proc 4