From: Dmitry Valter Date: Fri, 8 Apr 2022 10:08:32 +0000 (+0000) Subject: stats: fix vector overrun in expend check X-Git-Tag: v22.10-rc0~111 X-Git-Url: https://gerrit.fd.io/r/gitweb?a=commitdiff_plain;h=1c8c6d302af494c963842de06910d3c1c8187e42;p=vpp.git stats: fix vector overrun in expend check Do not access allocated elements beyond the end of the vector. They are allocated, but not yet valid both logically (they are at best NULLs) and according to ASAN. Type: fix Change-Id: Iaf43767d6d3bd4c24c7c5a0ba9b3410bbeeb0556 Signed-off-by: Dmitry Valter --- diff --git a/src/vlib/stats/stats.c b/src/vlib/stats/stats.c index cb29ddaf378..a19909d0dc4 100644 --- a/src/vlib/stats/stats.c +++ b/src/vlib/stats/stats.c @@ -354,7 +354,7 @@ vlib_stats_validate_will_expand_internal (u32 entry_index, va_list *va) u32 idx1 = va_arg (*va, u32); u64 **data = e->data; - if (idx0 >= vec_max_len (data)) + if (idx0 >= vec_len (data)) goto done; for (u32 i = 0; i <= idx0; i++) @@ -369,7 +369,7 @@ vlib_stats_validate_will_expand_internal (u32 entry_index, va_list *va) va_end (*va); - if (idx0 >= vec_max_len (data)) + if (idx0 >= vec_len (data)) goto done; for (u32 i = 0; i <= idx0; i++)