xref: /illumos-gate/usr/src/man/man3head/wait.h.3head (revision 5328fc53d11d7151861fa272e4fb0248b8f0e145)

Sun Microsystems, Inc. gratefully acknowledges The Open Group for
permission to reproduce portions of its copyrighted documentation.
Original documentation from The Open Group can be obtained online at
http://www.opengroup.org/bookstore/.

The Institute of Electrical and Electronics Engineers and The Open
Group, have given us permission to reprint portions of their
documentation.

In the following statement, the phrase ``this text'' refers to portions
of the system documentation.

Portions of this text are reprinted and reproduced in electronic form
in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
Standard for Information Technology -- Portable Operating System
Interface (POSIX), The Open Group Base Specifications Issue 6,
Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
Engineers, Inc and The Open Group. In the event of any discrepancy
between these versions and the original IEEE and The Open Group
Standard, the original IEEE and The Open Group Standard is the referee
document. The original Standard can be obtained online at
http://www.opengroup.org/unix/online.html.

This notice shall appear on any product containing this material.

The contents of this file are subject to the terms of the
Common Development and Distribution License (the "License").
You may not use this file except in compliance with the License.

You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
or http://www.opensolaris.org/os/licensing.
See the License for the specific language governing permissions
and limitations under the License.

When distributing Covered Code, include this CDDL HEADER in each
file and include the License file at usr/src/OPENSOLARIS.LICENSE.
If applicable, add the following below this CDDL HEADER, with the
fields enclosed by brackets "[]" replaced with your own identifying
information: Portions Copyright [yyyy] [name of copyright owner]


Copyright 1989 AT&T.
Copyright (c) 2001, The IEEE and The Open Group. All Rights Reserved.
Portions Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.

WAIT.H 3HEAD "Sep 10, 2004"
NAME
wait.h, wait - wait status
SYNOPSIS

#include <sys/wait.h>
DESCRIPTION

When a process waits for status from its children using either the wait(3C) or waitpid(3C) function, the status returned can be evaluated with the following macros, defined in <sys/wait.h>. These macros evaluate to integral expressions. The stat argument to these macros is the integer value returned from wait() or waitpid(). WCOREDUMP(stat)

If the value of WIFSIGNALED (stat) is non-zero, this macro evaluates to a non-zero value if a core image of the terminated child was created.

WEXITSTATUS(stat)

If the value of WIFEXITED(stat) is non-zero, this macro evaluates to the exit code that the child process passed to _exit() (see exit(2)) or exit(3C), or the value that the child process returned from main.

WIFCONTINUED(stat)

Evaluates to a non-zero value if status was returned for a child process that has continued.

WIFEXITED(stat)

Evaluates to a non-zero value if status was returned for a child process that terminated normally.

WIFSIGNALED(stat)

Evaluates to a non-zero value if status was returned for a child process that terminated due to the receipt of a signal.

WIFSTOPPED(stat)

Evaluates to a non-zero value if status was returned for a child process that is currently stopped.

WSTOPSIG(stat)

If the value of WIFSTOPPED(stat) is non-zero, this macro evaluates to the number of the signal that caused the child process to stop.

WTERMSIG(stat)

If the value of WIFSIGNALED(stat) is non-zero, this macro evaluates to the number of the signal that caused the termination of the child process.

The <sys/wait.h> header defines the symbolic constants listed below for use with waitpid(3C). WNOHANG

Do not hang if no status is available; return immediately.

WUNTRACED

Report status of stopped child process.

The symbolic constants listed below are defined as possible values for the options argument to waitid(2). WEXITED

Wait for processes that have exited.

WSTOPPED

Status is returned for any child that has stopped upon receipt of a signal.

WCONTINUED

Status is returned for any child that was stopped and has been continued.

WNOHANG

Return immediately if there are no children to wait for.

WNOWAIT

Keep the process whose status is returned in infop in a waitable state.

The type idtype_t is defined as an enumeration type whose possible values include the following:

P_ALL
P_PID
P_PGID

The id_t and pid_t types are defined as described in <sys/types.h>.

The siginfo_t type is defined as described in <signal.h>.

The rusage structure is defined as described in <sys/resource.h>.

Inclusion of the <sys/wait.h> header can also make visible all symbols from <signal.h> and <sys/resource.h>.

ATTRIBUTES

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPE ATTRIBUTE VALUE
Interface Stability Standard
SEE ALSO

exit(2), waitid(2), exit(3C), wait(3C), waitpid(3C), attributes(5), standards(5)