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