]> git.proxmox.com Git - mirror_frr.git/blobdiff - lib/nexthop_group.h
zebra, lib: fix the ZEBRA_INTERFACE_VRF_UPDATE zapi message
[mirror_frr.git] / lib / nexthop_group.h
index c2e4c4d7573cc46998fc2cc94398f2bb7bb312e1..473ecb34fc4df110bf0b3d27be0261f5e9a5ba21 100644 (file)
@@ -56,6 +56,18 @@ void copy_nexthops(struct nexthop **tnh, struct nexthop *nh,
        (nhop);                                                         \
        (nhop) = nexthop_next(nhop)
 
+#define ALL_NEXTHOPS_PTR(head, nhop)                                   \
+       (nhop) = ((head)->nexthop);                                     \
+       (nhop);                                                         \
+       (nhop) = nexthop_next(nhop)
+
+
+struct nexthop_hold {
+       char *nhvrf_name;
+       union sockunion addr;
+       char *intf;
+};
+
 struct nexthop_group_cmd {
 
        RB_ENTRY(nexthop_group_cmd) nhgc_entry;
@@ -64,6 +76,8 @@ struct nexthop_group_cmd {
 
        struct nexthop_group nhg;
 
+       struct list *nhg_list;
+
        QOBJ_FIELDS
 };
 RB_HEAD(nhgc_entry_head, nexthp_group_cmd);
@@ -85,6 +99,11 @@ void nexthop_group_init(
                            const struct nexthop *nhop),
        void (*delete)(const char *name));
 
+void nexthop_group_enable_vrf(struct vrf *vrf);
+void nexthop_group_disable_vrf(struct vrf *vrf);
+void nexthop_group_interface_state_change(struct interface *ifp,
+                                         ifindex_t oldifindex);
+
 extern struct nexthop *nexthop_exists(struct nexthop_group *nhg,
                                      struct nexthop *nh);