summaryrefslogtreecommitdiff
path: root/usr/src/man/man3proc/Psetzoneid.3proc
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/man/man3proc/Psetzoneid.3proc')
-rw-r--r--usr/src/man/man3proc/Psetzoneid.3proc103
1 files changed, 103 insertions, 0 deletions
diff --git a/usr/src/man/man3proc/Psetzoneid.3proc b/usr/src/man/man3proc/Psetzoneid.3proc
new file mode 100644
index 0000000000..4d163c8b17
--- /dev/null
+++ b/usr/src/man/man3proc/Psetzoneid.3proc
@@ -0,0 +1,103 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2015 Joyent, Inc.
+.\"
+.Dd May 11, 2016
+.Dt PSETZONEID 3PROC
+.Os
+.Sh NAME
+.Nm Psetzoneid
+.Nd change processes zone id
+.Sh SYNOPSIS
+.Lb libproc
+.In libproc.h
+.Ft int
+.Fo Psetzoneid
+.Fa "struct ps_prochandle *P"
+.Fa "zoneid_t zoneid"
+.Fc
+.Sh DESCRIPTION
+The
+.Fn Psetzoneid
+function moves the process handle
+.Fa P
+into the zone specified by
+.Fa zoneid .
+A process that is in the non-global zone may only move between the
+global zone and its original zone. A process that is in the global zone
+may not use this interface to enter a non-global zone. This function
+will fail if called from a non-global zone. This function only
+manipulates the processes credentials.
+.Pp
+Care should be taken when moving a process around temporarily, such that
+if the process that is manipulating
+.Fa P
+dies, it does not cause
+.Fa P
+to resume running while still in the global zone. It is suggested that
+the
+.Sy PR_KLC
+flag is set with
+.Xr Psetflags 3PROC
+which will cause the process to terminate if the process that holds
+.Fa P
+unexpectedly terminates. See
+.Xr proc 4
+for more information on the
+.Sy PR_KLC
+flag.
+.Pp
+Note, only active processes may change their zone. It is an error to
+call this function on process handles that correspond to core files,
+zombie processes, or files.
+.Sh RETURN VALUES
+Upon successful completion, the
+.Fn Psetzoneid
+function returns
+.Sy 0
+and changes the zone for
+.Fa P .
+Otherwise,
+.Sy -1
+is returned and
+.Sy errno
+is set.
+.Sh ERRORS
+For a full list of possible errors see the
+.Sy DIAGNOSTICS
+section in
+.Xr proc 4 .
+.Pp
+The
+.Fn Psetzoneid
+function will fail if:
+.Bl -tag -width Er
+.It Er EINVAL
+.Fa zoneid
+does not correspond to an existing zone or the zone id is not the global
+zone or the original zone of
+.Fa P .
+.It Er EPERM
+The caller does not hold the required privileges for zone configuration.
+.El
+.Sh INTERFACE STABILITY
+.Sy Uncommitted
+.Sh MT-LEVEL
+See
+.Sy LOCKING
+in
+.Xr libproc 3LIB .
+.Sh SEE ALSO
+.Xr libproc 3LIB ,
+.Xr proc 4 ,
+.Xr privileges 5 ,
+.Xr zones 5