diff options
author | Alex Dowad <alexinbeijing@gmail.com> | 2015-08-07 11:53:26 +0200 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2015-08-24 20:18:36 +0200 |
commit | 65c501a093b6ae1f8344a71378fd99f27177adaf (patch) | |
tree | 81241147dd4613d7411632766302593e6240f4c1 | |
parent | c52cbea2bba6582b44facb424a15dc544b54fb28 (diff) | |
download | busybox-w32-65c501a093b6ae1f8344a71378fd99f27177adaf.tar.gz busybox-w32-65c501a093b6ae1f8344a71378fd99f27177adaf.tar.bz2 busybox-w32-65c501a093b6ae1f8344a71378fd99f27177adaf.zip |
ifupdown: 'prio' should have been 'metric' in static_up and static_up6
When a static interface with explicit gateway and metric in /etc/network/interfaces
is enabled using 'ifup', and further, the BusyBox 'ip' applet is enabled, the
following error message appears at the console (and no default route is added):
ip: either "to" is duplicate, or "prio" is garbage
Tracing ifup reveals that it is attempting to run the following shell command:
ip route add default via <GW> dev <DEVICE> prio <METRIC>
'ip' does not understand the 'prio' argument, causing this error. With 'metric',
it works fine.
Signed-off-by: Alex Dowad <alexinbeijing@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r-- | networking/ifupdown.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/networking/ifupdown.c b/networking/ifupdown.c index 606fc049f..7c45e8927 100644 --- a/networking/ifupdown.c +++ b/networking/ifupdown.c | |||
@@ -395,7 +395,7 @@ static int FAST_FUNC static_up6(struct interface_defn_t *ifd, execfn *exec) | |||
395 | result = execute("ip addr add %address%/%netmask% dev %iface%[[ label %label%]]", ifd, exec); | 395 | result = execute("ip addr add %address%/%netmask% dev %iface%[[ label %label%]]", ifd, exec); |
396 | result += execute("ip link set[[ mtu %mtu%]][[ addr %hwaddress%]] %iface% up", ifd, exec); | 396 | result += execute("ip link set[[ mtu %mtu%]][[ addr %hwaddress%]] %iface% up", ifd, exec); |
397 | /* Was: "[[ ip ....%gateway% ]]". Removed extra spaces w/o checking */ | 397 | /* Was: "[[ ip ....%gateway% ]]". Removed extra spaces w/o checking */ |
398 | result += execute("[[ip route add ::/0 via %gateway%]][[ prio %metric%]]", ifd, exec); | 398 | result += execute("[[ip route add ::/0 via %gateway%]][[ metric %metric%]]", ifd, exec); |
399 | # else | 399 | # else |
400 | result = execute("ifconfig %iface%[[ media %media%]][[ hw %hwaddress%]][[ mtu %mtu%]] up", ifd, exec); | 400 | result = execute("ifconfig %iface%[[ media %media%]][[ hw %hwaddress%]][[ mtu %mtu%]] up", ifd, exec); |
401 | result += execute("ifconfig %iface% add %address%/%netmask%", ifd, exec); | 401 | result += execute("ifconfig %iface% add %address%/%netmask%", ifd, exec); |
@@ -482,7 +482,7 @@ static int FAST_FUNC static_up(struct interface_defn_t *ifd, execfn *exec) | |||
482 | result = execute("ip addr add %address%/%bnmask%[[ broadcast %broadcast%]] " | 482 | result = execute("ip addr add %address%/%bnmask%[[ broadcast %broadcast%]] " |
483 | "dev %iface%[[ peer %pointopoint%]][[ label %label%]]", ifd, exec); | 483 | "dev %iface%[[ peer %pointopoint%]][[ label %label%]]", ifd, exec); |
484 | result += execute("ip link set[[ mtu %mtu%]][[ addr %hwaddress%]] %iface% up", ifd, exec); | 484 | result += execute("ip link set[[ mtu %mtu%]][[ addr %hwaddress%]] %iface% up", ifd, exec); |
485 | result += execute("[[ip route add default via %gateway% dev %iface%[[ prio %metric%]]]]", ifd, exec); | 485 | result += execute("[[ip route add default via %gateway% dev %iface%[[ metric %metric%]]]]", ifd, exec); |
486 | return ((result == 3) ? 3 : 0); | 486 | return ((result == 3) ? 3 : 0); |
487 | # else | 487 | # else |
488 | /* ifconfig said to set iface up before it processes hw %hwaddress%, | 488 | /* ifconfig said to set iface up before it processes hw %hwaddress%, |