From fd2bb2f751c13b3c0c002b8e012810902b9da364 Mon Sep 17 00:00:00 2001 From: "A. Wilcox" Date: Fri, 8 Jun 2018 02:02:24 -0500 Subject: harmony -> system --- system/busybox/top-buffer-overflow.patch | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 system/busybox/top-buffer-overflow.patch (limited to 'system/busybox/top-buffer-overflow.patch') diff --git a/system/busybox/top-buffer-overflow.patch b/system/busybox/top-buffer-overflow.patch new file mode 100644 index 000000000..14b23c648 --- /dev/null +++ b/system/busybox/top-buffer-overflow.patch @@ -0,0 +1,20 @@ +--- busybox-1.27.0.orig/procps/top.c ++++ busybox-1.27.0/procps/top.c +@@ -694,10 +694,14 @@ + CALC_STAT(pcpu, (s->pcpu*pcpu_scale + pcpu_half) >> pcpu_shift); + #endif + +- if (s->vsz >= 100000) +- sprintf(vsz_str_buf, "%6ldm", s->vsz/1024); ++ if ((s->vsz / (1024 * 1024)) >= 100000) ++ snprintf(vsz_str_buf, sizeof(vsz_str_buf), "%6ldt", s->vsz/(1024 * 1024 * 1024)); ++ else if ((s->vsz / 1024) >= 100000) ++ snprintf(vsz_str_buf, sizeof(vsz_str_buf), "%6ldg", s->vsz/(1024 * 1024)); ++ else if (s->vsz >= 100000) ++ snprintf(vsz_str_buf, sizeof(vsz_str_buf), "%6ldm", s->vsz/1024); + else +- sprintf(vsz_str_buf, "%7lu", s->vsz); ++ snprintf(vsz_str_buf, sizeof(vsz_str_buf), "%7lu", s->vsz); + /* PID PPID USER STAT VSZ %VSZ [%CPU] COMMAND */ + col = snprintf(line_buf, scr_width, + "\n" "%5u%6u %-8.8s %s%s" FMT -- cgit v1.2.3-60-g2f50