]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
nvram: use strdup 22370/head
authorRosen Penev <rosenp@gmail.com>
Mon, 23 Feb 2026 02:06:07 +0000 (18:06 -0800)
committerJonas Jelonek <jelonek.jonas@gmail.com>
Thu, 11 Jun 2026 08:33:00 +0000 (10:33 +0200)
No need for malloc + strcpy.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22370
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
package/utils/nvram/src/cli.c
package/utils/nvram/src/nvram.c

index 224a2b7e2664b4ba4acb889816579412af4b4bb5..c3ab105a0edfdd4defcf7ab2e8aaa0f4fb32a8b0 100644 (file)
@@ -91,14 +91,14 @@ static int do_unset(nvram_handle_t *nvram, const char *var)
 static int do_set(nvram_handle_t *nvram, const char *pair)
 {
        char *val = strstr(pair, "=");
-       char var[strlen(pair)];
+       char *var;
        int stat = 1;
 
-       if( val != NULL )
-       {
-               memset(var, 0, sizeof(var));
-               strncpy(var, pair, (int)(val-pair));
-               stat = nvram_set(nvram, var, (char *)(val + 1));
+       if (val) {
+               var = strndup(pair, val - pair);
+               if (var)
+                       stat = nvram_set(nvram, var, (char *)(val + 1));
+               free(var);
        }
 
        return stat;
index 86393d4ec93d25504171d1d23a4678a81ef447dc..f2a4d0589f287af681bf45da6817358243928a87 100644 (file)
@@ -448,12 +448,9 @@ char * nvram_find_mtd(void)
                                sprintf(dev, "/dev/mtdblock%d", i);
                                if( stat(dev, &s) > -1 && (s.st_mode & S_IFBLK) )
                                {
-                                       path = malloc(strlen(dev) + 1);
-                                       if(path)
-                                       {
-                                               strncpy(path, dev, strlen(dev)+1);
+                                       path = strdup(dev);
+                                       if (path)
                                                break;
-                                       }
                                }
                        }
                }