From 245463865cdd6ecb616d3ad8ddb8db11b7538d71 Mon Sep 17 00:00:00 2001 From: Mathieu Desnoyers Date: Tue, 18 Jun 2013 15:51:37 -0400 Subject: [PATCH] Fix: out of bound strcpy 1019904 Copy into fixed size buffer In add_context: A source buffer of statically unknown size is copied into a fixed-size destination buffer (CWE-120) Signed-off-by: Mathieu Desnoyers --- src/bin/lttng/commands/add_context.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/bin/lttng/commands/add_context.c b/src/bin/lttng/commands/add_context.c index 453575983..4904d2772 100644 --- a/src/bin/lttng/commands/add_context.c +++ b/src/bin/lttng/commands/add_context.c @@ -383,7 +383,9 @@ static int add_context(char *session_name) if (context.ctx == LTTNG_EVENT_CONTEXT_PERF_COUNTER) { context.u.perf_counter.type = type->opt->u.perf.type; context.u.perf_counter.config = type->opt->u.perf.config; - strcpy(context.u.perf_counter.name, type->opt->symbol); + strncpy(context.u.perf_counter.name, type->opt->symbol, + LTTNG_SYMBOL_NAME_LEN); + context.u.perf_counter.name[LTTNG_SYMBOL_NAME_LEN - 1] = '\0'; /* Replace : and - by _ */ while ((ptr = strchr(context.u.perf_counter.name, '-')) != NULL) { *ptr = '_'; -- 2.34.1