]> git.ipfire.org Git - thirdparty/glibc.git/blame - posix/waitpid.c
Update copyright notices with scripts/update-copyrights.
[thirdparty/glibc.git] / posix / waitpid.c
CommitLineData
568035b7 1/* Copyright (C) 1991-2013 Free Software Foundation, Inc.
478b92f0 2 This file is part of the GNU C Library.
28f540f4 3
478b92f0 4 The GNU C Library is free software; you can redistribute it and/or
41bdb6e2
AJ
5 modify it under the terms of the GNU Lesser General Public
6 License as published by the Free Software Foundation; either
7 version 2.1 of the License, or (at your option) any later version.
28f540f4 8
478b92f0
UD
9 The GNU C Library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
41bdb6e2 12 Lesser General Public License for more details.
28f540f4 13
41bdb6e2 14 You should have received a copy of the GNU Lesser General Public
59ba27a6
PE
15 License along with the GNU C Library; if not, see
16 <http://www.gnu.org/licenses/>. */
28f540f4 17
28f540f4
RM
18#include <errno.h>
19#include <sys/wait.h>
20#include <sys/types.h>
21
22
23/* Wait for a child matching PID to die.
24 If PID is greater than 0, match any process whose process ID is PID.
25 If PID is (pid_t) -1, match any process.
26 If PID is (pid_t) 0, match any process with the
27 same process group as the current process.
28 If PID is less than -1, match any process whose
29 process group is the absolute value of PID.
30 If the WNOHANG bit is set in OPTIONS, and that child
31 is not already dead, return (pid_t) 0. If successful,
32 return PID and store the dead child's status in STAT_LOC.
33 Return (pid_t) -1 for errors. If the WUNTRACED bit is set in OPTIONS,
34 return status for stopped children; otherwise don't. */
35pid_t
c4029823 36__libc_waitpid (pid_t pid, int *stat_loc, int options)
28f540f4
RM
37{
38 if ((options & ~(WNOHANG|WUNTRACED)) != 0)
39 {
c4029823 40 __set_errno (EINVAL);
28f540f4
RM
41 return (pid_t) -1;
42 }
43
c4029823 44 __set_errno (ENOSYS);
28f540f4
RM
45 return (pid_t) -1;
46}
c4029823 47weak_alias (__libc_waitpid, __waitpid)
faea9de6 48libc_hidden_weak (__waitpid)
c4029823 49weak_alias (__libc_waitpid, waitpid)
28f540f4 50
c4029823 51stub_warning (waitpid)