1*7c478bd9Sstevel@tonic-gate/* 2*7c478bd9Sstevel@tonic-gate * CDDL HEADER START 3*7c478bd9Sstevel@tonic-gate * 4*7c478bd9Sstevel@tonic-gate * The contents of this file are subject to the terms of the 5*7c478bd9Sstevel@tonic-gate * Common Development and Distribution License, Version 1.0 only 6*7c478bd9Sstevel@tonic-gate * (the "License"). You may not use this file except in compliance 7*7c478bd9Sstevel@tonic-gate * with the License. 8*7c478bd9Sstevel@tonic-gate * 9*7c478bd9Sstevel@tonic-gate * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10*7c478bd9Sstevel@tonic-gate * or http://www.opensolaris.org/os/licensing. 11*7c478bd9Sstevel@tonic-gate * See the License for the specific language governing permissions 12*7c478bd9Sstevel@tonic-gate * and limitations under the License. 13*7c478bd9Sstevel@tonic-gate * 14*7c478bd9Sstevel@tonic-gate * When distributing Covered Code, include this CDDL HEADER in each 15*7c478bd9Sstevel@tonic-gate * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16*7c478bd9Sstevel@tonic-gate * If applicable, add the following below this CDDL HEADER, with the 17*7c478bd9Sstevel@tonic-gate * fields enclosed by brackets "[]" replaced with your own identifying 18*7c478bd9Sstevel@tonic-gate * information: Portions Copyright [yyyy] [name of copyright owner] 19*7c478bd9Sstevel@tonic-gate * 20*7c478bd9Sstevel@tonic-gate * CDDL HEADER END 21*7c478bd9Sstevel@tonic-gate */ 22*7c478bd9Sstevel@tonic-gate/* 23*7c478bd9Sstevel@tonic-gate * Copyright 2005 Sun Microsystems, Inc. All rights reserved. 24*7c478bd9Sstevel@tonic-gate * Use is subject to license terms. 25*7c478bd9Sstevel@tonic-gate * 26*7c478bd9Sstevel@tonic-gateINSERT COMMENT 27*7c478bd9Sstevel@tonic-gate */ 28*7c478bd9Sstevel@tonic-gate 29*7c478bd9Sstevel@tonic-gate#pragma ident "%Z%%M% %I% %E% SMI" 30*7c478bd9Sstevel@tonic-gate 31*7c478bd9Sstevel@tonic-gate# 32*7c478bd9Sstevel@tonic-gate# Privileges can be added to this file at any location, not 33*7c478bd9Sstevel@tonic-gate# necessarily at the end. For patches, it is probably best to 34*7c478bd9Sstevel@tonic-gate# add the new privilege at the end; for ordinary releases privileges 35*7c478bd9Sstevel@tonic-gate# should be ordered alphabetically. 36*7c478bd9Sstevel@tonic-gate# 37*7c478bd9Sstevel@tonic-gate 38*7c478bd9Sstevel@tonic-gateprivilege PRIV_CONTRACT_EVENT 39*7c478bd9Sstevel@tonic-gate 40*7c478bd9Sstevel@tonic-gate Allows a process to request critical events without limitation. 41*7c478bd9Sstevel@tonic-gate Allows a process to request reliable delivery of all events on 42*7c478bd9Sstevel@tonic-gate any event queue. 43*7c478bd9Sstevel@tonic-gate 44*7c478bd9Sstevel@tonic-gateprivilege PRIV_CONTRACT_OBSERVER 45*7c478bd9Sstevel@tonic-gate 46*7c478bd9Sstevel@tonic-gate Allows a process to observe contract events generated by 47*7c478bd9Sstevel@tonic-gate contracts created and owned by users other than the process's 48*7c478bd9Sstevel@tonic-gate effective user ID. 49*7c478bd9Sstevel@tonic-gate Allows a process to open contract event endpoints belonging to 50*7c478bd9Sstevel@tonic-gate contracts created and owned by users other than the process's 51*7c478bd9Sstevel@tonic-gate effective user ID. 52*7c478bd9Sstevel@tonic-gate 53*7c478bd9Sstevel@tonic-gateprivilege PRIV_CPC_CPU 54*7c478bd9Sstevel@tonic-gate 55*7c478bd9Sstevel@tonic-gate Allow a process to access per-CPU hardware performance counters. 56*7c478bd9Sstevel@tonic-gate 57*7c478bd9Sstevel@tonic-gateprivilege PRIV_DTRACE_KERNEL 58*7c478bd9Sstevel@tonic-gate 59*7c478bd9Sstevel@tonic-gate Allows DTrace kernel-level tracing. 60*7c478bd9Sstevel@tonic-gate 61*7c478bd9Sstevel@tonic-gateprivilege PRIV_DTRACE_PROC 62*7c478bd9Sstevel@tonic-gate 63*7c478bd9Sstevel@tonic-gate Allows DTrace process-level tracing. 64*7c478bd9Sstevel@tonic-gate Allows process-level tracing probes to be placed and enabled in 65*7c478bd9Sstevel@tonic-gate processes to which the user has permissions. 66*7c478bd9Sstevel@tonic-gate 67*7c478bd9Sstevel@tonic-gateprivilege PRIV_DTRACE_USER 68*7c478bd9Sstevel@tonic-gate 69*7c478bd9Sstevel@tonic-gate Allows DTrace user-level tracing. 70*7c478bd9Sstevel@tonic-gate Allows use of the syscall and profile DTrace providers to 71*7c478bd9Sstevel@tonic-gate examine processes to which the user has permissions. 72*7c478bd9Sstevel@tonic-gate 73*7c478bd9Sstevel@tonic-gateprivilege PRIV_FILE_CHOWN 74*7c478bd9Sstevel@tonic-gate 75*7c478bd9Sstevel@tonic-gate Allows a process to change a file's owner user ID. 76*7c478bd9Sstevel@tonic-gate Allows a process to change a file's group ID to one other than 77*7c478bd9Sstevel@tonic-gate the process' effective group ID or one of the process' 78*7c478bd9Sstevel@tonic-gate supplemental group IDs. 79*7c478bd9Sstevel@tonic-gate 80*7c478bd9Sstevel@tonic-gateprivilege PRIV_FILE_CHOWN_SELF 81*7c478bd9Sstevel@tonic-gate 82*7c478bd9Sstevel@tonic-gate Allows a process to give away its files; a process with this 83*7c478bd9Sstevel@tonic-gate privilege will run as if {_POSIX_CHOWN_RESTRICTED} is not 84*7c478bd9Sstevel@tonic-gate in effect. 85*7c478bd9Sstevel@tonic-gate 86*7c478bd9Sstevel@tonic-gateprivilege PRIV_FILE_DAC_EXECUTE 87*7c478bd9Sstevel@tonic-gate 88*7c478bd9Sstevel@tonic-gate Allows a process to execute an executable file whose permission 89*7c478bd9Sstevel@tonic-gate bits or ACL do not allow the process execute permission. 90*7c478bd9Sstevel@tonic-gate 91*7c478bd9Sstevel@tonic-gateprivilege PRIV_FILE_DAC_READ 92*7c478bd9Sstevel@tonic-gate 93*7c478bd9Sstevel@tonic-gate Allows a process to read a file or directory whose permission 94*7c478bd9Sstevel@tonic-gate bits or ACL do not allow the process read permission. 95*7c478bd9Sstevel@tonic-gate 96*7c478bd9Sstevel@tonic-gateprivilege PRIV_FILE_DAC_SEARCH 97*7c478bd9Sstevel@tonic-gate 98*7c478bd9Sstevel@tonic-gate Allows a process to search a directory whose permission bits or 99*7c478bd9Sstevel@tonic-gate ACL do not allow the process search permission. 100*7c478bd9Sstevel@tonic-gate 101*7c478bd9Sstevel@tonic-gateprivilege PRIV_FILE_DAC_WRITE 102*7c478bd9Sstevel@tonic-gate 103*7c478bd9Sstevel@tonic-gate Allows a process to write a file or directory whose permission 104*7c478bd9Sstevel@tonic-gate bits or ACL do not allow the process write permission. 105*7c478bd9Sstevel@tonic-gate In order to write files owned by uid 0 in the absence of an 106*7c478bd9Sstevel@tonic-gate effective uid of 0 ALL privileges are required. 107*7c478bd9Sstevel@tonic-gate 108*7c478bd9Sstevel@tonic-gatebasic privilege PRIV_FILE_LINK_ANY 109*7c478bd9Sstevel@tonic-gate 110*7c478bd9Sstevel@tonic-gate Allows a process to create hardlinks to files owned by a uid 111*7c478bd9Sstevel@tonic-gate different from the process' effective uid. 112*7c478bd9Sstevel@tonic-gate 113*7c478bd9Sstevel@tonic-gateprivilege PRIV_FILE_OWNER 114*7c478bd9Sstevel@tonic-gate 115*7c478bd9Sstevel@tonic-gate Allows a process which is not the owner of a file or directory 116*7c478bd9Sstevel@tonic-gate to perform the following operations that are normally permitted 117*7c478bd9Sstevel@tonic-gate only for the file owner: modify that file's access and 118*7c478bd9Sstevel@tonic-gate modification times; remove or rename a file or directory whose 119*7c478bd9Sstevel@tonic-gate parent directory has the ``save text image after execution'' 120*7c478bd9Sstevel@tonic-gate (sticky) bit set; mount a ``namefs'' upon a file; modify 121*7c478bd9Sstevel@tonic-gate permission bits or ACL except for the set-uid and set-gid 122*7c478bd9Sstevel@tonic-gate bits. 123*7c478bd9Sstevel@tonic-gate 124*7c478bd9Sstevel@tonic-gateprivilege PRIV_FILE_SETID 125*7c478bd9Sstevel@tonic-gate 126*7c478bd9Sstevel@tonic-gate Allows a process to change the ownership of a file or write to 127*7c478bd9Sstevel@tonic-gate a file without the set-user-ID and set-group-ID bits being 128*7c478bd9Sstevel@tonic-gate cleared. 129*7c478bd9Sstevel@tonic-gate Allows a process to set the set-group-ID bit on a file or 130*7c478bd9Sstevel@tonic-gate directory whose group is not the process' effective group or 131*7c478bd9Sstevel@tonic-gate one of the process' supplemental groups. 132*7c478bd9Sstevel@tonic-gate Allows a process to set the set-user-ID bit on a file with 133*7c478bd9Sstevel@tonic-gate different ownership in the presence of PRIV_FILE_OWNER. 134*7c478bd9Sstevel@tonic-gate Additional restrictions apply when creating or modifying a 135*7c478bd9Sstevel@tonic-gate set-uid 0 file. 136*7c478bd9Sstevel@tonic-gate 137*7c478bd9Sstevel@tonic-gateprivilege PRIV_GART_ACCESS 138*7c478bd9Sstevel@tonic-gate 139*7c478bd9Sstevel@tonic-gate Allows a process to make ioctls to agpgart device except 140*7c478bd9Sstevel@tonic-gate that AGPIOC_INFO ioctl needs no privilege. Typically only 141*7c478bd9Sstevel@tonic-gate xserver process needs to have this privilege. And a process 142*7c478bd9Sstevel@tonic-gate with this privilege is also allowed to map aperture ranges 143*7c478bd9Sstevel@tonic-gate through agpgart driver. 144*7c478bd9Sstevel@tonic-gate 145*7c478bd9Sstevel@tonic-gateprivilege PRIV_GART_MAP 146*7c478bd9Sstevel@tonic-gate 147*7c478bd9Sstevel@tonic-gate Allows a process to map aperture ranges through agpgart 148*7c478bd9Sstevel@tonic-gate driver. This privilege won't allow the process to do agpgart 149*7c478bd9Sstevel@tonic-gate ioctls other than AGPIOC_INFO. 150*7c478bd9Sstevel@tonic-gate 151*7c478bd9Sstevel@tonic-gateprivilege PRIV_IPC_DAC_READ 152*7c478bd9Sstevel@tonic-gate 153*7c478bd9Sstevel@tonic-gate Allows a process to read a System V IPC 154*7c478bd9Sstevel@tonic-gate Message Queue, Semaphore Set, or Shared Memory Segment whose 155*7c478bd9Sstevel@tonic-gate permission bits do not allow the process read permission. 156*7c478bd9Sstevel@tonic-gate Allows a process to read remote shared memory whose 157*7c478bd9Sstevel@tonic-gate permission bits do not allow the process read permission. 158*7c478bd9Sstevel@tonic-gate 159*7c478bd9Sstevel@tonic-gateprivilege PRIV_IPC_DAC_WRITE 160*7c478bd9Sstevel@tonic-gate 161*7c478bd9Sstevel@tonic-gate Allows a process to write a System V IPC 162*7c478bd9Sstevel@tonic-gate Message Queue, Semaphore Set, or Shared Memory Segment whose 163*7c478bd9Sstevel@tonic-gate permission bits do not allow the process write permission. 164*7c478bd9Sstevel@tonic-gate Allows a process to read remote shared memory whose 165*7c478bd9Sstevel@tonic-gate permission bits do not allow the process write permission. 166*7c478bd9Sstevel@tonic-gate Additional restrictions apply if the owner of the object has uid 0 167*7c478bd9Sstevel@tonic-gate and the effective uid of the current process is not 0. 168*7c478bd9Sstevel@tonic-gate 169*7c478bd9Sstevel@tonic-gateprivilege PRIV_IPC_OWNER 170*7c478bd9Sstevel@tonic-gate 171*7c478bd9Sstevel@tonic-gate Allows a process which is not the owner of a System 172*7c478bd9Sstevel@tonic-gate V IPC Message Queue, Semaphore Set, or Shared Memory Segment to 173*7c478bd9Sstevel@tonic-gate remove, change ownership of, or change permission bits of the 174*7c478bd9Sstevel@tonic-gate Message Queue, Semaphore Set, or Shared Memory Segment. 175*7c478bd9Sstevel@tonic-gate Additional restrictions apply if the owner of the object has uid 0 176*7c478bd9Sstevel@tonic-gate and the effective uid of the current process is not 0. 177*7c478bd9Sstevel@tonic-gate 178*7c478bd9Sstevel@tonic-gateprivilege PRIV_NET_ICMPACCESS 179*7c478bd9Sstevel@tonic-gate 180*7c478bd9Sstevel@tonic-gate Allows a process to send and receive ICMP packets. 181*7c478bd9Sstevel@tonic-gate 182*7c478bd9Sstevel@tonic-gateprivilege PRIV_NET_PRIVADDR 183*7c478bd9Sstevel@tonic-gate 184*7c478bd9Sstevel@tonic-gate Allows a process to bind to a privileged port 185*7c478bd9Sstevel@tonic-gate number. The privilege port numbers are 1-1023 (the traditional 186*7c478bd9Sstevel@tonic-gate UNIX privileged ports) as well as those ports marked as 187*7c478bd9Sstevel@tonic-gate "udp/tcp_extra_priv_ports" with the exception of the ports 188*7c478bd9Sstevel@tonic-gate reserved for use by NFS. 189*7c478bd9Sstevel@tonic-gate 190*7c478bd9Sstevel@tonic-gateprivilege PRIV_NET_RAWACCESS 191*7c478bd9Sstevel@tonic-gate 192*7c478bd9Sstevel@tonic-gate Allows a process to have direct access to the network layer. 193*7c478bd9Sstevel@tonic-gate 194*7c478bd9Sstevel@tonic-gateunsafe privilege PRIV_PROC_AUDIT 195*7c478bd9Sstevel@tonic-gate 196*7c478bd9Sstevel@tonic-gate Allows a process to generate audit records. 197*7c478bd9Sstevel@tonic-gate Allows a process to get its own audit pre-selection information. 198*7c478bd9Sstevel@tonic-gate 199*7c478bd9Sstevel@tonic-gateprivilege PRIV_PROC_CHROOT 200*7c478bd9Sstevel@tonic-gate 201*7c478bd9Sstevel@tonic-gate Allows a process to change its root directory. 202*7c478bd9Sstevel@tonic-gate 203*7c478bd9Sstevel@tonic-gateprivilege PRIV_PROC_CLOCK_HIGHRES 204*7c478bd9Sstevel@tonic-gate 205*7c478bd9Sstevel@tonic-gate Allows a process to use high resolution timers. 206*7c478bd9Sstevel@tonic-gate 207*7c478bd9Sstevel@tonic-gatebasic privilege PRIV_PROC_EXEC 208*7c478bd9Sstevel@tonic-gate 209*7c478bd9Sstevel@tonic-gate Allows a process to call execve(). 210*7c478bd9Sstevel@tonic-gate 211*7c478bd9Sstevel@tonic-gatebasic privilege PRIV_PROC_FORK 212*7c478bd9Sstevel@tonic-gate 213*7c478bd9Sstevel@tonic-gate Allows a process to call fork1()/forkall()/vfork() 214*7c478bd9Sstevel@tonic-gate 215*7c478bd9Sstevel@tonic-gatebasic privilege PRIV_PROC_INFO 216*7c478bd9Sstevel@tonic-gate 217*7c478bd9Sstevel@tonic-gate Allows a process to examine the status of processes other 218*7c478bd9Sstevel@tonic-gate than those it can send signals to. Processes which cannot 219*7c478bd9Sstevel@tonic-gate be examined cannot be seen in /proc and appear not to exist. 220*7c478bd9Sstevel@tonic-gate 221*7c478bd9Sstevel@tonic-gateprivilege PRIV_PROC_LOCK_MEMORY 222*7c478bd9Sstevel@tonic-gate 223*7c478bd9Sstevel@tonic-gate Allows a process to lock pages in physical memory. 224*7c478bd9Sstevel@tonic-gate 225*7c478bd9Sstevel@tonic-gateprivilege PRIV_PROC_OWNER 226*7c478bd9Sstevel@tonic-gate 227*7c478bd9Sstevel@tonic-gate Allows a process to send signals to other processes, inspect 228*7c478bd9Sstevel@tonic-gate and modify process state to other processes regardless of 229*7c478bd9Sstevel@tonic-gate ownership. When modifying another process, additional 230*7c478bd9Sstevel@tonic-gate restrictions apply: the effective privilege set of the 231*7c478bd9Sstevel@tonic-gate attaching process must be a superset of the target process' 232*7c478bd9Sstevel@tonic-gate effective, permitted and inheritable sets; the limit set must 233*7c478bd9Sstevel@tonic-gate be a superset of the target's limit set; if the target process 234*7c478bd9Sstevel@tonic-gate has any uid set to 0 all privilege must be asserted unless the 235*7c478bd9Sstevel@tonic-gate effective uid is 0. 236*7c478bd9Sstevel@tonic-gate Allows a process to bind arbitrary processes to CPUs. 237*7c478bd9Sstevel@tonic-gate 238*7c478bd9Sstevel@tonic-gateprivilege PRIV_PROC_PRIOCNTL 239*7c478bd9Sstevel@tonic-gate 240*7c478bd9Sstevel@tonic-gate Allows a process to elevate its priority above its current level. 241*7c478bd9Sstevel@tonic-gate Allows a process to change its scheduling class to any scheduling class, 242*7c478bd9Sstevel@tonic-gate including the RT class. 243*7c478bd9Sstevel@tonic-gate 244*7c478bd9Sstevel@tonic-gatebasic privilege PRIV_PROC_SESSION 245*7c478bd9Sstevel@tonic-gate 246*7c478bd9Sstevel@tonic-gate Allows a process to send signals or trace processes outside its 247*7c478bd9Sstevel@tonic-gate session. 248*7c478bd9Sstevel@tonic-gate 249*7c478bd9Sstevel@tonic-gateunsafe privilege PRIV_PROC_SETID 250*7c478bd9Sstevel@tonic-gate 251*7c478bd9Sstevel@tonic-gate Allows a process to set its uids at will. 252*7c478bd9Sstevel@tonic-gate Assuming uid 0 requires all privileges to be asserted. 253*7c478bd9Sstevel@tonic-gate 254*7c478bd9Sstevel@tonic-gateprivilege PRIV_PROC_TASKID 255*7c478bd9Sstevel@tonic-gate 256*7c478bd9Sstevel@tonic-gate Allows a process to assign a new task ID to the calling process. 257*7c478bd9Sstevel@tonic-gate 258*7c478bd9Sstevel@tonic-gateprivilege PRIV_PROC_ZONE 259*7c478bd9Sstevel@tonic-gate 260*7c478bd9Sstevel@tonic-gate Allows a process to trace or send signals to processes in 261*7c478bd9Sstevel@tonic-gate other zones. 262*7c478bd9Sstevel@tonic-gate 263*7c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_ACCT 264*7c478bd9Sstevel@tonic-gate 265*7c478bd9Sstevel@tonic-gate Allows a process to enable and disable and manage accounting through 266*7c478bd9Sstevel@tonic-gate acct(2), getacct(2), putacct(2) and wracct(2). 267*7c478bd9Sstevel@tonic-gate 268*7c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_ADMIN 269*7c478bd9Sstevel@tonic-gate 270*7c478bd9Sstevel@tonic-gate Allows a process to perform system administration tasks such 271*7c478bd9Sstevel@tonic-gate as setting node and domain name and specifying nscd and coreadm 272*7c478bd9Sstevel@tonic-gate settings. 273*7c478bd9Sstevel@tonic-gate 274*7c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_AUDIT 275*7c478bd9Sstevel@tonic-gate 276*7c478bd9Sstevel@tonic-gate Allows a process to start the (kernel) audit daemon. 277*7c478bd9Sstevel@tonic-gate Allows a process to view and set audit state (audit user ID, 278*7c478bd9Sstevel@tonic-gate audit terminal ID, audit sessions ID, audit pre-selection mask). 279*7c478bd9Sstevel@tonic-gate Allows a process to turn off and on auditing. 280*7c478bd9Sstevel@tonic-gate Allows a process to configure the audit parameters (cache and 281*7c478bd9Sstevel@tonic-gate queue sizes, event to class mappings, policy options). 282*7c478bd9Sstevel@tonic-gate 283*7c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_CONFIG 284*7c478bd9Sstevel@tonic-gate 285*7c478bd9Sstevel@tonic-gate Allows a process to perform various system configuration tasks. 286*7c478bd9Sstevel@tonic-gate Allows a process to add and remove swap devices; when adding a swap 287*7c478bd9Sstevel@tonic-gate device, a process must also have sufficient privileges to read from 288*7c478bd9Sstevel@tonic-gate and write to the swap device. 289*7c478bd9Sstevel@tonic-gate 290*7c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_DEVICES 291*7c478bd9Sstevel@tonic-gate 292*7c478bd9Sstevel@tonic-gate Allows a process to successfully call a kernel module that 293*7c478bd9Sstevel@tonic-gate calls the kernel drv_priv(9F) function to check for allowed 294*7c478bd9Sstevel@tonic-gate access. 295*7c478bd9Sstevel@tonic-gate Allows a process to open the real console device directly. 296*7c478bd9Sstevel@tonic-gate Allows a process to open devices that have been exclusively opened. 297*7c478bd9Sstevel@tonic-gate 298*7c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_IPC_CONFIG 299*7c478bd9Sstevel@tonic-gate 300*7c478bd9Sstevel@tonic-gate Allows a process to increase the size of a System V IPC Message 301*7c478bd9Sstevel@tonic-gate Queue buffer. 302*7c478bd9Sstevel@tonic-gate 303*7c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_LINKDIR 304*7c478bd9Sstevel@tonic-gate 305*7c478bd9Sstevel@tonic-gate Allows a process to unlink and link directories. 306*7c478bd9Sstevel@tonic-gate 307*7c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_MOUNT 308*7c478bd9Sstevel@tonic-gate 309*7c478bd9Sstevel@tonic-gate Allows filesystem specific administrative procedures, such as 310*7c478bd9Sstevel@tonic-gate filesystem configuration ioctls, quota calls and creation/deletion 311*7c478bd9Sstevel@tonic-gate of snapshots. 312*7c478bd9Sstevel@tonic-gate Allows a process to mount and unmount filesystems which would 313*7c478bd9Sstevel@tonic-gate otherwise be restricted (i.e., most filesystems except 314*7c478bd9Sstevel@tonic-gate namefs). 315*7c478bd9Sstevel@tonic-gate A process performing a mount operation needs to have 316*7c478bd9Sstevel@tonic-gate appropriate access to the device being mounted (read-write for 317*7c478bd9Sstevel@tonic-gate "rw" mounts, read for "ro" mounts). 318*7c478bd9Sstevel@tonic-gate A process performing any of the aforementioned 319*7c478bd9Sstevel@tonic-gate filesystem operations needs to have read/write/owner 320*7c478bd9Sstevel@tonic-gate access to the mount point. 321*7c478bd9Sstevel@tonic-gate Only regular files and directories can serve as mount points 322*7c478bd9Sstevel@tonic-gate for processes which do not have all zone privileges asserted. 323*7c478bd9Sstevel@tonic-gate Unless a process has all zone privileges, the mount(2) 324*7c478bd9Sstevel@tonic-gate system call will force the "nosuid" and "restrict" options, the 325*7c478bd9Sstevel@tonic-gate latter only for autofs mountpoints. 326*7c478bd9Sstevel@tonic-gate Regardless of privileges, a process running in a non-global zone may 327*7c478bd9Sstevel@tonic-gate only control mounts performed from within said zone. 328*7c478bd9Sstevel@tonic-gate Outside the global zone, the "nodevices" option is always forced. 329*7c478bd9Sstevel@tonic-gate 330*7c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_NET_CONFIG 331*7c478bd9Sstevel@tonic-gate 332*7c478bd9Sstevel@tonic-gate Allows a process to configure a system's network interfaces and routes. 333*7c478bd9Sstevel@tonic-gate Allows a process to configure network parameters using ndd. 334*7c478bd9Sstevel@tonic-gate Allows a process access to otherwise restricted information using ndd. 335*7c478bd9Sstevel@tonic-gate Allows a process to push the rpcmod STREAMs module. 336*7c478bd9Sstevel@tonic-gate Allows a process to pop anchored STREAMs modules. 337*7c478bd9Sstevel@tonic-gate Allows a process to INSERT/REMOVE STREAMs modules on locations other 338*7c478bd9Sstevel@tonic-gate than the top of the module stack. 339*7c478bd9Sstevel@tonic-gate Allows a process to configure IPsec. 340*7c478bd9Sstevel@tonic-gate 341*7c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_NFS 342*7c478bd9Sstevel@tonic-gate 343*7c478bd9Sstevel@tonic-gate Allows a process to perform Sun private NFS specific system calls. 344*7c478bd9Sstevel@tonic-gate Allows a process to bind to ports reserved by NFS: ports 2049 (nfs) 345*7c478bd9Sstevel@tonic-gate and port 4045 (lockd). 346*7c478bd9Sstevel@tonic-gate 347*7c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_RES_CONFIG 348*7c478bd9Sstevel@tonic-gate 349*7c478bd9Sstevel@tonic-gate Allows a process to create and delete processor sets, assign 350*7c478bd9Sstevel@tonic-gate CPUs to processor sets and override the PSET_NOESCAPE property. 351*7c478bd9Sstevel@tonic-gate Allows a process to change the operational status of CPUs in 352*7c478bd9Sstevel@tonic-gate the system using p_online(2). 353*7c478bd9Sstevel@tonic-gate Allows a process to configure resource pools and to bind 354*7c478bd9Sstevel@tonic-gate processes to pools 355*7c478bd9Sstevel@tonic-gate 356*7c478bd9Sstevel@tonic-gateunsafe privilege PRIV_SYS_RESOURCE 357*7c478bd9Sstevel@tonic-gate 358*7c478bd9Sstevel@tonic-gate Allows a process to modify the resource limits specified 359*7c478bd9Sstevel@tonic-gate by setrlimit(2) and setrctl(2) without restriction. 360*7c478bd9Sstevel@tonic-gate Allows a process to exceed the per-user maximum number of 361*7c478bd9Sstevel@tonic-gate processes. 362*7c478bd9Sstevel@tonic-gate Allows a process to extend or create files on a filesystem that 363*7c478bd9Sstevel@tonic-gate has less than minfree space in reserve. 364*7c478bd9Sstevel@tonic-gate 365*7c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_SUSER_COMPAT 366*7c478bd9Sstevel@tonic-gate 367*7c478bd9Sstevel@tonic-gate Allows a process to successfully call a third party loadable module 368*7c478bd9Sstevel@tonic-gate that calls the kernel suser() function to check for allowed access. 369*7c478bd9Sstevel@tonic-gate This privilege exists only for third party loadable module 370*7c478bd9Sstevel@tonic-gate compatibility and is not used by Solaris proper. 371*7c478bd9Sstevel@tonic-gate 372*7c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_TIME 373*7c478bd9Sstevel@tonic-gate 374*7c478bd9Sstevel@tonic-gate Allows a process to manipulate system time using any of the 375*7c478bd9Sstevel@tonic-gate appropriate system calls: stime, adjtime, ntp_adjtime and 376*7c478bd9Sstevel@tonic-gate the IA specific RTC calls. 377*7c478bd9Sstevel@tonic-gateset PRIV_EFFECTIVE 378*7c478bd9Sstevel@tonic-gate 379*7c478bd9Sstevel@tonic-gate Set of privileges currently in effect. 380*7c478bd9Sstevel@tonic-gate 381*7c478bd9Sstevel@tonic-gateset PRIV_INHERITABLE 382*7c478bd9Sstevel@tonic-gate 383*7c478bd9Sstevel@tonic-gate Set of privileges that comes into effect on exec. 384*7c478bd9Sstevel@tonic-gate 385*7c478bd9Sstevel@tonic-gateset PRIV_PERMITTED 386*7c478bd9Sstevel@tonic-gate 387*7c478bd9Sstevel@tonic-gate Set of privileges that can be put into the effective set without 388*7c478bd9Sstevel@tonic-gate restriction. 389*7c478bd9Sstevel@tonic-gate 390*7c478bd9Sstevel@tonic-gateset PRIV_LIMIT 391*7c478bd9Sstevel@tonic-gate 392*7c478bd9Sstevel@tonic-gate Set of privileges that determines the absolute upper bound of 393*7c478bd9Sstevel@tonic-gate privileges this process and its off-spring can obtain. 394