]>
Commit | Line | Data |
---|---|---|
53e1b683 | 1 | /* SPDX-License-Identifier: LGPL-2.1+ */ |
fc2f9534 LP |
2 | #pragma once |
3 | ||
4 | /*** | |
810adae9 | 5 | Copyright © 2014 Intel Corporation. All rights reserved. |
fc2f9534 LP |
6 | ***/ |
7 | ||
bdb397ed SS |
8 | #include <linux/neighbour.h> |
9 | ||
a2106925 | 10 | #include "conf-parser.h" |
1939ebeb | 11 | #include "ether-addr-util.h" |
634f0f98 ZJS |
12 | #include "list.h" |
13 | #include "macro.h" | |
fcbf4cb7 | 14 | #include "networkd-util.h" |
fc2f9534 | 15 | |
634f0f98 ZJS |
16 | typedef struct Network Network; |
17 | typedef struct FdbEntry FdbEntry; | |
18 | typedef struct Link Link; | |
1a75764a | 19 | typedef struct NetworkConfigSection NetworkConfigSection; |
fc2f9534 | 20 | |
bdb397ed SS |
21 | typedef enum NeighborCacheEntryFlags { |
22 | NEIGHBOR_CACHE_ENTRY_FLAGS_USE = NTF_USE, | |
23 | NEIGHBOR_CACHE_ENTRY_FLAGS_SELF = NTF_SELF, | |
24 | NEIGHBOR_CACHE_ENTRY_FLAGS_MASTER = NTF_MASTER, | |
25 | NEIGHBOR_CACHE_ENTRY_FLAGS_ROUTER = NTF_ROUTER, | |
26 | _NEIGHBOR_CACHE_ENTRY_FLAGS_MAX, | |
27 | _NEIGHBOR_CACHE_ENTRY_FLAGS_INVALID = -1, | |
28 | } NeighborCacheEntryFlags; | |
29 | ||
fc2f9534 LP |
30 | struct FdbEntry { |
31 | Network *network; | |
1a75764a | 32 | NetworkConfigSection *section; |
fc2f9534 | 33 | |
61b824c5 SS |
34 | uint32_t vni; |
35 | ||
c2c2793f | 36 | int family; |
fc2f9534 LP |
37 | uint16_t vlan_id; |
38 | ||
8f8404d4 | 39 | struct ether_addr mac_addr; |
c2c2793f | 40 | union in_addr_union destination_addr; |
bdb397ed | 41 | NeighborCacheEntryFlags fdb_ntf_flags; |
fc2f9534 LP |
42 | }; |
43 | ||
df3a18f8 | 44 | FdbEntry *fdb_entry_free(FdbEntry *fdb_entry); |
5bb4542b | 45 | |
e6ad630d YW |
46 | void network_verify_fdb_entries(Network *network); |
47 | ||
5bb4542b | 48 | int link_set_bridge_fdb(Link *link); |
fc2f9534 | 49 | |
a2106925 LP |
50 | CONFIG_PARSER_PROTOTYPE(config_parse_fdb_hwaddr); |
51 | CONFIG_PARSER_PROTOTYPE(config_parse_fdb_vlan_id); | |
c2c2793f | 52 | CONFIG_PARSER_PROTOTYPE(config_parse_fdb_destination); |
61b824c5 | 53 | CONFIG_PARSER_PROTOTYPE(config_parse_fdb_vxlan_vni); |
bdb397ed | 54 | CONFIG_PARSER_PROTOTYPE(config_parse_fdb_ntf_flags); |