killpg - send signal to a process group
#include <signal.h>
int
killpg(pid_t pgrp, int sig);
killpg() sends the signal sig to the process group pgrp.
See
sigaction(2) for a list of signals. If pgrp is 0, killpg()
sends the
signal to the sending process's process group.
The sending process and members of the process group must
have the same
effective user ID, or the sender must be the superuser. As
a single special
case the continue signal SIGCONT may be sent to any
process that is
a descendant of the current process.
Upon successful completion, a value of 0 is returned. Otherwise, a value
of -1 is returned and the global variable errno is set to
indicate the
error.
killpg() will fail and no signal will be sent if:
[EINVAL] sig is not a valid signal number.
[ESRCH] No process can be found in the process group
specified by
pgrp.
[ESRCH] The process group was given as 0 but the sending process
does not have a process group.
[EPERM] The sending process is not the superuser and
one or more of
the target processes has an effective user ID
different
from that of the sending process.
getpgrp(2), kill(2), sigaction(2)
The killpg() function call appeared in 4.0BSD.
OpenBSD 3.6 March 10, 1991
[ Back ] |