diff --git a/scripts/docker-image-create-uefi-old.sh b/scripts/docker-image-create-uefi-old.sh index 31bb90e..957879e 100755 --- a/scripts/docker-image-create-uefi-old.sh +++ b/scripts/docker-image-create-uefi-old.sh @@ -90,7 +90,6 @@ chmod 755 /staging/root/sbin/init echo "sparkos" > /staging/root/etc/hostname echo "127.0.0.1 localhost" > /staging/root/etc/hosts echo "127.0.1.1 sparkos" >> /staging/root/etc/hosts -echo "spark:x:1000:" >> /staging/root/etc/group # Copy README to root partition cp /build/config/image-readme.txt /staging/root/README.txt diff --git a/scripts/docker-image-create-uefi.sh b/scripts/docker-image-create-uefi.sh index a2afd64..1eb6390 100755 --- a/scripts/docker-image-create-uefi.sh +++ b/scripts/docker-image-create-uefi.sh @@ -65,7 +65,6 @@ chmod 755 /staging/root/sbin/init echo "sparkos" > /staging/root/etc/hostname echo "127.0.0.1 localhost" > /staging/root/etc/hosts echo "127.0.1.1 sparkos" >> /staging/root/etc/hosts -echo "spark:x:1000:" >> /staging/root/etc/group # Copy README to root partition cp /build/config/image-readme.txt /staging/root/README.txt diff --git a/src/init.c b/src/init.c index eb0a353..59304b6 100644 --- a/src/init.c +++ b/src/init.c @@ -23,6 +23,7 @@ #include #include #include +#include static void signal_handler(int sig) { if (sig == SIGCHLD) { @@ -81,6 +82,7 @@ static int init_network_interface(const char *ifname) { // Prepare interface request structure memset(&ifr, 0, sizeof(ifr)); strncpy(ifr.ifr_name, ifname, IFNAMSIZ - 1); + ifr.ifr_name[IFNAMSIZ - 1] = '\0'; // Ensure null termination // Get current flags if (ioctl(sock, SIOCGIFFLAGS, &ifr) < 0) { @@ -148,12 +150,17 @@ static int mount_fs(const char *source, const char *target, const char *fstype, * No dependency on mkdir binary */ static int mkdir_p(const char *path) { - char tmp[256]; + char tmp[PATH_MAX]; char *p = NULL; size_t len; + len = strlen(path); + if (len >= PATH_MAX) { + errno = ENAMETOOLONG; + return -1; + } + snprintf(tmp, sizeof(tmp), "%s", path); - len = strlen(tmp); if (tmp[len - 1] == '/') tmp[len - 1] = 0;