summaryrefslogtreecommitdiff
path: root/testcld.c
diff options
context:
space:
mode:
authorToby Goodwin <LibreSoftwareDesign@gmail.com>2012-10-01 20:46:40 +0100
committerToby Goodwin <toby@paccrat.org>2015-05-16 21:23:24 +0100
commitc8a77b86b4f8c91314222a8e12e6e37cf182ee10 (patch)
tree770041514630af2c076e5115b3543b7f5ced1d24 /testcld.c
parent27c900d6ae9cd0dcf4bc97bc9b8c1882e40ccfa8 (diff)
initial commit
Diffstat (limited to 'testcld.c')
-rw-r--r--testcld.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/testcld.c b/testcld.c
new file mode 100644
index 0000000..83212e9
--- /dev/null
+++ b/testcld.c
@@ -0,0 +1,19 @@
+#include <errno.h>
+#include <signal.h>
+#include <sys/types.h>
+#include <sys/wait.h>
+#include <unistd.h>
+int main(void) {
+ int i;
+ sigset(SIGCLD, SIG_IGN);
+ switch (fork()) {
+ case -1:
+ return 1;
+ case 0:
+ return 0;
+ default:
+ sleep(1);
+ if (wait(&i) == -1 && errno == ECHILD) return 0;
+ else return 1;
+ }
+}