]> granicus.if.org Git - procps-ng/commitdiff
proc/whattime.c: Always initialize buf.
authorQualys Security Advisory <qsa@qualys.com>
Thu, 1 Jan 1970 00:00:00 +0000 (00:00 +0000)
committerCraig Small <csmall@enc.com.au>
Fri, 18 May 2018 21:32:21 +0000 (07:32 +1000)
In the human_readable case; otherwise the strcat() that follows may
append bytes to the previous contents of buf.

Also, slightly enlarge buf, as it was a bit too tight.

Could also replace all sprintf()s with snprintf()s, but all the calls
here output a limited number of characters, so they should be safe.

proc/whattime.c

index f55f36365bb6ef604241cb21d50a1664e5ee88f0..c223cad63f3c05a0a1909994bd8ec750e0310be9 100644 (file)
@@ -38,7 +38,7 @@
 #include "whattime.h"
 #include "sysinfo.h"
 
-static char buf[128];
+static char buf[256];
 static double av[3];
 
 char *sprint_uptime(int human_readable) {
@@ -60,6 +60,7 @@ char *sprint_uptime(int human_readable) {
       realtime->tm_hour, realtime->tm_min, realtime->tm_sec);
   } else {
     pos = 0;
+    buf[0] = '\0';
   }
 
 /* read and calculate the amount of uptime */