zebra: mrib: static route support
With the MRIB being independent from the Unicast RIB, there's currently
now way to add static routes to the MRIB. Address that by adding a
separate set of commands for MRIB static routes.
Combines these original patches:
- zebra: mrib: ip mroute command to add unicast route to MRIB for multicast RPF.
- zebra: mrib: no ip mroute: Fix removal of static multicast RPF route.
- zebra: mrib: remove unused static_add/delete_ipv4
- zebra: Cleanups to zebra_rib.
- pimd: Merge pim-only branch.
Cc: Everton Marques <everton.marques@gmail.com>
Cc: Balaji G <balajig81@gmail.com>
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
diff --git a/zebra/rib.h b/zebra/rib.h
index d40b17e..5eedfde 100644
--- a/zebra/rib.h
+++ b/zebra/rib.h
@@ -430,12 +430,12 @@
extern unsigned long rib_score_proto (u_char proto);
extern int
-static_add_ipv4 (struct prefix *p, struct in_addr *gate, const char *ifname,
- u_char flags, u_char distance, u_int32_t vrf_id);
-
+static_add_ipv4_safi (safi_t safi, struct prefix *p, struct in_addr *gate,
+ const char *ifname, u_char flags, u_char distance,
+ u_int32_t vrf_id);
extern int
-static_delete_ipv4 (struct prefix *p, struct in_addr *gate, const char *ifname,
- u_char distance, u_int32_t vrf_id);
+static_delete_ipv4_safi (safi_t safi, struct prefix *p, struct in_addr *gate,
+ const char *ifname, u_char distance, u_int32_t vrf_id);
#ifdef HAVE_IPV6
extern int