Process Completion Status

If the exit status value (the section called “Program Termination”) of the child process is zero, then the status value reported by waitpid or wait is also zero. You can test for other kinds of information encoded in the returned status value using the following macros. These macros are defined in the header file sys/wait.h. int function>WIFEXITED/function> (int status) This macro returns a nonzero value if the child process terminated normally with exit or _exit.

int function>WEXITSTATUS/function> (int status) If WIFEXITED is true of status, this macro returns the low-order 8 bits of the exit status value from the child process. the section called “Exit Status”.

int function>WIFSIGNALED/function> (int status) This macro returns a nonzero value if the child process terminated because it received a signal that was not handled. Chapter 25.

int function>WTERMSIG/function> (int status) If WIFSIGNALED is true of status, this macro returns the signal number of the signal that terminated the child process.

int function>WCOREDUMP/function> (int status) This macro returns a nonzero value if the child process terminated and produced a core dump.

int function>WIFSTOPPED/function> (int status) This macro returns a nonzero value if the child process is stopped.

int function>WSTOPSIG/function> (int status) If WIFSTOPPED is true of status, this macro returns the signal number of the signal that caused the child process to stop.