]> git.proxmox.com Git - mirror_frr.git/blobdiff - zebra/zebra_l2.h
zebra: print unknown rule family as number
[mirror_frr.git] / zebra / zebra_l2.h
index d9bbcfed6fc48c344161e45540f421521980aa08..d9f0eec3f8706240e7f8df949235a0dab2c6172c 100644 (file)
 #include "vlan.h"
 #include "vxlan.h"
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 /* zebra L2 interface information - bridge slave (linkage to bridge) */
 struct zebra_l2info_brslave {
        ifindex_t bridge_ifindex; /* Bridge Master */
@@ -37,7 +41,7 @@ struct zebra_l2info_brslave {
 
 /* zebra L2 interface information - bridge interface */
 struct zebra_l2info_bridge {
-       u_char vlan_aware; /* VLAN-aware bridge? */
+       uint8_t vlan_aware; /* VLAN-aware bridge? */
 };
 
 /* zebra L2 interface information - VLAN interface */
@@ -50,6 +54,12 @@ struct zebra_l2info_vxlan {
        vni_t vni;              /* VNI */
        struct in_addr vtep_ip; /* Local tunnel IP */
        vlanid_t access_vlan;   /* Access VLAN - for VLAN-aware bridge. */
+       struct in_addr mcast_grp;
+};
+
+struct zebra_l2info_bondslave {
+       ifindex_t bond_ifindex;    /* Bridge Master */
+       struct interface *bond_if; /* Pointer to master */
 };
 
 union zebra_l2if_info {
@@ -67,10 +77,13 @@ union zebra_l2if_info {
 
 #define IS_ZEBRA_IF_BRIDGE_VLAN_AWARE(zif) ((zif)->l2info.br.vlan_aware == 1)
 
-
 extern void zebra_l2_map_slave_to_bridge(struct zebra_l2info_brslave *br_slave);
 extern void
 zebra_l2_unmap_slave_from_bridge(struct zebra_l2info_brslave *br_slave);
+extern void
+zebra_l2_map_slave_to_bond(struct zebra_l2info_bondslave *bond_slave, vrf_id_t);
+extern void
+zebra_l2_unmap_slave_from_bond(struct zebra_l2info_bondslave *bond_slave);
 extern void zebra_l2_bridge_add_update(struct interface *ifp,
                                       struct zebra_l2info_bridge *bridge_info,
                                       int add);
@@ -86,4 +99,11 @@ extern void zebra_l2_vxlanif_del(struct interface *ifp);
 extern void zebra_l2if_update_bridge_slave(struct interface *ifp,
                                           ifindex_t bridge_ifindex);
 
+extern void zebra_l2if_update_bond_slave(struct interface *ifp,
+                                        ifindex_t bond_ifindex);
+
+#ifdef __cplusplus
+}
+#endif
+
 #endif /* _ZEBRA_L2_H */