diff options
author | Sebastien Marie <semarie@cvs.openbsd.org> | 2015-07-28 10:17:11 +0000 |
---|---|---|
committer | Sebastien Marie <semarie@cvs.openbsd.org> | 2015-07-28 10:17:11 +0000 |
commit | cc8d3f678394335a2c2049b1e44be1adeeda578c (patch) | |
tree | 791db8b54f9a38743e1383aa17d78914afe90dd1 | |
parent | ea94dd33bec9bf7d6c74712dd89a6c2f1bc4f0f8 (diff) |
check that flags value of 0 restricts the process to the _exit(2) system call.
note that it isn't the case currently.
-rw-r--r-- | regress/sys/kern/tame/sys_exit/Makefile | 5 | ||||
-rw-r--r-- | regress/sys/kern/tame/sys_exit/sys_exit.c | 30 |
2 files changed, 35 insertions, 0 deletions
diff --git a/regress/sys/kern/tame/sys_exit/Makefile b/regress/sys/kern/tame/sys_exit/Makefile new file mode 100644 index 00000000000..66b51c9c227 --- /dev/null +++ b/regress/sys/kern/tame/sys_exit/Makefile @@ -0,0 +1,5 @@ +# $OpenBSD: Makefile,v 1.1 2015/07/28 10:17:10 semarie Exp $ +PROG= sys_exit +NOMAN= yes + +.include <bsd.regress.mk> diff --git a/regress/sys/kern/tame/sys_exit/sys_exit.c b/regress/sys/kern/tame/sys_exit/sys_exit.c new file mode 100644 index 00000000000..61103ed7f10 --- /dev/null +++ b/regress/sys/kern/tame/sys_exit/sys_exit.c @@ -0,0 +1,30 @@ +/* $OpenBSD: sys_exit.c,v 1.1 2015/07/28 10:17:10 semarie Exp $ */ +/* + * Copyright (c) 2015 Sebastien Marie <semarie@openbsd.org> + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#include <sys/tame.h> + +#include <stdlib.h> +#include <unistd.h> + +int +main(int argc, char *argv[]) +{ + /* calling sys_exit syscall is allowed */ + tame(0); + + _exit(EXIT_SUCCESS); +} |