procd: initd: fix path allocation in early_insmod
authorNathan Hintz <nlhintz@hotmail.com>
Fri, 29 Dec 2017 04:48:26 +0000 (04:48 +0000)
committerHans Dedecker <dedeckeh@gmail.com>
Thu, 4 Jan 2018 10:15:58 +0000 (11:15 +0100)
Noticed that /tmp was not being created on /dev/zram0.  This was on
ixp4xx (nslu2) using GCC 6.3 and musl.

The allocation should be using the length of the passed string
(module path), not the size of the pointer to the string.

Signed-off-by: Nathan Hintz <nlhintz@hotmail.com>
initd/zram.c

index 9fab794..c730942 100644 (file)
@@ -60,7 +60,7 @@ early_insmod(char *module)
                struct utsname ver;
 
                uname(&ver);
-               path = alloca(sizeof(module) + strlen(ver.release) + 1);
+               path = alloca(strlen(module) + strlen(ver.release) + 1);
                sprintf(path, module, ver.release);
                modprobe[1] = path;
                execvp(modprobe[0], modprobe);