KILL(2) | System Calls Manual | KILL(2) |
kill
— send signal
to a process
#include
<signal.h>
int
kill
(pid_t pid,
int sig);
The
kill
()
function sends the signal specified by sig to
pid, a process or a group of processes. Typically,
Sig will be one of the signals specified in
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 pid.
For a process to have permission to send a signal to a process designated by pid, 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.
For compatibility with System V, if the process number is negative but not -1, the signal is sent to all processes whose process group ID is equal to the absolute value of the process number. This is a variant of killpg(2).
Upon successful completion, a value of 0 is returned. Otherwise, a value of -1 is returned and errno is set to indicate the error.
kill
() will fail and no signal will be
sent if:
EINVAL
]EPERM
]ESRCH
]ESRCH
]The kill
() function is expected to conform
to IEEE Std 1003.1-1988
(“POSIX.1”).
April 19, 1994 | BSD 4 |