#
-# Copyright (C) 2006-2014 OpenWrt.org
+# Copyright (C) 2006-2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
include $(TOPDIR)/rules.mk
PKG_NAME:=iproute2
-PKG_VERSION:=3.17.0
+PKG_VERSION:=3.18.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=http://kernel.org/pub/linux/utils/net/iproute2/
-PKG_MD5SUM:=b741a02c6dda5818d18011d572874493
+PKG_MD5SUM:=6f6ad51a00007880460e103367b16057
PKG_BUILD_PARALLEL:=1
PKG_LICENSE:=GPL-2.0
--- a/ip/Makefile
+++ b/ip/Makefile
-@@ -15,6 +15,13 @@ ifeq ($(IP_CONFIG_SETNS),y)
+@@ -16,6 +16,13 @@ ifeq ($(IP_CONFIG_SETNS),y)
CFLAGS += -DHAVE_SETNS
endif
ALLOBJ=$(IPOBJ) $(RTMONOBJ)
SCRIPTS=ifcfg rtpr routel routef
TARGETS=ip rtmon
-@@ -42,7 +49,7 @@ else
+@@ -43,7 +50,7 @@ else
ip: static-syms.o
static-syms.o: static-syms.h
sed -n '/'$$s'[^ ]* =/{s:.* \([^ ]*'$$s'[^ ]*\) .*:extern char \1[] __attribute__((weak)); if (!strcmp(sym, "\1")) return \1;:;p}' $$files ; \
--- a/ip/ip.c
+++ b/ip/ip.c
-@@ -66,29 +66,41 @@ static const struct cmd {
+@@ -69,30 +69,42 @@ static const struct cmd {
int (*func)(int argc, char **argv);
} cmds[] = {
{ "address", do_ipaddr },
{ "link", do_iplink },
+#ifndef IPROUTE2_TINY
{ "l2tp", do_ipl2tp },
+ { "fou", do_ipfou },
+#endif
{ "tunnel", do_iptunnel },
{ "tunl", do_iptunnel },
};
--- a/lib/utils.c
+++ b/lib/utils.c
-@@ -627,6 +627,7 @@ const char *rt_addr_n2a(int af, int len,
+@@ -629,6 +629,7 @@ const char *rt_addr_n2a(int af, const vo
case AF_INET:
case AF_INET6:
return inet_ntop(af, addr, buf, buflen);
case AF_IPX:
return ipx_ntop(af, addr, buf, buflen);
case AF_DECnet:
-@@ -635,6 +636,7 @@ const char *rt_addr_n2a(int af, int len,
+@@ -637,6 +638,7 @@ const char *rt_addr_n2a(int af, const vo
memcpy(dna.a_addr, addr, 2);
return dnet_ntop(af, &dna, buf, buflen);
}
default:
return "???";
}
-@@ -710,6 +712,7 @@ const char *format_host(int af, int len,
+@@ -712,6 +714,7 @@ const char *format_host(int af, int len,
case AF_INET6:
len = 16;
break;
case AF_IPX:
len = 10;
break;
-@@ -720,6 +723,7 @@ const char *format_host(int af, int len,
+@@ -722,6 +725,7 @@ const char *format_host(int af, int len,
len = 2;
break;
#endif