All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] perf tools: fix off-by-one comparison on maximum code
@ 2016-04-24 18:56 Colin King
  2016-04-25 23:29 ` Arnaldo Carvalho de Melo
  2016-04-27 15:33 ` [tip:perf/core] perf intel-pt: Fix " tip-bot for Colin Ian King
  0 siblings, 2 replies; 3+ messages in thread
From: Colin King @ 2016-04-24 18:56 UTC (permalink / raw)
  To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Alexander Shishkin, Adrian Hunter
  Cc: linux-kernel

From: Colin Ian King <colin.king@canonical.com>

The check for the maximum code is off-by-one; the current
comparison of a code that is INTEL_PT_ERR_MAX will cause the
strlcpy to perform an out of bounds array access on the
intel_pt_err_msgs array. Fix this with a >= comparison.

Signed-off-by: Colin Ian King <colin.king@canonical.com>
---
 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c b/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c
index 9409d01..9c8f15d 100644
--- a/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c
+++ b/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c
@@ -356,7 +356,7 @@ static const char *intel_pt_err_msgs[] = {
 
 int intel_pt__strerror(int code, char *buf, size_t buflen)
 {
-	if (code < 1 || code > INTEL_PT_ERR_MAX)
+	if (code < 1 || code >= INTEL_PT_ERR_MAX)
 		code = INTEL_PT_ERR_UNK;
 	strlcpy(buf, intel_pt_err_msgs[code], buflen);
 	return 0;
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-04-27 15:34 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-24 18:56 [PATCH] perf tools: fix off-by-one comparison on maximum code Colin King
2016-04-25 23:29 ` Arnaldo Carvalho de Melo
2016-04-27 15:33 ` [tip:perf/core] perf intel-pt: Fix " tip-bot for Colin Ian King

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.