Ejemplo n.º 1
0
/* nas task entry */
int
nas_init(int argc, char *argv[])
{
	nas_wksp_t *nwksp = NULL;

	/* alloc nas/wpa work space */
	if (!(nwksp = nas_wksp_alloc_workspace())) {
		NASMSG("Unable to allocate memory. Quitting...\n");
		goto exit0;
	}

	/* init nas/wpa work space */
	if (nas_wksp_parse_cmd_line(argc, argv, nwksp)) {
		NASMSG("Command line parsing error. Quitting...\n");
		goto exit1;
	}
	if (!nwksp->nwcbs) {
		NASMSG("No interface specified. Quitting...\n");
		goto exit1;
	}

	/* init nas */
	if (nas_wksp_init(nwksp)) {
		NASMSG("Unable to initialize NAS. Quitting...\n");
		goto exit1;
	}
	goto exit0;

	/* error handling */
exit1:
	nas_wksp_free_workspace(nwksp);
exit0:
	return 0;
}
Ejemplo n.º 2
0
/* nas task entry */
int nas_main(void)
{
#ifdef BCMDBG
	char debug[8];
#endif
	/* clear _nas_ready */
	_nas_ready = 0;

	/* fill up NAS task pid */
	_nas_pid = oslib_pid();

	/* clear rootnwksp */
	nas_nwksp = NULL;

	/* alloc nas/wpa work space */
	if (!(nas_nwksp = nas_wksp_alloc_workspace())) {
		NASMSG("Unable to allocate work space memory. Quitting...\n");
		return -1;
	}

#ifdef BCMDBG
	/* verbose - 0:no | others:yes */
	/* for workspace */
	if (nas_safe_get_conf(debug, sizeof(debug), "nas_dbg") == 0)
		debug_nwksp = (int)atoi(debug);
#endif

	/* run main loop to dispatch message */
	nas_wksp_main_loop(nas_nwksp);

	return 0;
}
Ejemplo n.º 3
0
/* service main entry */
int
main(int argc, char *argv[])
{
	/* display usage if nothing is specified */
	if (argc == 2 &&
	    (!strncmp(argv[1], "-h", 2) ||
	     !strncmp(argv[1], "-H", 2))) {
		nas_wksp_display_usage();
		return 0;
	}

	/* alloc nas/wpa work space */
	if (!(nas_nwksp = nas_wksp_alloc_workspace())) {
		NASMSG("Unable to allocate work space memory. Quitting...\n");
		return 0;
	}

	if (argc > 1 && nas_wksp_parse_cmd(argc, argv, nas_nwksp)) {
		NASMSG("Command line parsing error. Quitting...\n");
		nas_wksp_free_workspace(nas_nwksp);
		return 0;
	}
	else {
#ifdef BCMDBG
		/* verbose - 0:no | others:yes */
		/* for workspace */
		char debug[8];
		if (nas_safe_get_conf(debug, sizeof(debug), "nas_dbg") == 0)
			debug_nwksp = (int)atoi(debug);
#endif
	}

	/* establish a handler to handle SIGTERM. */
	signal(SIGTERM, hup_hdlr);

	/* run main loop to dispatch messages */
	nas_wksp_main_loop(nas_nwksp);

	return 0;
}