This patch updates parprouted from 0.64 to 0.7. This fixes some bugs and adds support for hosts moving across Ethernet interfaces. Built and tested from trunk on a WNDR3700v2.
Signed-off-by: Tristan Schmelcher <tristan_schmelc...@alumni.uwaterloo.ca> --- Index: packages/net/parprouted/Makefile =================================================================== --- packages/net/parprouted/Makefile (revision 39738) +++ packages/net/parprouted/Makefile (working copy) @@ -8,12 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=parprouted -PKG_VERSION:=0.64 -PKG_RELEASE:=5 +PKG_VERSION:=0.70 +PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE:=$(PKG_NAME)-0.7.tar.gz PKG_SOURCE_URL:=http://www.hazard.maks.net/parprouted/ -PKG_MD5SUM:=14133c9cb8dd9c9a90ff37648ae7b31a +PKG_MD5SUM:=570f5deaf09600df8f80f589de79ecdb +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-0.7 include $(INCLUDE_DIR)/package.mk Index: packages/net/parprouted/patches/001-parprouted.patch =================================================================== --- packages/net/parprouted/patches/001-parprouted.patch (revision 39738) +++ packages/net/parprouted/patches/001-parprouted.patch (working copy) @@ -1,7 +1,7 @@ -diff -rupw parprouted-0.63/arp.c parprouted-0.63-1/arp.c ---- parprouted-0.63/arp.c 2004-05-23 14:06:31.000000000 +0200 -+++ parprouted-0.63-1/arp.c 2005-03-13 16:10:18.000000000 +0100 -@@ -366,7 +366,7 @@ void *arp(char *ifname) +diff -rupw parprouted-0.7.orig/arp.c parprouted-0.7/arp.c +--- parprouted-0.7.orig/arp.c 2008-01-27 18:43:37.000000000 -0500 ++++ parprouted-0.7/arp.c 2014-02-23 18:53:41.428428197 -0500 +@@ -366,7 +366,7 @@ void *arp(char *ifname) do { pthread_testcancel(); /* Sleep a bit in order not to overload the system */ @@ -10,24 +10,24 @@ if (arp_recv(sock, &frame) <= 0) continue; -diff -rupw parprouted-0.63/parprouted.c parprouted-0.63-1/parprouted.c ---- parprouted-0.63/parprouted.c 2004-01-30 02:45:43.000000000 +0100 -+++ parprouted-0.63-1/parprouted.c 2005-03-20 09:14:35.000000000 +0100 -@@ -93,7 +93,7 @@ void processarp(int cleanup) +diff -rupw parprouted-0.7.orig/parprouted.c parprouted-0.7/parprouted.c +--- parprouted-0.7.orig/parprouted.c 2008-01-27 19:00:25.000000000 -0500 ++++ parprouted-0.7/parprouted.c 2014-02-23 18:55:43.884423711 -0500 +@@ -106,7 +106,7 @@ int route_remove(ARPTAB_ENTRY* cur_entry + int success = 1; + + if (snprintf(routecmd_str, ROUTE_CMD_LEN-1, +- "/sbin/ip route del %s/32 metric 50 dev %s scope link", ++ "/sbin/route del -host %s metric 50 dev %s", + inet_ntoa(cur_entry->ipaddr_ia), cur_entry->ifname) > ROUTE_CMD_LEN-1) + { + syslog(LOG_INFO, "ip route command too large to fit in buffer!"); +@@ -136,7 +136,7 @@ int route_add(ARPTAB_ENTRY* cur_entry) + int success = 1; - /* added route to the kernel */ - if (snprintf(routecmd_str, ROUTE_CMD_LEN-1, -- "/sbin/ip route add %s/32 metric 50 dev %s scope link", -+ "/sbin/route add -host %s metric 50 dev %s", - inet_ntoa(cur_entry->ipaddr_ia), cur_entry->ifname) > ROUTE_CMD_LEN-1) - { - syslog(LOG_INFO, "ip route command too large to fit in buffer!"); -@@ -112,7 +112,7 @@ void processarp(int cleanup) - - /* remove entry from arp table and remove route from kernel */ - if (snprintf(routecmd_str, ROUTE_CMD_LEN-1, -- "/sbin/ip route del %s/32 metric 50 dev %s scope link", -+ "/sbin/route del -host %s metric 50 dev %s", - inet_ntoa(cur_entry->ipaddr_ia), cur_entry->ifname) > ROUTE_CMD_LEN-1) - { - syslog(LOG_INFO, "ip route command too large to fit in buffer!"); + if (snprintf(routecmd_str, ROUTE_CMD_LEN-1, +- "/sbin/ip route add %s/32 metric 50 dev %s scope link", ++ "/sbin/route add -host %s metric 50 dev %s", + inet_ntoa(cur_entry->ipaddr_ia), cur_entry->ifname) > ROUTE_CMD_LEN-1) + { + syslog(LOG_INFO, "ip route command too large to fit in buffer!"); _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel