]> git.ipfire.org Git - ipfire-2.x.git/blobdiff - src/misc-progs/addonctrl.c
misc-progs: addonctrl: Replace all sprintf() with snprintf()
[ipfire-2.x.git] / src / misc-progs / addonctrl.c
index c90eb7952243e9610a1624592dc61c2752b87cd8..9645cee18981d4d8632e59eeaca89ef377df79ef 100644 (file)
@@ -15,9 +15,8 @@
 
 #define BUFFER_SIZE 1024
 
-char command[BUFFER_SIZE];
-
 int main(int argc, char *argv[]) {
+       char command[BUFFER_SIZE];
 
        if (!(initsetuid()))
                exit(1);
@@ -48,29 +47,29 @@ int main(int argc, char *argv[]) {
            fprintf(stderr, "\nAddon '%s' not found.\n\naddonctrl addon (start|stop|restart|reload|status|enable|disable)\n\n", name);
            exit(1);
        }
-       
+
        if (strcmp(argv[2], "start") == 0) {
-               sprintf(command,"/etc/rc.d/init.d/%s start", name);
+               snprintf(command, BUFFER_SIZE - 1, "/etc/rc.d/init.d/%s start", name);
                safe_system(command);
        } else if (strcmp(argv[2], "stop") == 0) {
-               sprintf(command,"/etc/rc.d/init.d/%s stop", name);
+               snprintf(command, BUFFER_SIZE - 1, "/etc/rc.d/init.d/%s stop", name);
                safe_system(command);
        } else if (strcmp(argv[2], "restart") == 0) {
-               sprintf(command,"/etc/rc.d/init.d/%s restart", name);
+               snprintf(command, BUFFER_SIZE - 1, "/etc/rc.d/init.d/%s restart", name);
                safe_system(command);
        } else if (strcmp(argv[2], "reload") == 0) {
-               sprintf(command,"/etc/rc.d/init.d/%s reload", name);
+               snprintf(command, BUFFER_SIZE - 1, "/etc/rc.d/init.d/%s reload", name);
                safe_system(command);
        } else if (strcmp(argv[2], "status") == 0) {
-               sprintf(command,"/etc/rc.d/init.d/%s status", name);
+               snprintf(command, BUFFER_SIZE - 1, "/etc/rc.d/init.d/%s status", name);
                safe_system(command);
        } else if (strcmp(argv[2], "enable") == 0) {
-               sprintf(command,"mv -f /etc/rc.d/rc3.d/off/S??%s /etc/rc.d/rc3.d" , name);
+               snprintf(command, BUFFER_SIZE - 1, "mv -f /etc/rc.d/rc3.d/off/S??%s /etc/rc.d/rc3.d" , name);
                safe_system(command);
        } else if (strcmp(argv[2], "disable") == 0) {
-               sprintf(command,"mkdir -p /etc/rc.d/rc3.d/off");
+               snprintf(command, BUFFER_SIZE - 1, "mkdir -p /etc/rc.d/rc3.d/off");
                safe_system(command);
-               sprintf(command,"mv -f /etc/rc.d/rc3.d/S??%s /etc/rc.d/rc3.d/off" , name);
+               snprintf(command, BUFFER_SIZE - 1, "mv -f /etc/rc.d/rc3.d/S??%s /etc/rc.d/rc3.d/off" , name);
                safe_system(command);
        } else {
                fprintf(stderr, "\nBad argument given.\n\naddonctrl addon (start|stop|restart|reload|enable|disable)\n\n");