]> granicus.if.org Git - procps-ng/commitdiff
Possible segfault in file2strvec introduced by latest CVE fix
authorJan Rybar <jrybar@redhat.com>
Mon, 23 Jul 2018 12:44:52 +0000 (14:44 +0200)
committerCraig Small <csmall@enc.com.au>
Wed, 8 Aug 2018 10:00:24 +0000 (20:00 +1000)
'rbuf' used before allocated.
Revealed by static analysis

proc/readproc.c

index a6666cbca9ca7c68887b70f8f9b140d0779da651..544592534045fa4d7b55ed84c69b027da0f5f111 100644 (file)
@@ -720,7 +720,7 @@ static char** file2strvec(const char* directory, const char* what) {
        #undef ARG_LEN
        if (end_of_file &&
            ((n > 0 && buf[n-1] != '\0') ||     /* last read char not null */
-            (n <= 0 && rbuf[tot-1] != '\0')))  /* last read char not null */
+            (n <= 0 && rbuf && rbuf[tot-1] != '\0')))  /* last read char not null */
            buf[n++] = '\0';                    /* so append null-terminator */
 
        if (n <= 0) break; /* unneeded (end_of_file = 1) but avoid realloc */