]> git.apps.os.sepia.ceph.com Git - xfstests-dev.git/commitdiff
xfstests: fix buffer overflow in lstat64.c
authorBarry Naujok <bnaujok@sgi.com>
Thu, 20 Nov 2008 14:24:01 +0000 (14:24 +0000)
committerBarry Naujok <bnaujok@sgi.com>
Thu, 20 Nov 2008 14:24:01 +0000 (14:24 +0000)
lstat64.c was putting an 11-byte string into a 10-byte buffer.
Merge of master-melb:xfs-cmds:32512a by kenmcd.

  fix buffer overflow in lstat64.c

src/lstat64.c

index 12d1fe4e995004d9fdc42935ba60722f611e37a4..59b92c50622d79ae9a90d1cb3083d413ebb15ff2 100644 (file)
@@ -57,7 +57,6 @@ int
 main(int argc, char **argv)
 {
        struct stat64   sbuf;
-       char            mode[10];
        int             i, c;
        int             terse_flag = 0;
 
@@ -78,6 +77,7 @@ main(int argc, char **argv)
        time(&timebuf);
 
        for (i = optind; i < argc; i++) {
+               char *mode = "----------";
 
                if( lstat64(argv[i], &sbuf) < 0) {
                        perror(argv[i]);
@@ -92,7 +92,6 @@ main(int argc, char **argv)
                        printf("  Size: %-10llu", (unsigned long long)sbuf.st_size);
                }
 
-               strcpy(mode,"----------");
                if (sbuf.st_mode & (S_IEXEC>>6))
                        mode[9] = 'x';
                if (sbuf.st_mode & (S_IWRITE>>6))