xref: /openbsd/regress/sys/kern/kqueue/main.c (revision d89ec533)
1 /*	$OpenBSD: main.c,v 1.15 2021/06/12 13:30:14 visa Exp $	*/
2 /*
3  *	Written by Artur Grabowski <art@openbsd.org> 2002 Public Domain
4  */
5 
6 #include <limits.h>
7 #include <stdio.h>
8 #include <stdlib.h>
9 #include <unistd.h>
10 
11 #include "main.h"
12 
13 int
14 main(int argc, char **argv)
15 {
16 	extern char *__progname;
17 	int n, ret, c;
18 
19 	ret = 0;
20 	while ((c = getopt(argc, argv, "fFiIjlpPrR:stT:")) != -1) {
21 		switch (c) {
22 		case 'f':
23 			ret |= check_inheritance();
24 			break;
25 		case 'F':
26 			ret |= do_fdpass();
27 			break;
28 		case 'i':
29 			ret |= do_timer();
30 			break;
31 		case 'I':
32 			ret |= do_invalid_timer();
33 			break;
34 		case 'j':
35 			ret |= do_reset_timer();
36 			break;
37 		case 'l':
38 			ret |= do_flock();
39 			break;
40 		case 'p':
41 			ret |= do_pipe();
42 			break;
43 		case 'P':
44 			ret |= do_process();
45 			break;
46 		case 'r':
47 			ret |= do_random();
48 			break;
49 		case 'R':
50 			n = strtonum(optarg, 1, INT_MAX, NULL);
51 			ret |= do_regress(n);
52 			break;
53 		case 's':
54 			ret |= do_signal();
55 			break;
56 		case 't':
57 			ret |= do_tun();
58 			break;
59 		case 'T':
60 			n = strtonum(optarg, 1, INT_MAX, NULL);
61 			ret |= do_pty(n);
62 			break;
63 		default:
64 			fprintf(stderr, "usage: %s -[fFiIlpPrstT] [-R n]\n",
65 			    __progname);
66 			exit(1);
67 		}
68 	}
69 
70 	return (ret);
71 }
72