xref: /openbsd/lib/libc/compat-43/killpg.3 (revision 09467b48)
1.\" Copyright (c) 1980, 1991 Regents of the University of California.
2.\" All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\"    notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\"    notice, this list of conditions and the following disclaimer in the
11.\"    documentation and/or other materials provided with the distribution.
12.\" 3. Neither the name of the University nor the names of its contributors
13.\"    may be used to endorse or promote products derived from this software
14.\"    without specific prior written permission.
15.\"
16.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
17.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
20.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26.\" SUCH DAMAGE.
27.\"
28.\"	$OpenBSD: killpg.3,v 1.14 2017/05/07 21:19:29 millert Exp $
29.\"
30.Dd $Mdocdate: May 7 2017 $
31.Dt KILLPG 3
32.Os
33.Sh NAME
34.Nm killpg
35.Nd send signal to a process group
36.Sh SYNOPSIS
37.In signal.h
38.Ft int
39.Fn killpg "pid_t pgrp" "int sig"
40.Sh DESCRIPTION
41The
42.Fn killpg
43function sends the signal
44.Fa sig
45to the process group
46.Fa pgrp .
47See
48.Xr sigaction 2
49for a list of signals.
50If
51.Fa pgrp
52is 0,
53.Fn killpg
54sends the signal to the sending process's process group.
55.Pp
56The sending process and members of the process group must
57have the same effective user ID, or
58the sender must be the superuser.
59As a single special case the continue signal SIGCONT may be sent
60to any process with the same session ID as the caller.
61.Sh RETURN VALUES
62.Rv -std
63.Sh ERRORS
64.Fn killpg
65will fail and no signal will be sent if:
66.Bl -tag -width Er
67.It Bq Er EINVAL
68.Fa sig
69is not a valid signal number.
70.It Bq Er ESRCH
71No process can be found in the process group specified by
72.Fa pgrp .
73.It Bq Er ESRCH
74The process group was given as 0
75but the sending process does not have a process group.
76.It Bq Er EPERM
77The sending process is not the superuser and one or more
78of the target processes has an effective user ID different from that
79of the sending process.
80.El
81.Sh SEE ALSO
82.Xr getpgrp 2 ,
83.Xr kill 2 ,
84.Xr sigaction 2
85.Sh STANDARDS
86The
87.Fn killpg
88function conforms to the X/Open System Interfaces option of the
89.St -p1003.1-2008
90specification.
91.Pp
92The handling of process group 0 is an extension to that standard.
93.Sh HISTORY
94The
95.Fn killpg
96function call appeared in
97.Bx 4.0 .
98