diff options
author | Sharath Ramamurthy <sramamurthy@nvidia.com> | 2021-07-27 09:47:52 +0200 |
---|---|---|
committer | Stephen Worley <sworley@nvidia.com> | 2023-02-14 00:12:04 +0100 |
commit | 784d88aa14c115411ed21f6ac518ab1a8f9d27b7 (patch) | |
tree | 86c103be00f0442b205027ca2cc2f852275eac94 /zebra/rt_netlink.h | |
parent | zebra: data structure changes for single vxlan device (diff) | |
download | frr-784d88aa14c115411ed21f6ac518ab1a8f9d27b7.tar.xz frr-784d88aa14c115411ed21f6ac518ab1a8f9d27b7.zip |
zebra: multiple vlan aware bridge datastructure changes and vxlan device iftype derivation from netlink
This change set introduces data structure changes required for multiple vlan aware bridge
functionality. A new structure zebra_l2_bridge_if encapsulates the vlan to access_bd
association of the bridge. A vlan_table hash_table is used to record each instance
of the vlan to access_bd of the bridge via zebra_l2_bridge_vlan structure.
vxlan iftype derivation: netlink attribute IFLA_VXLAN_COLLECT_METADATA is used
to derive the iftype of the vxlan device. If the attribute is present, then the
vxlan interface is treated as single vxlan device, otherwise it would default to
traditional vxlan device.
zebra_vxlan_check_readd_vtep, zebra_vxlan_dp_network_mac_add/del is modified to
be vni aware.
mac_fdb_read_for_bridge - is modified to be (vlan, bridge) aware
Signed-off-by: Sharath Ramamurthy <sramamurthy@nvidia.com>
Diffstat (limited to 'zebra/rt_netlink.h')
-rw-r--r-- | zebra/rt_netlink.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/zebra/rt_netlink.h b/zebra/rt_netlink.h index 8506367ae..f7e777ba8 100644 --- a/zebra/rt_netlink.h +++ b/zebra/rt_netlink.h @@ -92,7 +92,8 @@ extern int netlink_neigh_change(struct nlmsghdr *h, ns_id_t ns_id); extern int netlink_macfdb_read(struct zebra_ns *zns); extern int netlink_macfdb_read_for_bridge(struct zebra_ns *zns, struct interface *ifp, - struct interface *br_if); + struct interface *br_if, + vlanid_t vid); extern int netlink_neigh_read(struct zebra_ns *zns); extern int netlink_neigh_read_for_vlan(struct zebra_ns *zns, struct interface *vlan_if); |