#include <signal.h> int killpg(pid_t pgrp, int sig);
The killpg() function sends the signal sig to the process group pgrp. See signal.h(3HEAD) for a list of signals.
The real or effective user ID of the sending process must match the real or saved set-user ID of the receiving process, unless the effective user ID of the sending process is the privileged user. A single exception is the signal SIGCONT, which may always be sent to any descendant of the current process.
Upon successful completion, 0 is returned. Otherwise, −1 is returned and errno is set to indicate the error.
The killpg() function will fail and no signal will be sent if:
The sig argument is not a valid signal number.
The effective user ID of the sending process is not privileged user, and neither its real nor effective user ID matches the real or saved set-user ID of one or more of the target processes.
No processes were found in the specified process group.
See attributes(5) for descriptions of the following attributes: