]> git.puffer.fish Git - matthieu/frr.git/commitdiff
pimd: Add ability to safely ignore route-maps
authorDonald Sharp <sharpd@cumulusnetworks.com>
Thu, 26 May 2016 23:31:38 +0000 (19:31 -0400)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Thu, 26 May 2016 23:31:38 +0000 (19:31 -0400)
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.

Ticket: CM-11219
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
pimd/Makefile.am
pimd/pim_main.c
pimd/pim_routemap.c [new file with mode: 0644]
pimd/pimd.h

index e4243e1f6ae0b3e95fa242cd50a5a566d2f26e82..b4d94d2f3ceb78537f7a7708149e8b5840b6a35d 100644 (file)
@@ -53,7 +53,7 @@ libpim_a_SOURCES = \
        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_rp.c \
-       pim_static.c pim_br.c pim_register.c
+       pim_static.c pim_br.c pim_register.c pim_routemap.c
 
 noinst_HEADERS = \
        pimd.h pim_version.h pim_cmd.h pim_signals.h pim_iface.h \
index c9b11d107537901cc15bc9bbb11625dfff1028d8..b172b22d103362654d7891c23faac3c3d48f4d6b 100644 (file)
@@ -35,6 +35,8 @@
 #include "vty.h"
 #include "sigevent.h"
 #include "version.h"
+#include "prefix.h"
+#include "plist.h"
 #include "vrf.h"
 
 #include "pimd.h"
@@ -200,6 +202,8 @@ int main(int argc, char** argv, char** envp) {
   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 (file)
index 0000000..56868ae
--- /dev/null
@@ -0,0 +1,33 @@
+/* PIM Route-map Code
+ * Copyright (C) 2016 Cumulus Networks <sharpd@cumulusnetworks.com>
+ * Copyright (C) 1999 Kunihiro Ishiguro <kunihiro@zebra.org>
+ *
+ * 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 ();
+}
index 3b721072901a11616534cf3255383487652a2dc1..2a5cd3953f0df741a375c89fd6c130bbcc243129 100644 (file)
@@ -169,4 +169,6 @@ extern int32_t qpim_register_probe_time;
 void pim_init(void);
 void pim_terminate(void);
 
+extern void pim_route_map_init (void);
+
 #endif /* PIMD_H */