case 2:
int main(int argc, char **argv){	if (setjmp(restart_env) == 0) {		signal(SIGHUP, hupper);	}	/* set up the handler for statistics reporting */	signal(SIGUSR1, usr1_handler);	signal(SIGINT, int_handler);	signal(SIGTERM, term_handler);	while (1) {		int option_index = 0;		int c;		c = getopt_long(argc, argv, "c:hl:v", options,				&option_index);		if (c == -1)			break;		switch (c) {		case 0:			break;			switch (option_index) {			case 0:			case 2:				break;			case 1:				opt_loglevel = atoi(optarg);				break;			case 3:				strncpy(opt_configfile, optarg, 1023);				break;			}			break;		case 'c':			strncpy(opt_configfile, optarg, 1023);			break;		case 'v':			opt_version = 1;			break;		case 'l':			opt_loglevel = atoi(optarg);			break;		}	}	if (optind < argc) {		printf("config %s\n", argv[optind++]);	}	if (opt_version == 1) {		greet_world();		exit(0);	}	if (opt_help == 1) {		greet_world();		printf("Usage:\n");		printf("%s [flags]\n", argv[0]);		printf("\nFlags:\n");		printf		    ("  --version, -v               Print version of program\n");		printf("  --help, -h                  This help screen\n");		printf		    ("  --loglevel NUM, -l NUM      Set logging level to NUM\n");		printf		    ("  --configfile FILE, -c FILE  Set configuration file to FILE\n");		exit(0);	}	/* Initialize all routines */	config_init();	kiss_init();	route_init();	process_init();	io_init();	/* read config file */	config_read(opt_configfile);	/* print the current config and route info */	dump_config();	dump_routes();	dump_params();	/* Open the IO stuff */	io_open();	/* if we get this far without error, let's fork off ! :-) */	if (!daemon_start(TRUE)) {		syslog(stderr, "ax25ipd: cannot become a daemon\n");		return 1;	}	/* and let the games begin */	io_start();	return (0);}