diff options
author | 2002-02-17 05:22:41 +0000 | |
---|---|---|
committer | 2002-02-17 05:22:41 +0000 | |
commit | 57d3f6dcf5b09ec2c5e24ab9fe0d278d5725a6d1 (patch) | |
tree | 545cfd45385a6f42d322b29d26860c3747a9a798 | |
parent | rfcfdg (diff) | |
download | wireguard-openbsd-57d3f6dcf5b09ec2c5e24ab9fe0d278d5725a6d1.tar.xz wireguard-openbsd-57d3f6dcf5b09ec2c5e24ab9fe0d278d5725a6d1.zip |
test rfork(RFNOWAIT)
-rw-r--r-- | regress/sys/kern/rfork/rfnowait/Makefile | 5 | ||||
-rw-r--r-- | regress/sys/kern/rfork/rfnowait/rfnowait.c | 32 |
2 files changed, 37 insertions, 0 deletions
diff --git a/regress/sys/kern/rfork/rfnowait/Makefile b/regress/sys/kern/rfork/rfnowait/Makefile new file mode 100644 index 00000000000..7f716a0315f --- /dev/null +++ b/regress/sys/kern/rfork/rfnowait/Makefile @@ -0,0 +1,5 @@ +# $OpenBSD: Makefile,v 1.1 2002/02/17 05:22:41 art Exp $ + +PROG=rfnowait + +.include <bsd.regress.mk> diff --git a/regress/sys/kern/rfork/rfnowait/rfnowait.c b/regress/sys/kern/rfork/rfnowait/rfnowait.c new file mode 100644 index 00000000000..7a304d8efb6 --- /dev/null +++ b/regress/sys/kern/rfork/rfnowait/rfnowait.c @@ -0,0 +1,32 @@ +/* $OpenBSD: rfnowait.c,v 1.1 2002/02/17 05:22:41 art Exp $ */ +/* + * Written by Artur Grabowski <art@openbsd.org>, 2002 Public Domain. + */ +#include <sys/param.h> +#include <sys/wait.h> +#include <unistd.h> +#include <stdio.h> +#include <stdlib.h> +#include <err.h> +#include <errno.h> + +int +main() +{ + int status; + + switch(rfork(RFFDG|RFNOWAIT|RFPROC)) { + case -1: + err(1, "fork"); + case 0: + _exit(0); + } + + if (wait(&status) >= 0) + errx(1, "wait returned a child?"); + + if (errno != ECHILD) + err(1, "unexpected errno (%d)"); + + return 0; +}
\ No newline at end of file |