perf_counter: buffer overwrite problem for perf top command

From: Erdem Aktas
Date: Sun May 10 2009 - 02:13:37 EST


Hi;
There is a buffer overwrite problem in builtin-top.c line 526, When I
tried to use ./perf top command, it was giving memory corruption
problem. should not we use malloc(strlen(str)+1) ?

Regards
-erdem


=======================
diff --git a/Documentation/perf_counter/builtin-top.c
b/Documentation/perf_counter/builtin-top.c
index cd6f61d..b1549dd 100644
--- a/Documentation/perf_counter/builtin-top.c
+++ b/Documentation/perf_counter/builtin-top.c
@@ -523,7 +523,7 @@ static int read_symbol(FILE *in, struct sym_entry *s)
if (strstr(sym, "_text_start") || strstr(sym, "_text_end"))
return 1;

- s->sym = malloc(strlen(str));
+ s->sym = malloc(strlen(str)+1);
assert(s->sym);

strcpy((char *)s->sym, str);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/