summaryrefslogtreecommitdiffstats
path: root/src/vnet/interface_cli.c
diff options
context:
space:
mode:
authorJohn Lo <loj@cisco.com>2017-10-31 14:31:10 -0400
committerDave Barach <openvpp@barachs.net>2017-10-31 20:03:11 +0000
commit62fcc0ac6151b57b1177ac8b346341fc4dac3bb3 (patch)
tree6c80cd59df8fafe9b1fcef87ee262e7c2b726213 /src/vnet/interface_cli.c
parentca3b6f1b4116010b1acbbb29a945767cb5443914 (diff)
Fix set interface mac address API to be endian neutral
Store and pass MAC address as 6 byte u8 array instead of u64 to make MAC address handling in set interface MAC endian neutral. The previous API handler only works for little endian. Change-Id: Ie4ec33a840bc5122ab1f17e25977e58f3466253b Signed-off-by: John Lo <loj@cisco.com>
Diffstat (limited to 'src/vnet/interface_cli.c')
-rw-r--r--src/vnet/interface_cli.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/vnet/interface_cli.c b/src/vnet/interface_cli.c
index e5efb1faef7..0debdb4d0b7 100644
--- a/src/vnet/interface_cli.c
+++ b/src/vnet/interface_cli.c
@@ -1201,7 +1201,7 @@ set_interface_mac_address (vlib_main_t * vm, unformat_input_t * input,
vnet_sw_interface_t *si = NULL;
clib_error_t *error = 0;
u32 sw_if_index = ~0;
- u64 mac = 0;
+ u8 mac[6] = { 0 };
if (!unformat_user (input, unformat_vnet_sw_interface, vnm, &sw_if_index))
{
@@ -1209,7 +1209,7 @@ set_interface_mac_address (vlib_main_t * vm, unformat_input_t * input,
format_unformat_error, input);
goto done;
}
- if (!unformat_user (input, unformat_ethernet_address, &mac))
+ if (!unformat_user (input, unformat_ethernet_address, mac))
{
error = clib_error_return (0, "expected mac address `%U'",
format_unformat_error, input);