diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2012-12-12 09:33:53 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2012-12-12 09:34:47 +0000 |
commit | aabb95b012bfc9e6e0c0fb44b64dc0bb22c9186d (patch) | |
tree | e00539c8dff2b2e4c18a7e0c261ac237b300892b /main/opennhrp | |
parent | 1e114ef2b08f55b69bbd64d213d3720958949da2 (diff) | |
download | aports-aabb95b012bfc9e6e0c0fb44b64dc0bb22c9186d.tar.bz2 aports-aabb95b012bfc9e6e0c0fb44b64dc0bb22c9186d.tar.xz |
main/opennhrp: upgrade to 0.14
Diffstat (limited to 'main/opennhrp')
-rw-r--r-- | main/opennhrp/01-packet-route-fix.patch | 48 | ||||
-rw-r--r-- | main/opennhrp/APKBUILD | 8 |
2 files changed, 3 insertions, 53 deletions
diff --git a/main/opennhrp/01-packet-route-fix.patch b/main/opennhrp/01-packet-route-fix.patch deleted file mode 100644 index e1edfb6ea..000000000 --- a/main/opennhrp/01-packet-route-fix.patch +++ /dev/null @@ -1,48 +0,0 @@ -From: Timo Teräs <timo.teras@iki.fi> -Date: Thu, 23 Aug 2012 10:29:50 +0000 (+0300) -Subject: packet: fix indefinite looping with bad routes -X-Git-Url: http://opennhrp.git.sourceforge.net/git/gitweb.cgi?p=opennhrp%2Fopennhrp;a=commitdiff_plain;h=515a64f6c570761876f14f97c8eb206e950ee603 - -packet: fix indefinite looping with bad routes - -If there's cycling routing, or just a route with gateway that would -match the route itself, we could end up looping indefinitely. Add -a fixed limit for route lookup recursion. ---- - -diff --git a/nhrp/nhrp_packet.c b/nhrp/nhrp_packet.c -index f46b481..12dcf3c 100644 ---- a/nhrp/nhrp_packet.c -+++ b/nhrp/nhrp_packet.c -@@ -979,7 +979,7 @@ int nhrp_packet_route(struct nhrp_packet *packet) - struct nhrp_payload *payload; - struct nhrp_peer *peer; - char tmp[64]; -- int r; -+ int i, r; - - if (packet->dst_iface == NULL) { - nhrp_error("nhrp_packet_route called without destination interface"); -@@ -1005,7 +1005,7 @@ int nhrp_packet_route(struct nhrp_packet *packet) - proto_nexthop = packet->dst_peer->next_hop_address; - } else { - proto_nexthop = *dst; -- do { -+ for (i = 0; i < 4; i++) { - peer = nhrp_peer_route_full( - packet->dst_iface, &proto_nexthop, 0, - NHRP_PEER_TYPEMASK_ROUTE_VIA_NHS, src, cielist); -@@ -1020,7 +1020,12 @@ int nhrp_packet_route(struct nhrp_packet *packet) - if (peer->next_hop_address.type == AF_UNSPEC) - break; - proto_nexthop = peer->next_hop_address; -- } while (1); -+ } -+ if (i >= 4) { -+ nhrp_error("Recursive routing for protocol address %s", -+ nhrp_address_format(dst, sizeof(tmp), tmp)); -+ return FALSE; -+ } - - packet->dst_peer = nhrp_peer_get(peer); - } diff --git a/main/opennhrp/APKBUILD b/main/opennhrp/APKBUILD index bf580e91e..5f3fcd4a6 100644 --- a/main/opennhrp/APKBUILD +++ b/main/opennhrp/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: Natanael Copa <ncopa@alpinelinux.org> pkgname=opennhrp -pkgver=0.13.1 -pkgrel=1 +pkgver=0.14 +pkgrel=0 pkgdesc="NBMA Next Hop Resolution Protocol daemon" url="http://sourceforge.net/projects/opennhrp" arch="all" @@ -11,7 +11,6 @@ makedepends="c-ares-dev" subpackages="$pkgname-doc" source="http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.bz2 opennhrp-0.9.3-peer-up-bgp.patch - 01-packet-route-fix.patch $pkgname.initd $pkgname.confd " @@ -33,8 +32,7 @@ package() { install -Dm755 "$srcdir"/opennhrp.initd "$pkgdir"/etc/init.d/opennhrp install -Dm644 "$srcdir"/opennhrp.confd "$pkgdir"/etc/conf.d/opennhrp } -md5sums="4c847b558946b07a446b052cc29eb02a opennhrp-0.13.1.tar.bz2 +md5sums="62e8f16dd3bdf0600e43fcb37aa40462 opennhrp-0.14.tar.bz2 f81539fc92800bb79668dda119a97d1d opennhrp-0.9.3-peer-up-bgp.patch -516e5ed18a476f934849f70d965a5c42 01-packet-route-fix.patch ae65f88ccf849ef882669a8b4f0c7fc0 opennhrp.initd 8eee86233728dc0d156bbfee6d98f338 opennhrp.confd" |