NAME
kill - Sends a signal to a process or to a group of
processes
SYNOPSIS
#include <sys/types.h>
#include <signal.h>
int kill(
pid_t process,
int signal );
PARAMETERS
process Specifies the process or group of processes.
signal Specifies the signal. If the signal parameter is a
value of 0 (the null signal), error checking is
performed but no signal is sent. This can be used
to check the validity of the process parameter.
DESCRIPTION
The kill() function sends the signal specified by the signal
parameter to the process or group of processes specified by
the process parameter.
To send a signal to another process, at least one of the
following must be true:
o The real or the effective user ID of the sending pro-
cess matches the real or effective user ID of the
receiving process.
o The process is trying to send the SIGCONT signal to one
of its session's processes.
o The calling process has superuser privilege.
Processes can send signals to themselves.
NOTES
Sending a signal does not imply that the operation is suc-
cessful. All signal operations must pass the access checks
prescribed by each enforced access control policy on the
system.
If the process parameter is greater than 0 (zero), the sig-
nal specified by the signal parameter is sent to the process
that has a process ID equal to the value of the process
parameter.
If the process parameter is equal to 0 (zero), the signal
specified by the signal parameter is sent to all of the
processes (other than system processes) whose process group
ID is equal to the process group ID of the sender.
If the process parameter is equal to -1 and the effective
user ID of the sender has root privileges, the signal speci-
fied by the signal parameter is sent to all of the processes
other than system processes.
If the process parameter is negative but not -1, the signal
specified by the signal parameter is sent to all of the
processes which have a process group ID equal to the abso-
lute value of the process parameter.
AES Support Level:
Full use
RETURN VALUES
Upon successful completion, the kill() function returns a
value of 0 (zero). Otherwise, a value of -1 is returned and
errno is set to indicate the error.
ERRORS
If the kill() function fails, no signal is sent and errno
may be set to one of the following values:
[EINVAL] The signal parameter is not a valid signal number.
[EINVAL] The signal parameter is SIGKILL, SIGSTOP, SIGTSTP
or SIGCONT and the process parameter is 1 (proc1).
[ESRCH] No process can be found corresponding to that
specified by the process parameter.
[EPERM] The real or saved user ID does not match the real
or effective user ID of the receiving process, the
calling process does not have appropriate
privilege, and the process is not sending a
SIGCONT signal to one of its session's processes.
[EACCES] The calling process does not have appropriate
privilege.
RELATED INFORMATION
Functions: getpid(2), killpg(2), setpgid(2), sigaction(2),
sigvec(2)
Acknowledgement and Disclaimer