[packages] olsrd: Remove 'destination == gateway' routes workaround - should be fixed...
authoracinonyx <acinonyx@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 5 Aug 2011 15:32:23 +0000 (15:32 +0000)
committeracinonyx <acinonyx@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 5 Aug 2011 15:32:23 +0000 (15:32 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/packages@27914 3c298f89-4303-0410-b956-a3cf2f4a3e73

net/olsrd/patches/910-quagga_workaround_remove.patch [new file with mode: 0644]

diff --git a/net/olsrd/patches/910-quagga_workaround_remove.patch b/net/olsrd/patches/910-quagga_workaround_remove.patch
new file mode 100644 (file)
index 0000000..f519f64
--- /dev/null
@@ -0,0 +1,29 @@
+--- a/lib/quagga/src/quagga.c
++++ b/lib/quagga/src/quagga.c
+@@ -2,7 +2,7 @@
+  * OLSRd Quagga plugin
+  *
+  * Copyright (C) 2006-2008 Immo 'FaUl' Wehrenberg <immo@chaostreff-dortmund.de>
+- * Copyright (C) 2007-2010 Vasilis Tsiligiannis <acinonyxs@yahoo.gr>
++ * Copyright (C) 2007-2011 Vasilis Tsiligiannis <acinonyxs@yahoo.gr>
+  *
+  * This program is free software; you can redistribute it and/or modify
+  * it under the terms of the GNU General Public License version 2 as
+@@ -78,8 +78,6 @@ zebra_addroute(const struct rt_entry *r)
+       (olsr_cnf->ip_version == AF_INET6 &&
+         !memcmp(r->rt_best->rtp_nexthop.gateway.v6.s6_addr, r->rt_dst.prefix.v6.s6_addr, sizeof r->rt_best->rtp_nexthop.gateway.v6.s6_addr) &&
+         route.prefixlen == 128)) {
+-    return 0;                 /* Quagga BUG workaround: don't add routes with destination = gateway
+-                                 see http://lists.olsr.org/pipermail/olsr-users/2006-June/001726.html */
+     route.ifindex_num++;
+     route.ifindex = olsr_malloc(sizeof *route.ifindex, "QUAGGA: New zebra route ifindex");
+     *route.ifindex = r->rt_best->rtp_nexthop.iif_index;
+@@ -129,8 +127,6 @@ zebra_delroute(const struct rt_entry *r)
+        (olsr_cnf->ip_version == AF_INET6 &&
+         !memcmp(r->rt_nexthop.gateway.v6.s6_addr, r->rt_dst.prefix.v6.s6_addr, sizeof r->rt_nexthop.gateway.v6.s6_addr) &&
+         route.prefixlen == 128)) {
+-    return 0;                 /* Quagga BUG workaround: don't delete routes with destination = gateway
+-                                 see http://lists.olsr.org/pipermail/olsr-users/2006-June/001726.html */
+     route.ifindex_num++;
+     route.ifindex = olsr_malloc(sizeof *route.ifindex, "QUAGGA: New zebra route ifindex");
+     *route.ifindex = r->rt_nexthop.iif_index;