From 7febddabd8e5a17cc1480908dbe286d5ed834b17 Mon Sep 17 00:00:00 2001 From: Jan Rybar Date: Wed, 8 Aug 2018 20:06:57 +1000 Subject: [PATCH] Possible segfault in file2strvec introduced by latest CVE fix 'rbuf' used before allocated. Revealed by static analysis References: commit 36e066df52eedf147a51e4cf3a86fd13748d6f79 Signed-off-by: Craig Small --- proc/readproc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/proc/readproc.c b/proc/readproc.c index 0eaa5c78..af02446d 100644 --- a/proc/readproc.c +++ b/proc/readproc.c @@ -744,7 +744,8 @@ 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 */