aboutsummaryrefslogtreecommitdiffstats
path: root/main/busybox/0001-ifupdown-pass-interface-device-name-for-ipv6-route-c.patch
diff options
context:
space:
mode:
Diffstat (limited to 'main/busybox/0001-ifupdown-pass-interface-device-name-for-ipv6-route-c.patch')
-rw-r--r--main/busybox/0001-ifupdown-pass-interface-device-name-for-ipv6-route-c.patch31
1 files changed, 15 insertions, 16 deletions
diff --git a/main/busybox/0001-ifupdown-pass-interface-device-name-for-ipv6-route-c.patch b/main/busybox/0001-ifupdown-pass-interface-device-name-for-ipv6-route-c.patch
index 14086269b3..3fb88fd5c0 100644
--- a/main/busybox/0001-ifupdown-pass-interface-device-name-for-ipv6-route-c.patch
+++ b/main/busybox/0001-ifupdown-pass-interface-device-name-for-ipv6-route-c.patch
@@ -1,6 +1,6 @@
-From 3809536eb8286e972fc7170493fffed35c301f29 Mon Sep 17 00:00:00 2001
+From 028524317d8d0011ed38e86e507a06738a5b5a97 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
-Date: Mon, 20 Aug 2012 13:50:46 +0300
+Date: Mon, 26 Oct 2015 17:06:12 +0100
Subject: [PATCH] ifupdown: pass interface device name for ipv6 route commands
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
@@ -12,37 +12,36 @@ some places, but kernel refuses to insert the route unless device
name is explicitly specified in the route addition.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
+Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
---
- networking/ifupdown.c | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
+ networking/ifupdown.c | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/networking/ifupdown.c b/networking/ifupdown.c
-index 9b34986..11a8cec 100644
+index 7c45e89..d477ff6 100644
--- a/networking/ifupdown.c
+++ b/networking/ifupdown.c
-@@ -401,11 +401,11 @@ static int FAST_FUNC static_up6(struct interface_defn_t *ifd, execfn *exec)
+@@ -394,8 +394,8 @@ static int FAST_FUNC static_up6(struct interface_defn_t *ifd, execfn *exec)
+ # if ENABLE_FEATURE_IFUPDOWN_IP
result = execute("ip addr add %address%/%netmask% dev %iface%[[ label %label%]]", ifd, exec);
result += execute("ip link set[[ mtu %mtu%]][[ addr %hwaddress%]] %iface% up", ifd, exec);
- /* Was: "[[ ip ....%gateway% ]]". Removed extra spaces w/o checking */
-- result += execute("[[ip route add ::/0 via %gateway%]][[ prio %metric%]]", ifd, exec);
-+ result += execute("[[ip route add ::/0 via %gateway% dev %iface%]][[ prio %metric%]]", ifd, exec);
+- /* Was: "[[ ip ....%gateway% ]]". Removed extra spaces w/o checking */
+- result += execute("[[ip route add ::/0 via %gateway%]][[ metric %metric%]]", ifd, exec);
++ /* Reportedly, IPv6 needs "dev %iface%", but IPv4 does not: */
++ result += execute("[[ip route add ::/0 via %gateway% dev %iface%]][[ metric %metric%]]", ifd, exec);
# else
result = execute("ifconfig %iface%[[ media %media%]][[ hw %hwaddress%]][[ mtu %mtu%]] up", ifd, exec);
result += execute("ifconfig %iface% add %address%/%netmask%", ifd, exec);
-- result += execute("[[route -A inet6 add ::/0 gw %gateway%[[ metric %metric%]]]]", ifd, exec);
-+ result += execute("[[route -A inet6 add ::/0 gw %gateway% dev %iface%[[ metric %metric%]]]]", ifd, exec);
- # endif
- return ((result == 3) ? 3 : 0);
- }
-@@ -427,7 +427,7 @@ static int FAST_FUNC v4tunnel_up(struct interface_defn_t *ifd, execfn *exec)
+@@ -421,7 +421,8 @@ static int FAST_FUNC v4tunnel_up(struct interface_defn_t *ifd, execfn *exec)
"%endpoint%[[ local %local%]][[ ttl %ttl%]]", ifd, exec);
result += execute("ip link set %iface% up", ifd, exec);
result += execute("ip addr add %address%/%netmask% dev %iface%", ifd, exec);
- result += execute("[[ip route add ::/0 via %gateway%]]", ifd, exec);
++ /* Reportedly, IPv6 needs "dev %iface%", but IPv4 does not: */
+ result += execute("[[ip route add ::/0 via %gateway% dev %iface%]]", ifd, exec);
return ((result == 4) ? 4 : 0);
}
--
-1.7.12
+2.6.1