]> git.puffer.fish Git - mirror/frr.git/commitdiff
bgpd: move bgp_update_redist_vrf_bitmaps to bgp_zebra.c for wider use beyond bgp_vty
authorDon Slice <dslice@cumulusnetworks.com>
Wed, 13 Mar 2019 18:41:29 +0000 (18:41 +0000)
committerDon Slice <dslice@cumulusnetworks.com>
Thu, 14 Mar 2019 15:05:38 +0000 (15:05 +0000)
Signed-off-by: Don Slice <dslice@cumulusnetworks.com>
bgpd/bgp_vty.c
bgpd/bgp_zebra.c
bgpd/bgp_zebra.h

index b059ef2205b548ad14874225da29f6a30dc7f051..ff1b02d8e407d74251879f4b932ea09c84829811 100644 (file)
@@ -2055,29 +2055,6 @@ DEFUN (no_bgp_graceful_restart_preserve_fw,
        return CMD_SUCCESS;
 }
 
-static void bgp_redistribute_redo(struct bgp *bgp)
-{
-       afi_t afi;
-       int i;
-       struct list *red_list;
-       struct listnode *node;
-       struct bgp_redist *red;
-
-       for (afi = AFI_IP; afi < AFI_MAX; afi++) {
-               for (i = 0; i < ZEBRA_ROUTE_MAX; i++) {
-
-                       red_list = bgp->redist[afi][i];
-                       if (!red_list)
-                               continue;
-
-                       for (ALL_LIST_ELEMENTS_RO(red_list, node, red)) {
-                               bgp_redistribute_resend(bgp, afi, i,
-                                                       red->instance);
-                       }
-               }
-       }
-}
-
 /* "bgp graceful-shutdown" configuration */
 DEFUN (bgp_graceful_shutdown,
        bgp_graceful_shutdown_cmd,
index 42859550346a7c53af7a774de4992e895e6edc51..ca25a1d4c60e81da845df54c1d236660e53a2a22 100644 (file)
@@ -1820,6 +1820,29 @@ int bgp_redistribute_unset(struct bgp *bgp, afi_t afi, int type,
        return CMD_SUCCESS;
 }
 
+void bgp_redistribute_redo(struct bgp *bgp)
+{
+       afi_t afi;
+       int i;
+       struct list *red_list;
+       struct listnode *node;
+       struct bgp_redist *red;
+
+       for (afi = AFI_IP; afi < AFI_MAX; afi++) {
+               for (i = 0; i < ZEBRA_ROUTE_MAX; i++) {
+
+                       red_list = bgp->redist[afi][i];
+                       if (!red_list)
+                               continue;
+
+                       for (ALL_LIST_ELEMENTS_RO(red_list, node, red)) {
+                               bgp_redistribute_resend(bgp, afi, i,
+                                                       red->instance);
+                       }
+               }
+       }
+}
+
 /* Update redistribute vrf bitmap during triggers like
    restart networking or delete/add VRFs */
 void bgp_update_redist_vrf_bitmaps(struct bgp *bgp, vrf_id_t old_vrf_id)
index fc19c5e17f5c6bd3ab1ecd79418b051cc42b18f6..b912870b80dbf94e0e5f58dd0f3d87c672b70c81 100644 (file)
@@ -49,6 +49,7 @@ extern void bgp_zebra_terminate_radv(struct bgp *bgp, struct peer *peer);
 extern void bgp_zebra_instance_register(struct bgp *);
 extern void bgp_zebra_instance_deregister(struct bgp *);
 
+extern void bgp_redistribute_redo(struct bgp *bgp);
 extern struct bgp_redist *bgp_redist_lookup(struct bgp *, afi_t, uint8_t,
                                            unsigned short);
 extern struct bgp_redist *bgp_redist_add(struct bgp *, afi_t, uint8_t,