diff options
author | Steve Shin <jonshin@cisco.com> | 2018-03-07 13:29:29 -0800 |
---|---|---|
committer | Steve Shin <jonshin@cisco.com> | 2018-03-07 13:42:09 -0800 |
commit | a36f08c364d96fad0ec07ac123b62530f6a8a6d5 (patch) | |
tree | 18b9319c6f50400bb320164a4fb824872012742e /src/vnet/ethernet | |
parent | 8db943000763499764c0fefbf0c237b8345ffe36 (diff) |
Fix Avoid crash in vnet_delete_sub_interface routine
vnet_get_sw_interface shoud be called after sw_if_index is validated.
Change-Id: I36f1d90999c740803386404ba9b32703b659cd54
Signed-off-by: Steve Shin <jonshin@cisco.com>
Diffstat (limited to 'src/vnet/ethernet')
-rw-r--r-- | src/vnet/ethernet/interface.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/vnet/ethernet/interface.c b/src/vnet/ethernet/interface.c index 091ca2977ee..a29302bee3e 100644 --- a/src/vnet/ethernet/interface.c +++ b/src/vnet/ethernet/interface.c @@ -739,12 +739,13 @@ int vnet_delete_sub_interface (u32 sw_if_index) { vnet_main_t *vnm = vnet_get_main (); - vnet_sw_interface_t *si = vnet_get_sw_interface (vnm, sw_if_index); + vnet_sw_interface_t *si; int rv = 0; if (pool_is_free_index (vnm->interface_main.sw_interfaces, sw_if_index)) return VNET_API_ERROR_INVALID_SW_IF_INDEX; + si = vnet_get_sw_interface (vnm, sw_if_index); if (si->type == VNET_SW_INTERFACE_TYPE_SUB || si->type == VNET_SW_INTERFACE_TYPE_P2P) { |