From 62d9fda8e474f87459c6e24d13b09f7bfec146f3 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Beno=C3=AEt=20Ganne?= Date: Mon, 16 Dec 2019 15:49:47 +0100 Subject: [PATCH] vlib: fix vector-as-C-string overflow MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Type: fix Change-Id: If0419ff1a82d45e5b3326973008e1b9feb290c5a Signed-off-by: Benoît Ganne --- src/vlib/cli.c | 4 ++-- src/vlib/node_cli.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/vlib/cli.c b/src/vlib/cli.c index 6088fc215a8..467d1f7b906 100644 --- a/src/vlib/cli.c +++ b/src/vlib/cli.c @@ -558,7 +558,7 @@ vlib_cli_dispatch_sub_commands (vlib_main_t * vm, u32 c; } *ed; ed = ELOG_DATA (&vm->elog_main, e); - ed->c = elog_string (&vm->elog_main, c->path); + ed->c = elog_string (&vm->elog_main, "%v", c->path); } if (!c->is_mp_safe) @@ -584,7 +584,7 @@ vlib_cli_dispatch_sub_commands (vlib_main_t * vm, u32 c, err; } *ed; ed = ELOG_DATA (&vm->elog_main, e); - ed->c = elog_string (&vm->elog_main, c->path); + ed->c = elog_string (&vm->elog_main, "%v", c->path); if (c_error) { vec_add1 (c_error->what, 0); diff --git a/src/vlib/node_cli.c b/src/vlib/node_cli.c index 32c6c1a4ef9..bf18702d582 100644 --- a/src/vlib/node_cli.c +++ b/src/vlib/node_cli.c @@ -606,7 +606,7 @@ show_node (vlib_main_t * vm, unformat_input_t * input, if (n->sibling_of) s = format (s, ", sibling-of %s", n->sibling_of); - vlib_cli_output (vm, "node %s, type %s, state %U, index %d%v\n", + vlib_cli_output (vm, "node %v, type %s, state %U, index %d%v\n", n->name, type_str, format_vlib_node_state, vm, n, n->index, s); vec_reset_length (s); -- 2.16.6