summaryrefslogtreecommitdiff
path: root/package/6to4/files/6to4.sh
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2012-07-02 12:14:50 +0000
committerJo-Philipp Wich <jow@openwrt.org>2012-07-02 12:14:50 +0000
commitb2e2de794ec0b592052d3a6375b8987654c25093 (patch)
tree14d22eaa3b160a03cec7041b981e7997e091a058 /package/6to4/files/6to4.sh
parentbcacf552fdbd524dc16142223e08032d1071c748 (diff)
downloadmtk-20170518-b2e2de794ec0b592052d3a6375b8987654c25093.zip
mtk-20170518-b2e2de794ec0b592052d3a6375b8987654c25093.tar.gz
mtk-20170518-b2e2de794ec0b592052d3a6375b8987654c25093.tar.bz2
6to4: fix ifname resolving for adv_interface option (#11796)
SVN-Revision: 32576
Diffstat (limited to 'package/6to4/files/6to4.sh')
-rwxr-xr-xpackage/6to4/files/6to4.sh23
1 files changed, 10 insertions, 13 deletions
diff --git a/package/6to4/files/6to4.sh b/package/6to4/files/6to4.sh
index 10abd9a..f518b02 100755
--- a/package/6to4/files/6to4.sh
+++ b/package/6to4/files/6to4.sh
@@ -143,7 +143,6 @@ proto_6to4_setup() {
uci_revert_state radvd
config_load radvd
- config_load network
adv_subnet=$((0x${adv_subnet:-1}))
@@ -151,22 +150,20 @@ proto_6to4_setup() {
for adv_interface in ${adv_interface:-lan}; do
local adv_ifname
- config_get adv_ifname "${adv_interface:-lan}" ifname
+ network_get_device adv_ifname "${adv_interface:-lan}" || continue
- grep -qs "^ *$adv_ifname:" /proc/net/dev && {
- local subnet6="$(printf "%s:%x::1/64" "$prefix6" $adv_subnet)"
+ local subnet6="$(printf "%s:%x::1/64" "$prefix6" $adv_subnet)"
- logger -t "$link" " * Advertising IPv6 subnet $subnet6 on ${adv_interface:-lan} ($adv_ifname)"
- ip -6 addr add $subnet6 dev $adv_ifname
+ logger -t "$link" " * Advertising IPv6 subnet $subnet6 on ${adv_interface:-lan} ($adv_ifname)"
+ ip -6 addr add $subnet6 dev $adv_ifname
- set_6to4_radvd_interface "$sid" "$adv_interface" "$mtu"
- set_6to4_radvd_prefix "$sid" "$adv_interface" \
- "$wancfg" "$(printf "0:0:0:%x::/64" $adv_subnet)" \
- "$adv_valid_lifetime" "$adv_preferred_lifetime"
+ set_6to4_radvd_interface "$sid" "$adv_interface" "$mtu"
+ set_6to4_radvd_prefix "$sid" "$adv_interface" \
+ "$wancfg" "$(printf "0:0:0:%x::/64" $adv_subnet)" \
+ "$adv_valid_lifetime" "$adv_preferred_lifetime"
- adv_subnets="${adv_subnets:+$adv_subnets }$adv_ifname:$subnet6"
- adv_subnet=$(($adv_subnet + 1))
- }
+ adv_subnets="${adv_subnets:+$adv_subnets }$adv_ifname:$subnet6"
+ adv_subnet=$(($adv_subnet + 1))
done
uci_set_state network "$cfg" adv_subnets "$adv_subnets"