1 /* $OpenBSD: main.c,v 1.7 2012/07/08 12:31:03 guenther Exp $ */ 2 /* 3 * Written by Artur Grabowski <art@openbsd.org> 2002 Public Domain 4 */ 5 6 #include <stdlib.h> 7 #include <stdio.h> 8 #include <unistd.h> 9 10 int do_pipe(void); 11 int check_inheritance(void); 12 int do_process(void); 13 int do_signal(void); 14 int do_random(void); 15 int do_pty(void); 16 int do_tun(void); 17 int do_fdpass(void); 18 int do_flock(void); 19 20 int 21 main(int argc, char **argv) 22 { 23 extern char *__progname; 24 int ret, c; 25 26 ret = 0; 27 while ((c = getopt(argc, argv, "fFlpPrstT")) != -1) { 28 switch (c) { 29 case 'f': 30 ret |= check_inheritance(); 31 break; 32 case 'F': 33 ret |= do_fdpass(); 34 break; 35 case 'l': 36 ret |= do_flock(); 37 break; 38 case 'p': 39 ret |= do_pipe(); 40 break; 41 case 'P': 42 ret |= do_process(); 43 break; 44 case 'r': 45 ret |= do_random(); 46 break; 47 case 's': 48 ret |= do_signal(); 49 break; 50 case 't': 51 ret |= do_tun(); 52 break; 53 case 'T': 54 ret |= do_pty(); 55 break; 56 default: 57 fprintf(stderr, "Usage: %s -[fPprTt]\n", __progname); 58 exit(1); 59 } 60 } 61 62 return (ret); 63 } 64