blob: 419a5b0879fedbbb4462692dd1cd22fffe599345 [file] [log] [blame]
Neale Rannsde5b08f2018-08-29 06:37:18 -07001/*
2 * Copyright (c) 2018 Cisco and/or its affiliates.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at:
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16#include <vnet/ethernet/mac_address.h>
17
Neale Ranns86327be2018-11-02 09:14:01 -070018/* *INDENT-OFF* */
Neale Rannsde5b08f2018-08-29 06:37:18 -070019const mac_address_t ZERO_MAC_ADDRESS = {
20 .bytes = {
Neale Ranns86327be2018-11-02 09:14:01 -070021 0, 0, 0, 0, 0, 0,
22 },
Neale Rannsde5b08f2018-08-29 06:37:18 -070023};
Neale Ranns86327be2018-11-02 09:14:01 -070024/* *INDENT-ON* */
Neale Rannsde5b08f2018-08-29 06:37:18 -070025
26u8 *
27format_mac_address_t (u8 * s, va_list * args)
28{
29 const mac_address_t *mac = va_arg (*args, mac_address_t *);
30
Neale Ranns86327be2018-11-02 09:14:01 -070031 return format (s, "%02x:%02x:%02x:%02x:%02x:%02x",
32 mac->bytes[0], mac->bytes[1], mac->bytes[2],
33 mac->bytes[3], mac->bytes[4], mac->bytes[5]);
Neale Rannsde5b08f2018-08-29 06:37:18 -070034}
35
Neale Ranns86327be2018-11-02 09:14:01 -070036uword
37unformat_mac_address_t (unformat_input_t * input, va_list * args)
38{
39 mac_address_t *mac = va_arg (*args, mac_address_t *);
40
41 if (!unformat (input, "%_%x:%x:%x:%x:%x:%x%_",
42 &mac->bytes[0], &mac->bytes[1], &mac->bytes[2],
43 &mac->bytes[3], &mac->bytes[4], &mac->bytes[5]))
44 return 0;
45
46 return 1;
47}
Neale Rannsde5b08f2018-08-29 06:37:18 -070048
49/*
50 * fd.io coding-style-patch-verification: ON
51 *
52 * Local Variables:
53 * eval: (c-set-style "gnu")
54 * End:
55 */