public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] perf tools: Check '/tmp/perf-' symbol file ownership
@ 2011-08-09 19:54 Pekka Enberg
  2011-08-09 19:55 ` Pekka Enberg
  2011-08-10  9:48 ` [tip:perf/urgent] perf symbols: " tip-bot for Pekka Enberg
  0 siblings, 2 replies; 5+ messages in thread
From: Pekka Enberg @ 2011-08-09 19:54 UTC (permalink / raw)
  To: linux-kernel
  Cc: Pekka Enberg, Arnaldo Carvalho de Melo, Frederic Weisbecker,
	Peter Zijlstra

The external symbol files are generated by JIT compilers, for example, but we
need to make sure they're ours before injecting them to 'perf report'.

Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
---
 tools/perf/util/symbol.c |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/tools/perf/util/symbol.c b/tools/perf/util/symbol.c
index eec1963..a8b5371 100644
--- a/tools/perf/util/symbol.c
+++ b/tools/perf/util/symbol.c
@@ -1504,6 +1504,17 @@ int dso__load(struct dso *dso, struct map *map, symbol_filter_t filter)
 	dso->adjust_symbols = 0;
 
 	if (strncmp(dso->name, "/tmp/perf-", 10) == 0) {
+		struct stat st;
+
+		if (stat(dso->name, &st) < 0)
+			return -1;
+
+		if (st.st_uid && (st.st_uid != geteuid())) {
+			pr_warning("File %s not owned by current user or root, "
+				"ignoring it.\n", dso->name);
+			return -1;
+		}
+
 		ret = dso__load_perf_map(dso, map, filter);
 		dso->symtab_type = ret > 0 ? SYMTAB__JAVA_JIT :
 					      SYMTAB__NOT_FOUND;
-- 
1.7.0.4


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

end of thread, other threads:[~2011-08-12 17:34 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-08-09 19:54 [PATCH] perf tools: Check '/tmp/perf-' symbol file ownership Pekka Enberg
2011-08-09 19:55 ` Pekka Enberg
2011-08-10  9:48 ` [tip:perf/urgent] perf symbols: " tip-bot for Pekka Enberg
2011-08-11  4:51   ` David Ahern
2011-08-12 17:34     ` Pekka Enberg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox