zebra: fix up compilation without rtadv/IPv6
let's ground the rtadv.h file if route advertisements are disabled. And
fix up the CLI for it, as well as move the "show ip mroute" to its
proper place.
* zebra/rtadv.h: #ifdef RTADV
* zebra/main.c: #ifdef RTADV
* zebra/zebra_vty.c: move "show ip mroute" out of #ifdef IPV6
From: Joachim Nilsson <troglobit@gmail.com>
[moved #ifdef RTADV to rtadv.h]
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
diff --git a/zebra/main.c b/zebra/main.c
index 5f26ce2..5b5265f 100644
--- a/zebra/main.c
+++ b/zebra/main.c
@@ -327,7 +327,9 @@
zebra_vty_init ();
access_list_init ();
prefix_list_init ();
+#ifdef RTADV
rtadv_init ();
+#endif
#ifdef HAVE_IRDP
irdp_init();
#endif
diff --git a/zebra/rtadv.h b/zebra/rtadv.h
index 564a4c6..8cb933e 100644
--- a/zebra/rtadv.h
+++ b/zebra/rtadv.h
@@ -26,6 +26,9 @@
#include "vty.h"
#include "zebra/interface.h"
+/* NB: RTADV is defined in zebra/interface.h above */
+#ifdef RTADV
+
/* Router advertisement prefix. */
struct rtadv_prefix
{
@@ -96,4 +99,6 @@
extern const char *rtadv_pref_strs[];
+#endif /* RTADV */
+
#endif /* _ZEBRA_RTADV_H */
diff --git a/zebra/zebra_vty.c b/zebra/zebra_vty.c
index 8a57be9..743c13f 100644
--- a/zebra/zebra_vty.c
+++ b/zebra/zebra_vty.c
@@ -1197,6 +1197,40 @@
return CMD_SUCCESS;
}
+/*
+ * Show IP mroute command to dump the BGP Multicast
+ * routing table
+ */
+DEFUN (show_ip_mroute,
+ show_ip_mroute_cmd,
+ "show ip mroute",
+ SHOW_STR
+ IP_STR
+ "IP Multicast routing table\n")
+{
+ struct route_table *table;
+ struct route_node *rn;
+ struct rib *rib;
+ int first = 1;
+
+ table = vrf_table (AFI_IP, SAFI_MULTICAST, 0);
+ if (! table)
+ return CMD_SUCCESS;
+
+ /* Show all IPv4 routes. */
+ for (rn = route_top (table); rn; rn = route_next (rn))
+ for (rib = rn->info; rib; rib = rib->next)
+ {
+ if (first)
+ {
+ vty_out (vty, SHOW_ROUTE_V4_HEADER);
+ first = 0;
+ }
+ vty_show_ip_route (vty, rn, rib);
+ }
+ return CMD_SUCCESS;
+}
+
#ifdef HAVE_IPV6
/* General fucntion for IPv6 static route. */
@@ -1952,40 +1986,6 @@
}
/*
- * Show IP mroute command to dump the BGP Multicast
- * routing table
- */
-DEFUN (show_ip_mroute,
- show_ip_mroute_cmd,
- "show ip mroute",
- SHOW_STR
- IP_STR
- "IP Multicast routing table\n")
-{
- struct route_table *table;
- struct route_node *rn;
- struct rib *rib;
- int first = 1;
-
- table = vrf_table (AFI_IP, SAFI_MULTICAST, 0);
- if (! table)
- return CMD_SUCCESS;
-
- /* Show all IPv4 routes. */
- for (rn = route_top (table); rn; rn = route_next (rn))
- for (rib = rn->info; rib; rib = rib->next)
- {
- if (first)
- {
- vty_out (vty, SHOW_ROUTE_V4_HEADER);
- first = 0;
- }
- vty_show_ip_route (vty, rn, rib);
- }
- return CMD_SUCCESS;
-}
-
-/*
* Show IPv6 mroute command.Used to dump
* the Multicast routing table.
*/
@@ -2020,11 +2020,6 @@
return CMD_SUCCESS;
}
-
-
-
-
-
/* Write IPv6 static route configuration. */
static int
static_config_ipv6 (struct vty *vty)