134 lines
3.0 KiB
Diff
134 lines
3.0 KiB
Diff
|
Index: quagga-0.99.21/zebra/main.c
|
|||
|
===================================================================
|
|||
|
--- quagga-0.99.21.orig/zebra/main.c
|
|||
|
+++ quagga-0.99.21/zebra/main.c
|
|||
|
@@ -327,7 +327,9 @@ main (int argc, char **argv)
|
|||
|
zebra_vty_init ();
|
|||
|
access_list_init ();
|
|||
|
prefix_list_init ();
|
|||
|
+#ifdef RTADV
|
|||
|
rtadv_init ();
|
|||
|
+#endif
|
|||
|
#ifdef HAVE_IRDP
|
|||
|
irdp_init();
|
|||
|
#endif
|
|||
|
Index: quagga-0.99.21/zebra/rtadv.h
|
|||
|
===================================================================
|
|||
|
--- quagga-0.99.21.orig/zebra/rtadv.h
|
|||
|
+++ quagga-0.99.21/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 @@ struct nd_opt_homeagent_info { /* Home
|
|||
|
|
|||
|
extern const char *rtadv_pref_strs[];
|
|||
|
|
|||
|
+#endif /* RTADV */
|
|||
|
+
|
|||
|
#endif /* _ZEBRA_RTADV_H */
|
|||
|
Index: quagga-0.99.21/zebra/zebra_vty.c
|
|||
|
===================================================================
|
|||
|
--- quagga-0.99.21.orig/zebra/zebra_vty.c
|
|||
|
+++ quagga-0.99.21/zebra/zebra_vty.c
|
|||
|
@@ -1197,6 +1197,40 @@ DEFUN (show_ip_protocol,
|
|||
|
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 @@ DEFUN (show_ipv6_route_summary,
|
|||
|
}
|
|||
|
|
|||
|
/*
|
|||
|
- * 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 @@ DEFUN (show_ipv6_mroute,
|
|||
|
return CMD_SUCCESS;
|
|||
|
}
|
|||
|
|
|||
|
-
|
|||
|
-
|
|||
|
-
|
|||
|
-
|
|||
|
-
|
|||
|
/* Write IPv6 static route configuration. */
|
|||
|
static int
|
|||
|
static_config_ipv6 (struct vty *vty)
|