xref: /openbsd-src/regress/sys/kern/kqueue/main.c (revision 391a0cc7e0c8423428e25d58a35438f6c9a24bfd)
1*391a0cc7Svisa /*	$OpenBSD: main.c,v 1.16 2023/08/20 15:19:34 visa Exp $	*/
25a789c51Sart /*
35a789c51Sart  *	Written by Artur Grabowski <art@openbsd.org> 2002 Public Domain
45a789c51Sart  */
55a789c51Sart 
6e03a59bcSanton #include <limits.h>
75a789c51Sart #include <stdio.h>
8bd35765dSbluhm #include <stdlib.h>
95a789c51Sart #include <unistd.h>
105a789c51Sart 
11bd35765dSbluhm #include "main.h"
125a789c51Sart 
135a789c51Sart int
main(int argc,char ** argv)145a789c51Sart main(int argc, char **argv)
155a789c51Sart {
168c56f353Smickey 	extern char *__progname;
17e56ad730Santon 	int n, ret, c;
185a789c51Sart 
195a789c51Sart 	ret = 0;
20*391a0cc7Svisa 	while ((c = getopt(argc, argv, "efFiIjlpPrR:stT:")) != -1) {
215a789c51Sart 		switch (c) {
22*391a0cc7Svisa 		case 'e':
23*391a0cc7Svisa 			ret |= do_exec(argv[0]);
24*391a0cc7Svisa 			break;
255a789c51Sart 		case 'f':
265a789c51Sart 			ret |= check_inheritance();
275a789c51Sart 			break;
286897c9b5Sguenther 		case 'F':
296897c9b5Sguenther 			ret |= do_fdpass();
306897c9b5Sguenther 			break;
31f79d7230Sblambert 		case 'i':
32f79d7230Sblambert 			ret |= do_timer();
33f79d7230Sblambert 			break;
34c9604848Scheloha 		case 'I':
35c9604848Scheloha 			ret |= do_invalid_timer();
36c9604848Scheloha 			break;
37595a2bfbSvisa 		case 'j':
38595a2bfbSvisa 			ret |= do_reset_timer();
39595a2bfbSvisa 			break;
40b93210bdSguenther 		case 'l':
41b93210bdSguenther 			ret |= do_flock();
42b93210bdSguenther 			break;
436897c9b5Sguenther 		case 'p':
446897c9b5Sguenther 			ret |= do_pipe();
456897c9b5Sguenther 			break;
4657ee2582Sart 		case 'P':
4757ee2582Sart 			ret |= do_process();
4857ee2582Sart 			break;
498c56f353Smickey 		case 'r':
508c56f353Smickey 			ret |= do_random();
518c56f353Smickey 			break;
52e7479016Santon 		case 'R':
53e56ad730Santon 			n = strtonum(optarg, 1, INT_MAX, NULL);
54e56ad730Santon 			ret |= do_regress(n);
55e7479016Santon 			break;
566897c9b5Sguenther 		case 's':
576897c9b5Sguenther 			ret |= do_signal();
586897c9b5Sguenther 			break;
599127188dSmickey 		case 't':
609127188dSmickey 			ret |= do_tun();
619127188dSmickey 			break;
62507ad807Smickey 		case 'T':
63e56ad730Santon 			n = strtonum(optarg, 1, INT_MAX, NULL);
64e56ad730Santon 			ret |= do_pty(n);
65507ad807Smickey 			break;
665a789c51Sart 		default:
67e03a59bcSanton 			fprintf(stderr, "usage: %s -[fFiIlpPrstT] [-R n]\n",
6883e1bbf5Santon 			    __progname);
695a789c51Sart 			exit(1);
705a789c51Sart 		}
715a789c51Sart 	}
725a789c51Sart 
735a789c51Sart 	return (ret);
745a789c51Sart }
75