diff options
author | 2020-07-16 12:03:35 +0200 | |
---|---|---|
committer | 2020-08-18 19:47:21 +0000 | |
commit | 526906751067ff66a87bab591766bc0ff4b91095 (patch) | |
tree | b6c91d99441ea3a1ca6bbeb84733694fda470522 /src/plugins/dpdk | |
parent | d48d51df239fbc2f64727a74841926e33fc8019c (diff) |
vppinfra: fix format_c_identifier vector overflow
In case of vector, we must check length before trying to access element.
Also fix wrong DPDK plugin workaround.
Type: fix
Change-Id: I2ecef1c88ebef2362f48cab0d462699aa43cd4b9
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit 1bd6f61820c6c15534ebb04a4b070ba84bf08a9d)
Diffstat (limited to 'src/plugins/dpdk')
-rw-r--r-- | src/plugins/dpdk/device/format.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/plugins/dpdk/device/format.c b/src/plugins/dpdk/device/format.c index 942def63b0a..436466fa1ad 100644 --- a/src/plugins/dpdk/device/format.c +++ b/src/plugins/dpdk/device/format.c @@ -676,12 +676,10 @@ format_dpdk_device (u8 * s, va_list * args) xstat = vec_elt_at_index(xd->xstats, i); if (verbose == 2 || (verbose && xstat->value)) { - /* format_c_identifier doesn't like c strings inside vector */ - u8 * name = format(0,"%s", xstat_names[i].name); xs = format(xs, "\n%U%-38U%16Lu", format_white_space, indent + 4, - format_c_identifier, name, xstat->value); - vec_free(name); + format_c_identifier, xstat_names[i].name, + xstat->value); } } /* *INDENT-ON* */ |