aboutsummaryrefslogtreecommitdiffstats
path: root/main/opennhrp
diff options
context:
space:
mode:
authorTimo Teräs <timo.teras@iki.fi>2014-04-19 18:59:53 +0300
committerTimo Teräs <timo.teras@iki.fi>2014-04-19 19:00:05 +0300
commitb818ca056b96af851a92dcb77cac73426f035cd3 (patch)
tree535c1392a76d5b398960c58ad6802be6f289ebcf /main/opennhrp
parent69f9c0126aad8b67e5ef8731337d2b901b143291 (diff)
downloadaports-b818ca056b96af851a92dcb77cac73426f035cd3.tar.bz2
aports-b818ca056b96af851a92dcb77cac73426f035cd3.tar.xz
main/opennhrp: additional routing-table fix
Diffstat (limited to 'main/opennhrp')
-rw-r--r--main/opennhrp/APKBUILD6
-rw-r--r--main/opennhrp/fix-shortcut-route-table-2.patch44
2 files changed, 49 insertions, 1 deletions
diff --git a/main/opennhrp/APKBUILD b/main/opennhrp/APKBUILD
index 04b014fe40..b0ea72a324 100644
--- a/main/opennhrp/APKBUILD
+++ b/main/opennhrp/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=opennhrp
pkgver=0.14.1
-pkgrel=3
+pkgrel=4
pkgdesc="NBMA Next Hop Resolution Protocol daemon"
url="http://sourceforge.net/projects/opennhrp"
arch="all"
@@ -14,6 +14,7 @@ source="http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.bz2
reset-nat.patch
fix-includes-and-types-to-honor-standards.patch
fix-shortcut-route-table.patch
+ fix-shortcut-route-table-2.patch
$pkgname.initd
$pkgname.confd
"
@@ -40,6 +41,7 @@ f81539fc92800bb79668dda119a97d1d opennhrp-0.9.3-peer-up-bgp.patch
2b31e177d56b18c942abb0e9d43e457d reset-nat.patch
751d1b77866aefb312f98f60a454904a fix-includes-and-types-to-honor-standards.patch
94d271781a44cc9ec0ff82e7ea4007af fix-shortcut-route-table.patch
+d70e5683de8f596417873aebdbf53862 fix-shortcut-route-table-2.patch
ae65f88ccf849ef882669a8b4f0c7fc0 opennhrp.initd
8eee86233728dc0d156bbfee6d98f338 opennhrp.confd"
sha256sums="1517d53d688ffc165a1da20c344d96b4c53e60f34bd73c64e60cb67cfca4e9ab opennhrp-0.14.1.tar.bz2
@@ -47,6 +49,7 @@ d348cc75694761124a7e05406d9e21e59251be185356bd3d3bec8dcc9dbbac73 opennhrp-0.9.3
2b362cd953023a1fd22f42071fc284c581f1c34128f98c9e409fe79f384e77f0 reset-nat.patch
56e23b367a985b55fc6d0b7ecdd8520a719f278005dbc057dd417d1c00061aea fix-includes-and-types-to-honor-standards.patch
0ba13c439be36eb40e5c04744eda67f6ccd50609f6fb16647debe7b7cb4c8500 fix-shortcut-route-table.patch
+58cbad65215b3f81e233cc11f0187fd6722aeae263c0c1dcf3d98e914d33a912 fix-shortcut-route-table-2.patch
40a260ecda7b7caca03a914c7ef7819023f54b0b3bd97189bd88f8f7275d70d7 opennhrp.initd
83a7ad5e94546dbdfaabf0dd12c0d2e611b89cab06c600499e9453777e28928f opennhrp.confd"
sha512sums="dd0d5debf86d195256995406909c7406d4b60dcdd3a47fca95fd7053b1691e1863b430ff9d65e8633c2d49c747abb4fdc10b45bdef0d0bfa733e94e33c476785 opennhrp-0.14.1.tar.bz2
@@ -54,5 +57,6 @@ sha512sums="dd0d5debf86d195256995406909c7406d4b60dcdd3a47fca95fd7053b1691e1863b4
53d45f89b2643c71734c2404c5f229ab8cf107ea9c2e2ed4f64ab03c825b2438670e606508c5d79afedd984171f0ea3546324917ad86bc7e1e2e36573a53d283 reset-nat.patch
bfa1da32bbdb0a804a578b4dcaa36b9b4e1116870b5546d7a8510ea1aacba611be8674f51147ce577f64ff64416bdba28231729f137fd9b5fb0a2d84e050d668 fix-includes-and-types-to-honor-standards.patch
a3d9ea893c68e7f59c8654811322facec89918d5c54292a7fc0e2b1a3505d9696fc0d6f2d7c81e80708929898097fecb3edaa67fbd94b2ccd1792ca7c87b51ac fix-shortcut-route-table.patch
+eb6237ee25f510d1035e04e790d1725953843536e91640c5a1d8daca26ae8e90e1cc179bcaef3c2d5d908f2fa9b12cf666b78ee8a5695b5f1b5aa3596e686576 fix-shortcut-route-table-2.patch
3ca19432d0873f2746d4abc324c3fa5f54d528d4fdaba5f059a183b3ae882f08acd31cb3f1cdbd197942632b0086dee198d1007a504572ab269f79c144ef716d opennhrp.initd
c998a0ba198e187c72d09ed3ba2e12fbd30c5d998ed06da01394058741c28a534f1c7e9d692f931ff00dac76c7d4e19e911f7d2ad48deb94f0cef8bd706c4315 opennhrp.confd"
diff --git a/main/opennhrp/fix-shortcut-route-table-2.patch b/main/opennhrp/fix-shortcut-route-table-2.patch
new file mode 100644
index 0000000000..2e3c08cf37
--- /dev/null
+++ b/main/opennhrp/fix-shortcut-route-table-2.patch
@@ -0,0 +1,44 @@
+diff --git a/nhrp/sysdep_netlink.c b/nhrp/sysdep_netlink.c
+index 44063ad..74907bb 100644
+--- a/nhrp/sysdep_netlink.c
++++ b/nhrp/sysdep_netlink.c
+@@ -738,13 +738,15 @@ static void netlink_route_new(struct nlmsghdr *msg)
+ return;
+
+ if (iface->flags & NHRP_INTERFACE_FLAG_SHORTCUT_DEST) {
+- /* Local shortcut target routes */
+- if (rtm->rtm_table != iface->route_table)
++ /* Off-NBMA bound routes, include kernel subnet
++ * routes, and anything routing table. */
++ if (rtm->rtm_table != iface->route_table &&
++ rtm->rtm_protocol != RTPROT_KERNEL)
+ return;
+ type = NHRP_PEER_TYPE_LOCAL_ADDR;
+ } else if (iface->flags & NHRP_INTERFACE_FLAG_CONFIGURED) {
+- /* Routes which might get additional outbound
+- * shortcuts */
++ /* In-NBMA bound routes, include only specifed table
++ * and only non-kernel created routes */
+ if (rtm->rtm_table != iface->route_table ||
+ rtm->rtm_protocol == RTPROT_KERNEL)
+ return;
+@@ -792,13 +794,15 @@ static void netlink_route_del(struct nlmsghdr *msg)
+ return;
+
+ if (iface->flags & NHRP_INTERFACE_FLAG_SHORTCUT_DEST) {
+- /* Local shortcut target routes */
+- if (rtm->rtm_table != RT_TABLE_MAIN)
++ /* Off-NBMA bound routes, include kernel subnet
++ * routes, and anything routing table. */
++ if (rtm->rtm_table != iface->route_table &&
++ rtm->rtm_protocol != RTPROT_KERNEL)
+ return;
+ type = NHRP_PEER_TYPE_LOCAL_ADDR;
+ } else if (iface->flags & NHRP_INTERFACE_FLAG_CONFIGURED) {
+- /* Routes which might get additional outbound
+- * shortcuts */
++ /* In-NBMA bound routes, include only specifed table
++ * and only non-kernel created routes */
+ if (rtm->rtm_table != iface->route_table ||
+ rtm->rtm_protocol == RTPROT_KERNEL)
+ return;