From 7f1d780f0be6e176bd19809c2d733e7ebd0007c4 Mon Sep 17 00:00:00 2001 From: Steven Luong Date: Tue, 19 Jan 2021 23:09:51 -0800 Subject: classify: crash on classify filter pcap del command If classify pcap filter was never configured, typing the delete command causes a crash. The reason is cm->classify_table_index_by_sw_if_index not yet allocated. The fix is to add a check before we access the vector. Type: fix Fixes: gerrit 28475 Signed-off-by: Steven Luong Change-Id: Ia33bd91fa82d8ffc4490d4069155980a6e233268 --- src/vnet/classify/vnet_classify.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/vnet/classify/vnet_classify.c') diff --git a/src/vnet/classify/vnet_classify.c b/src/vnet/classify/vnet_classify.c index 7e239cc57a7..ca34eecc77f 100644 --- a/src/vnet/classify/vnet_classify.c +++ b/src/vnet/classify/vnet_classify.c @@ -1786,7 +1786,8 @@ classify_set_pcap_chain (vnet_classify_main_t * cm, * Put the table index where device drivers can find them. * This table index will be either a valid table or a ~0 to clear it. */ - cm->classify_table_index_by_sw_if_index[sw_if_index] = table_index; + if (vec_len (cm->classify_table_index_by_sw_if_index) > sw_if_index) + cm->classify_table_index_by_sw_if_index[sw_if_index] = table_index; if (sw_if_index > 0) { vnet_hw_interface_t *hi; -- cgit 1.2.3-korg