Annotation of 43BSDReno/lib/libc/sys/kill.2, revision 1.1.1.1

1.1       root        1: .\" Copyright (c) 1980 Regents of the University of California.
                      2: .\" All rights reserved.  The Berkeley software License Agreement
                      3: .\" specifies the terms and conditions for redistribution.
                      4: .\"
                      5: .\"    @(#)kill.2      6.5 (Berkeley) 5/14/86
                      6: .\"
                      7: .TH KILL 2 "May 14, 1986"
                      8: .UC 4
                      9: .SH NAME
                     10: kill \- send signal to a process
                     11: .SH SYNOPSIS
                     12: .ft B
                     13: kill(pid, sig)
                     14: .br
                     15: int pid, sig;
                     16: .SH DESCRIPTION
                     17: .I Kill
                     18: sends the signal \fIsig\fP
                     19: to a process, specified by the process number
                     20: .IR pid .
                     21: .I Sig
                     22: may be one of the signals specified in
                     23: .IR sigvec (2),
                     24: or it may be 0, in which case
                     25: error checking is performed but no
                     26: signal is actually sent. 
                     27: This can be used to check the validity of
                     28: .IR pid .
                     29: .PP
                     30: The sending and receiving processes must
                     31: have the same effective user ID, otherwise
                     32: this call is restricted to the super-user.
                     33: A single exception is the signal SIGCONT, which may always be sent
                     34: to any descendant of the current process.
                     35: .PP
                     36: If the process number is 0,
                     37: the signal is sent to all processes in the
                     38: sender's process group; this is a variant of
                     39: .IR killpg (2).
                     40: .PP
                     41: If the process number is \-1
                     42: and the user is the super-user,
                     43: the signal is broadcast universally
                     44: except to system processes
                     45: and the process sending the signal.
                     46: If the process number is \-1
                     47: and the user is not the super-user,
                     48: the signal is broadcast universally to
                     49: all processes with the same uid as the user
                     50: except the process sending the signal.
                     51: No error is returned if any process could be signaled.
                     52: .PP
                     53: For compatibility with System V,
                     54: if the process number is negative but not \-1,
                     55: the signal is sent to all processes whose process group ID
                     56: is equal to the absolute value of the process number.
                     57: This is a variant of
                     58: .IR killpg (2).
                     59: .PP
                     60: Processes may send signals to themselves.
                     61: .SH "RETURN VALUE
                     62: Upon successful completion, a value of 0 is returned.
                     63: Otherwise, a value of \-1 is returned and
                     64: .I errno
                     65: is set to indicate the error.
                     66: .SH "ERRORS
                     67: .I Kill
                     68: will fail and no signal will be sent if any of the following
                     69: occur:
                     70: .TP 15
                     71: [EINVAL]
                     72: \fISig\fP is not a valid signal number.
                     73: .TP 15
                     74: [ESRCH]
                     75: No process can be found corresponding to that specified by \fIpid\fP.
                     76: .TP 15
                     77: [ESRCH]
                     78: The process id was given as 0
                     79: but the sending process does not have a process group.
                     80: .TP 15
                     81: [EPERM]
                     82: The sending process is not the super-user and its effective
                     83: user id does not match the effective user-id of the receiving process.
                     84: When signaling a process group, this error was returned if any members
                     85: of the group could not be signaled.
                     86: .SH "SEE ALSO"
                     87: getpid(2), getpgrp(2), killpg(2), sigvec(2)

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.