[Initng-svn] r3852 - initng/trunk/tools

svn at initng.thinktux.net svn at initng.thinktux.net
Thu Apr 20 01:46:02 CEST 2006


Author: jimmy
Date: Thu Apr 20 01:46:01 2006
New Revision: 3852

Modified:
   initng/trunk/tools/itype.c

Log:
Now ./test.i stop works!


Modified: initng/trunk/tools/itype.c
==============================================================================
--- initng/trunk/tools/itype.c	(original)
+++ initng/trunk/tools/itype.c	Thu Apr 20 01:46:01 2006
@@ -83,7 +83,7 @@
 
 int main(int argc, char *argv[], char *env[])
 {
-	printf("argc: %i argv[0]: %s argv[1]: %s argv[2]: %s\n", argc, argv[0], argv[1], argv[2]); 
+	/*printf("argc: %i argv[0]: %s argv[1]: %s argv[2]: %s\n", argc, argv[0], argv[1], argv[2]); */
 
 	/* initialise global variables */
 	initng_global_new(argc, argv, env, I_AM_UTILITY);
@@ -99,25 +99,32 @@
 	if (argc == 3)
 	{
 		service_cache_h *serv = NULL;
+		const char *new_argv[] = { "/sbin/ngc", NULL, NULL, NULL };
 
 		serv = parse_path(argv[1]);
 		if (serv)
 		{
 			if (strcmp(argv[2], "start") == 0)
 			{
-				printf("ngc -u %s\n", serv->name);
+				new_argv[1]="-u";
+				new_argv[2]=serv->name;
+				execve((char *)new_argv[0], (char **)new_argv, environ);
 				goto end;
 			}
 
 			if (strcmp(argv[2], "stop") == 0)
 			{
-				printf("ngc -d %s\n", serv->name);
+				new_argv[1]="-d";
+				new_argv[2]=serv->name;
+				execve((char *)new_argv[0], (char **)new_argv, environ);
 				goto end;
 			}
 
 			if (strcmp(argv[2], "status") == 0)
 			{
-				printf("ngc -s %s\n", serv->name);
+				new_argv[1]="-s";
+				new_argv[2]=serv->name;
+				execve((char *)new_argv[0], (char **)new_argv, environ);
 				goto end;
 			}
 			


More information about the Initng-svn mailing list