Content-type: text/html Man page of kill

kill

Section: System Calls (2)
Index Return to Main Contents
 

NAME

kill - Sends a signal to a process or to a group of processes  

SYNOPSIS

#include <signal.h>

int kill(
        pid_t process,
        int signal );

Application developers may want to specify an #include statement for <sys/types.h> before the one for <signal.h> if programs are being developed for multiple platforms. The additional #include statement is not required on Tru64 UNIX systems or by ISO or X/Open standards, but may be required on other vendors' systems that conform to these standards.  

STANDARDS

Interfaces documented on this reference page conform to industry standards as follows:

kill():  XPG4, XPG4-UNIX

Refer to the standards(5) reference page for more information about industry standards and associated tags.  

PARAMETERS

Specifies the process or group of processes. 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: The real or the saved set-user-ID of the sending process matches the real or effective user ID of the receiving process. The process is trying to send the SIGCONT signal to one of its session's processes. The calling process has superuser privilege.

Processes can send signals to themselves.

Sending a signal does not imply that the operation is successful. 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 signal 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 specified 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 absolute value of the process parameter.  

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

The kill() function sets errno to the specified values for the following conditions: The signal parameter is not a valid signal number.

[Digital]  The signal parameter is SIGKILL, SIGSTOP, SIGTSTP or SIGCONT and the process parameter is 1 (proc1). No process or process group can be found corresponding to that specified by the process parameter. 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. [Digital] The calling process does not have appropriate privilege.
 

RELATED INFORMATION

Functions: getpid(2), killpg(2), raise(3), setpgid(2), sigaction(2), sigvec(2)

Standards: standards(5) delim off


 

Index

NAME
SYNOPSIS
STANDARDS
PARAMETERS
DESCRIPTION
RETURN VALUES
ERRORS
RELATED INFORMATION

This document was created by man2html, using the manual pages.
Time: 02:40:14 GMT, October 02, 2010