Set MAC address needs the HW interface index
Change-Id: I7b175d57b85e626aab00221b6dac0498aebcbeae Signed-off-by: Neale Ranns <nranns@cisco.com>
This commit is contained in:

committed by
Damjan Marion

parent
206243c1b7
commit
d867a7cf6b
@ -879,6 +879,7 @@ static void vl_api_sw_interface_set_mac_address_t_handler
|
|||||||
vl_api_sw_interface_set_mac_address_reply_t *rmp;
|
vl_api_sw_interface_set_mac_address_reply_t *rmp;
|
||||||
vnet_main_t *vnm = vnet_get_main ();
|
vnet_main_t *vnm = vnet_get_main ();
|
||||||
u32 sw_if_index = ntohl (mp->sw_if_index);
|
u32 sw_if_index = ntohl (mp->sw_if_index);
|
||||||
|
vnet_sw_interface_t *si;
|
||||||
u64 mac;
|
u64 mac;
|
||||||
clib_error_t *error;
|
clib_error_t *error;
|
||||||
int rv = 0;
|
int rv = 0;
|
||||||
@ -892,7 +893,8 @@ static void vl_api_sw_interface_set_mac_address_t_handler
|
|||||||
| (u64) mp->mac_address[4] << (8 * 4)
|
| (u64) mp->mac_address[4] << (8 * 4)
|
||||||
| (u64) mp->mac_address[5] << (8 * 5));
|
| (u64) mp->mac_address[5] << (8 * 5));
|
||||||
|
|
||||||
error = vnet_hw_interface_change_mac_address (vnm, sw_if_index, mac);
|
si = vnet_get_sw_interface (vnm, sw_if_index);
|
||||||
|
error = vnet_hw_interface_change_mac_address (vnm, si->hw_if_index, mac);
|
||||||
if (error)
|
if (error)
|
||||||
{
|
{
|
||||||
rv = VNET_API_ERROR_UNIMPLEMENTED;
|
rv = VNET_API_ERROR_UNIMPLEMENTED;
|
||||||
|
@ -1198,6 +1198,7 @@ set_interface_mac_address (vlib_main_t * vm, unformat_input_t * input,
|
|||||||
vlib_cli_command_t * cmd)
|
vlib_cli_command_t * cmd)
|
||||||
{
|
{
|
||||||
vnet_main_t *vnm = vnet_get_main ();
|
vnet_main_t *vnm = vnet_get_main ();
|
||||||
|
vnet_sw_interface_t *si = NULL;
|
||||||
clib_error_t *error = 0;
|
clib_error_t *error = 0;
|
||||||
u32 sw_if_index = ~0;
|
u32 sw_if_index = ~0;
|
||||||
u64 mac = 0;
|
u64 mac = 0;
|
||||||
@ -1214,7 +1215,8 @@ set_interface_mac_address (vlib_main_t * vm, unformat_input_t * input,
|
|||||||
format_unformat_error, input);
|
format_unformat_error, input);
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
error = vnet_hw_interface_change_mac_address (vnm, sw_if_index, mac);
|
si = vnet_get_sw_interface (vnm, sw_if_index);
|
||||||
|
error = vnet_hw_interface_change_mac_address (vnm, si->hw_if_index, mac);
|
||||||
done:
|
done:
|
||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user