X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/9bccf70c0258c7cac2dcb80011b2a964d884c552..0a7de7458d150b5d4dffc935ba399be265ef0a1a:/bsd/man/man2/kill.2?ds=sidebyside diff --git a/bsd/man/man2/kill.2 b/bsd/man/man2/kill.2 index 6b7157f35..5d3bd6f64 100644 --- a/bsd/man/man2/kill.2 +++ b/bsd/man/man2/kill.2 @@ -42,22 +42,25 @@ .Sh SYNOPSIS .Fd #include .Ft int -.Fn kill "pid_t pid" "int sig" +.Fo kill +.Fa "pid_t pid" +.Fa "int sig" +.Fc .Sh DESCRIPTION The .Fn kill -function sends the signal given by +function sends the signal specified by .Fa sig to .Fa pid , a process or a group of processes. +Typically, .Fa Sig -may be one of the signals specified in -.Xr sigaction 2 -or it may be 0, in which case -error checking is performed but no -signal is actually sent. +will be one of the signals specified in +.Xr sigaction 2 . +A value of 0, however, +will cause error checking to be performed (with no signal being sent). This can be used to check the validity of .Fa pid . .Pp @@ -67,8 +70,8 @@ by the real or effective user ID of the receiving process must match that of the sending process or the user must have appropriate privileges (such as given by a set-user-ID program or the user is the super-user). -A single exception is the signal SIGCONT, which may always be sent -to any descendant of the current process. +A single exception is the signal SIGCONT, +which may always be sent to any descendant of the current process. .Bl -tag -width Ds .It \&If Fa pid No \&is greater than zero : .Fa Sig @@ -77,16 +80,17 @@ is sent to the process whose ID is equal to .It \&If Fa pid No \&is zero : .Fa Sig is sent to all processes whose group ID is equal -to the process group ID of the sender, and for which the -process has permission; +to the process group ID of the sender, +and for which the process has permission; this is a variant of .Xr killpg 2 . .It \&If Fa pid No \&is -1 : If the user has super-user privileges, the signal is sent to all processes excluding system processes and the process sending the signal. -If the user is not the super user, the signal is sent to all processes -with the same uid as the user excluding the process sending the signal. +If the user is not the super user, +the signal is sent to all processes with the same uid as the user, +excluding the process sending the signal. No error is returned if any process could be signaled. .El .Pp @@ -102,27 +106,32 @@ Otherwise, a value of -1 is returned and .Va errno is set to indicate the error. .Sh ERRORS -.Fn Kill +.Fn kill will fail and no signal will be sent if: .Bl -tag -width Er +.\" ========== .It Bq Er EINVAL .Fa Sig -is not a valid signal number. -.It Bq Er ESRCH -No process can be found corresponding to that specified by -.Fa pid . -.It Bq Er ESRCH -The process id was given as 0 -but the sending process does not have a process group. +is not a valid, supported signal number. +.\" ========== .It Bq Er EPERM The sending process is not the super-user and its effective user id does not match the effective user-id of the receiving process. When signaling a process group, this error is returned if any members of the group could not be signaled. +.\" ========== +.It Bq Er ESRCH +No process or process group can be found +corresponding to that specified by +.Fa pid . +.\" ========== +.It Bq Er ESRCH +The process id was given as 0, +but the sending process does not have a process group. .El .Sh SEE ALSO -.Xr getpid 2 , .Xr getpgrp 2 , +.Xr getpid 2 , .Xr killpg 2 , .Xr sigaction 2 .Sh STANDARDS