From ce4101a8a6956b1dda3851a239afb7f12756d287 Mon Sep 17 00:00:00 2001 From: Kichan Kwon Date: Thu, 24 Mar 2016 20:25:10 +0900 Subject: [PATCH] Set max reading length - The length of buf = PATH_MAX (linux/limits.h) Change-Id: Ic58b774a8a215f144aa34e0bbc5d4c70852e46d8 Signed-off-by: Kichan Kwon --- src/proc-stat/proc-stat.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/proc-stat/proc-stat.c b/src/proc-stat/proc-stat.c index 4f2ad3f..ad20f33 100644 --- a/src/proc-stat/proc-stat.c +++ b/src/proc-stat/proc-stat.c @@ -149,13 +149,15 @@ static bool get_proc_cmdline(pid_t pid, char *cmdline) char cmdline_path[sizeof(PROC_CMDLINE_PATH) + MAX_DEC_SIZE(int)] = {0}; char *filename; FILE *fp; + char format[10]; snprintf(cmdline_path, sizeof(cmdline_path), PROC_CMDLINE_PATH, pid); fp = fopen(cmdline_path, "r"); if (fp == NULL) return false; - if (fscanf(fp, "%s", buf) < 1) { + snprintf(format, 10, "%%%ds", PATH_MAX); + if (fscanf(fp, format, buf) < 1) { fclose(fp); return false; } -- 2.7.4