ls: fix buffer length checks
authorAlan Cox <alan@linux.intel.com>
Thu, 21 May 2015 22:34:59 +0000 (23:34 +0100)
committerAlan Cox <alan@linux.intel.com>
Thu, 21 May 2015 22:34:59 +0000 (23:34 +0100)
Applications/util/ls.c

index 97da0a0..225f2ee 100644 (file)
@@ -295,9 +295,9 @@ void main(int argc, char *argv[])
            if ((*name != '.') || (name[1] != '\0')) {
                strcpy(fullname, name);
                if (!endslash)
-                   strcat(fullname, "/");
+                   strlcat(fullname, "/", sizeof(fullname));
            }
-           strcat(fullname, dp->d_name);
+           strlcat(fullname, dp->d_name, sizeof(fullname));
            if (listused >= listsize) {
                newlist = realloc(list,
                            ((sizeof(char **)) * (listsize + LISTSIZE)));