From 6178bdafa6a318d50cc8ad82f07c6c798c7024ef Mon Sep 17 00:00:00 2001 From: Benoît Ganne Date: Wed, 4 Nov 2020 10:02:03 +0100 Subject: feature: reset interface feature arc on interface deletion MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When removing an interface we must reset all per-interface per-feature arc data to ensure we do not get wrong feature arc config data when the sw_if_index is recycled. Type: fix Change-Id: I8c9d850d7c62b7b77193da4258ab5fb9bdda85a6 Signed-off-by: Benoît Ganne --- src/vnet/arp/arp.c | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) (limited to 'src/vnet/arp') diff --git a/src/vnet/arp/arp.c b/src/vnet/arp/arp.c index 8b57376522d..e02f3d8b52a 100644 --- a/src/vnet/arp/arp.c +++ b/src/vnet/arp/arp.c @@ -855,17 +855,8 @@ static clib_error_t * vnet_arp_add_del_sw_interface (vnet_main_t * vnm, u32 sw_if_index, u32 is_add) { ethernet_arp_main_t *am = ðernet_arp_main; - - if (!is_add && sw_if_index != ~0) - { - arp_disable (am, sw_if_index); - } - else if (is_add) - { - vnet_feature_enable_disable ("arp", "arp-disabled", - sw_if_index, 1, NULL, 0); - } - + if (is_add) + arp_disable (am, sw_if_index); return (NULL); } -- cgit 1.2.3-korg