summaryrefslogtreecommitdiff
path: root/src/network/networkd-fdb.h
diff options
context:
space:
mode:
authorSusant Sahani <ssahani@gmail.com>2019-05-08 19:43:21 +0530
committerYu Watanabe <watanabe.yu+github@gmail.com>2019-05-14 02:24:51 +0200
commitbdb397ed10fb7c7d71fcf1bed2d919680f60889d (patch)
treee62da37392eb83ee58b43873c7481dcbb79e10ac /src/network/networkd-fdb.h
parentd8f31d7d329d1fe1f78f22f9321f539ea86243e9 (diff)
downloadsystemd-bdb397ed10fb7c7d71fcf1bed2d919680f60889d.tar.gz
networkd: bridge FDB support more NTF_* flags
Add support to configure NTF_ROUTER and NTF_USE
Diffstat (limited to 'src/network/networkd-fdb.h')
-rw-r--r--src/network/networkd-fdb.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/network/networkd-fdb.h b/src/network/networkd-fdb.h
index 6954e555fa..bcdd8ce3cb 100644
--- a/src/network/networkd-fdb.h
+++ b/src/network/networkd-fdb.h
@@ -5,6 +5,8 @@
Copyright © 2014 Intel Corporation. All rights reserved.
***/
+#include <linux/neighbour.h>
+
#include "conf-parser.h"
#include "list.h"
#include "macro.h"
@@ -15,6 +17,15 @@ typedef struct FdbEntry FdbEntry;
typedef struct Link Link;
typedef struct NetworkConfigSection NetworkConfigSection;
+typedef enum NeighborCacheEntryFlags {
+ NEIGHBOR_CACHE_ENTRY_FLAGS_USE = NTF_USE,
+ NEIGHBOR_CACHE_ENTRY_FLAGS_SELF = NTF_SELF,
+ NEIGHBOR_CACHE_ENTRY_FLAGS_MASTER = NTF_MASTER,
+ NEIGHBOR_CACHE_ENTRY_FLAGS_ROUTER = NTF_ROUTER,
+ _NEIGHBOR_CACHE_ENTRY_FLAGS_MAX,
+ _NEIGHBOR_CACHE_ENTRY_FLAGS_INVALID = -1,
+} NeighborCacheEntryFlags;
+
struct FdbEntry {
Network *network;
NetworkConfigSection *section;
@@ -26,6 +37,7 @@ struct FdbEntry {
struct ether_addr *mac_addr;
union in_addr_union destination_addr;
+ NeighborCacheEntryFlags fdb_ntf_flags;
LIST_FIELDS(FdbEntry, static_fdb_entries);
};
@@ -35,7 +47,11 @@ int fdb_entry_configure(Link *link, FdbEntry *fdb_entry);
DEFINE_NETWORK_SECTION_FUNCTIONS(FdbEntry, fdb_entry_free);
+const char* fdb_ntf_flags_to_string(NeighborCacheEntryFlags i) _const_;
+NeighborCacheEntryFlags fdb_ntf_flags_from_string(const char *s) _pure_;
+
CONFIG_PARSER_PROTOTYPE(config_parse_fdb_hwaddr);
CONFIG_PARSER_PROTOTYPE(config_parse_fdb_vlan_id);
CONFIG_PARSER_PROTOTYPE(config_parse_fdb_destination);
CONFIG_PARSER_PROTOTYPE(config_parse_fdb_vxlan_vni);
+CONFIG_PARSER_PROTOTYPE(config_parse_fdb_ntf_flags);