summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/dietlibc/include/sys/wait.h
diff options
context:
space:
mode:
Diffstat (limited to 'mdk-stage1/dietlibc/include/sys/wait.h')
-rw-r--r--mdk-stage1/dietlibc/include/sys/wait.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/mdk-stage1/dietlibc/include/sys/wait.h b/mdk-stage1/dietlibc/include/sys/wait.h
index 91b5da348..eb70112e2 100644
--- a/mdk-stage1/dietlibc/include/sys/wait.h
+++ b/mdk-stage1/dietlibc/include/sys/wait.h
@@ -3,6 +3,29 @@
#include <sys/cdefs.h>
#include <sys/resource.h>
+#include <linux/wait.h>
+
+/* If WIFEXITED(STATUS), the low-order 8 bits of the status. */
+#define __WEXITSTATUS(status) (((status) & 0xff00) >> 8)
+#define WEXITSTATUS __WEXITSTATUS
+
+/* If WIFSIGNALED(STATUS), the terminating signal. */
+#define __WTERMSIG(status) ((status) & 0x7f)
+#define WTERMSIG __WTERMSIG
+
+/* If WIFSTOPPED(STATUS), the signal that stopped the child. */
+#define __WSTOPSIG(status) __WEXITSTATUS(status)
+#define WSTOPSIG __WSTOPSIG
+
+/* Nonzero if STATUS indicates normal termination. */
+#define WIFEXITED(status) (__WTERMSIG(status) == 0)
+
+/* Nonzero if STATUS indicates termination by a signal. */
+#define WIFSIGNALED(status) (!WIFSTOPPED(status) && !WIFEXITED(status))
+
+/* Nonzero if STATUS indicates the child is stopped. */
+#define WIFSTOPPED(status) (((status) & 0xff) == 0x7f)
+
pid_t wait(int *status) __THROW;
pid_t waitpid(pid_t pid, int *status, int options) __THROW;