Correct size argument for strncat().
authorGuus Sliepen <guus@tinc-vpn.org>
Tue, 4 Jan 2005 22:18:58 +0000 (22:18 +0000)
committerGuus Sliepen <guus@tinc-vpn.org>
Tue, 4 Jan 2005 22:18:58 +0000 (22:18 +0000)
src/process.c

index a4e2548f8d4983af1239a69bb3d5c7e2e68bbc5b..0ea65b3195f39c17ab5b47b0459224fc09ab4e52 100644 (file)
@@ -81,25 +81,25 @@ bool install_service(void) {
        }
 
        if(!strchr(program_name, '\\')) {
-               GetCurrentDirectory(sizeof(command) - 1, command + 1);
-               strncat(command, "\\", sizeof(command));
+               GetCurrentDirectory(sizeof command - 1, command + 1);
+               strncat(command, "\\", sizeof command - strlen(command));
        }
 
-       strncat(command, program_name, sizeof(command));
+       strncat(command, program_name, sizeof command - strlen(command));
 
-       strncat(command, "\"", sizeof(command));
+       strncat(command, "\"", sizeof command - strlen(command));
 
        for(argp = g_argv + 1; *argp; argp++) {
                space = strchr(*argp, ' ');
-               strncat(command, " ", sizeof(command));
+               strncat(command, " ", sizeof command - strlen(command));
                
                if(space)
-                       strncat(command, "\"", sizeof(command));
+                       strncat(command, "\"", sizeof command - strlen(command));
                
-               strncat(command, *argp, sizeof(command));
+               strncat(command, *argp, sizeof command - strlen(command));
 
                if(space)
-                       strncat(command, "\"", sizeof(command));
+                       strncat(command, "\"", sizeof command - strlen(command));
        }
 
        service = CreateService(manager, identname, identname,