ip: mark IP_ADDRESS_DUMP as mp-safe
[vpp.git] / src / vnet / ethernet / mac_address.c
index eab7cef..098b3ce 100644 (file)
 
 #include <vnet/ethernet/mac_address.h>
 
-/* *INDENT-OFF* */
 const mac_address_t ZERO_MAC_ADDRESS = {
   .bytes = {
     0, 0, 0, 0, 0, 0,
   },
 };
-/* *INDENT-ON* */
 
 u8 *
 format_mac_address_t (u8 * s, va_list * args)
@@ -39,9 +37,9 @@ unformat_mac_address_t (unformat_input_t * input, va_list * args)
   mac_address_t *mac = va_arg (*args, mac_address_t *);
   u32 i, a[3];
 
-  if (unformat (input, "%_%x:%x:%x:%x:%x:%x%_",
-               &mac->bytes[0], &mac->bytes[1], &mac->bytes[2],
-               &mac->bytes[3], &mac->bytes[4], &mac->bytes[5]))
+  if (unformat (input, "%_%X:%X:%X:%X:%X:%X%_",
+               1, &mac->bytes[0], 1, &mac->bytes[1], 1, &mac->bytes[2],
+               1, &mac->bytes[3], 1, &mac->bytes[4], 1, &mac->bytes[5]))
     return (1);
   else if (unformat (input, "%_%x.%x.%x%_", &a[0], &a[1], &a[2]))
     {
@@ -61,6 +59,16 @@ unformat_mac_address_t (unformat_input_t * input, va_list * args)
   return (0);
 }
 
+void
+mac_address_increment (mac_address_t * mac)
+{
+  u64 a;
+
+  a = ethernet_mac_address_u64 (mac->bytes);
+  a++;
+  ethernet_mac_address_from_u64 (a, mac->bytes);
+}
+
 /*
  * fd.io coding-style-patch-verification: ON
  *