linux-cp: fix seg fault in get_v2 methods
vl_api_lcp_itf_pair_get_v2_t_handler method was not be able to handle invalid sw_if_index, it caused a seg fault. With this fix, the method checks for an invalid sw_if_index and sends error back to caller. Type: fix Change-Id: I4e89b0cab34f9109c4ce2689021ecfc2786055ab Signed-off-by: Anton Nikolaev <anikolaev@netgate.com>
This commit is contained in:
committed by
Matthew Smith
parent
d7f0daecce
commit
4ebe5eef8a
@@ -214,9 +214,16 @@ vl_api_lcp_itf_pair_get_v2_t_handler (vl_api_lcp_itf_pair_get_v2_t *mp)
|
||||
else
|
||||
{
|
||||
VALIDATE_SW_IF_INDEX_END (mp);
|
||||
|
||||
u32 pair_index = lcp_itf_pair_find_by_phy (mp->sw_if_index);
|
||||
if (pair_index == INDEX_INVALID)
|
||||
{
|
||||
rv = VNET_API_ERROR_INVALID_SW_IF_INDEX;
|
||||
goto bad_sw_if_index;
|
||||
}
|
||||
send_lcp_itf_pair_details (
|
||||
lcp_itf_pair_find_by_phy (mp->sw_if_index),
|
||||
vl_api_client_index_to_registration (mp->client_index), mp->context);
|
||||
pair_index, vl_api_client_index_to_registration (mp->client_index),
|
||||
mp->context);
|
||||
|
||||
BAD_SW_IF_INDEX_LABEL;
|
||||
REPLY_MACRO2_END (VL_API_LCP_ITF_PAIR_GET_V2_REPLY,
|
||||
|
||||
Reference in New Issue
Block a user