Example #1
0
void parse_eob(char **parv, int parc) {
	if(get_serv(parv[0][0]) == bot.uplink) {
		ssend("%c EA\n", bot.scnum);
		notify("EOB (%c) from uplink", parv[0][0]);
	}
}
Example #2
0
int main(int argc, char *argv[], char *env[])
{
	const char *new_argv[] = { "/sbin/ngc", NULL, NULL, NULL };
	char *fixed_path;

	if (!argv[1] || argc != 3) {
		if (argc >= 2)
			printf
			    ("Usage: %s %s [start] [stop] [restart] [status] [zap]\n",
			     argv[0], argv[1]);
		else
			printf
			    ("Usage: itype i_file.i [start] [stop] [restart] [status] [zap]\n");
		exit(1);
	}
	/*printf("argc: %i argv[0]: %s argv[1]: %s argv[2]: %s\n", argc, argv[0], argv[1], argv[2]); */

	fixed_path = get_serv(argv[1]);
	if (!fixed_path) {
		printf("unkown service\n");
		exit(1);
	}

	/*printf("Service: %s\n", fixed_path); */

	/* usage "/etc/initng/test.i start" */
	if (strcmp(argv[2], "start") == 0) {
		new_argv[1] = "-u";
		new_argv[2] = fixed_path;
		execve((char *)new_argv[0], (char **)new_argv, environ);
		goto end;
	}

	/* usage "/etc/initng/test.i stop" */
	if (strcmp(argv[2], "stop") == 0) {
		new_argv[1] = "-d";
		new_argv[2] = fixed_path;
		execve((char *)new_argv[0], (char **)new_argv, environ);
		goto end;
	}

	/* usage "/etc/initng/test.i stop" */
	if (strcmp(argv[2], "status") == 0) {
		new_argv[1] = "-s";
		new_argv[2] = fixed_path;
		execve((char *)new_argv[0], (char **)new_argv, environ);
		goto end;
	}

	/* usage "/etc/initng/test.i zap" */
	if (strcmp(argv[2], "zap") == 0) {
		new_argv[1] = "-z";
		new_argv[2] = fixed_path;
		execve((char *)new_argv[0], (char **)new_argv, environ);
		goto end;
	}

	/* usage "/etc/initng/test.i restart" */
	if (strcmp(argv[2], "restart") == 0) {
		new_argv[1] = "-r";
		new_argv[2] = fixed_path;
		execve((char *)new_argv[0], (char **)new_argv, environ);
		goto end;
	}

	{
		printf("Usage: %s %s [start] [stop] [restart] [status] [zap]\n",
		       argv[0], argv[1]);
	}
      end:
	/* unload all modules */
	free(fixed_path);
	return (0);
}