no_cmd:
main(int argc, char **argv){	int ch;	int rval = 0;	if (argc < 2)		usage(NULL);	while ((ch = getopt(argc, argv, "dnqtv")) != -1)		switch(ch) {		case 'n':			nflag = 1;			break;		case 'q':			qflag = 1;			break;		case 'v':			verbose = 1;			break;		case 't':			tflag = 1;			break;		case 'd':			debugonly = 1;			break;		default:			usage(NULL);		}	argc -= optind;	argv += optind;	pid = getpid();	uid = geteuid();	if (tflag)		s = open(_PATH_DEVNULL, O_WRONLY);	else		s = socket(PF_ROUTE, SOCK_RAW, 0);	if (s < 0)		err(1, "socket");	if (*argv == NULL)		goto no_cmd;	switch (keyword(*argv)) {	case K_GET:		uid = 0;		/* FALLTHROUGH */	case K_CHANGE:	case K_ADD:	case K_DELETE:		rval = newroute(argc, argv);		break;	case K_SHOW:		uid = 0;		show(argc, argv);		break;	case K_MONITOR:		monitor();		break;	case K_FLUSH:		flushroutes(argc, argv);		break;	no_cmd:	default:		usage(*argv);	}	exit(rval);}