pimd: Add ability to safely ignore route-maps
pim was not parsing route-map code and causing issues
using vtysh because of this. Add code to safely
ignore the route-map code and set us up for future
expansion into route-maps if neeeded.
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Tested-by: NetDEF CI System <cisystem@netdef.org>
Acked-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
diff --git a/pimd/Makefile.am b/pimd/Makefile.am
index f57c4c2..d045436 100644
--- a/pimd/Makefile.am
+++ b/pimd/Makefile.am
@@ -52,7 +52,8 @@
pim_oil.c pim_zlookup.c pim_pim.c pim_tlv.c pim_neighbor.c \
pim_hello.c pim_ifchannel.c pim_join.c pim_assert.c \
pim_msg.c pim_upstream.c pim_rpf.c pim_macro.c \
- pim_igmp_join.c pim_ssmpingd.c pim_int.c pim_static.c
+ pim_igmp_join.c pim_ssmpingd.c pim_int.c pim_static.c \
+ pim_routemap.c
noinst_HEADERS = \
pimd.h pim_version.h pim_cmd.h pim_signals.h pim_iface.h \
diff --git a/pimd/pim_main.c b/pimd/pim_main.c
index 5f4711e..ea70a8f 100644
--- a/pimd/pim_main.c
+++ b/pimd/pim_main.c
@@ -36,6 +36,8 @@
#include "vty.h"
#include "sigevent.h"
#include "version.h"
+#include "prefix.h"
+#include "plist.h"
#include "pimd.h"
#include "pim_version.h"
@@ -200,6 +202,8 @@
memory_init();
vrf_init();
access_list_init();
+ prefix_list_init ();
+ pim_route_map_init ();
pim_init();
/*
diff --git a/pimd/pim_routemap.c b/pimd/pim_routemap.c
new file mode 100644
index 0000000..9cc13be
--- /dev/null
+++ b/pimd/pim_routemap.c
@@ -0,0 +1,32 @@
+/* PIM Route-map Code
+ * Copyright (C) 2016 Cumulus Networks <sharpd@cumulusnetworks.com>
+ *
+ * This file is part of Quagga
+ *
+ * Quagga is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2, or (at your option) any
+ * later version.
+ *
+ * Quagga is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Quagga; see the file COPYING. If not, write to the Free
+ * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+#include <zebra.h>
+
+#include "routemap.h"
+
+#include "pimd.h"
+
+void
+pim_route_map_init (void)
+{
+ route_map_init ();
+ route_map_init_vty ();
+}
diff --git a/pimd/pimd.h b/pimd/pimd.h
index aed26be..9a7e605 100644
--- a/pimd/pimd.h
+++ b/pimd/pimd.h
@@ -159,4 +159,6 @@
void pim_init(void);
void pim_terminate(void);
+extern void pim_route_map_init (void);
+
#endif /* PIMD_H */