summaryrefslogtreecommitdiff
path: root/package/6in4/files
diff options
context:
space:
mode:
authorjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>2011-02-20 18:27:19 +0000
committerjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>2011-02-20 18:27:19 +0000
commit5a636bea987c9906668efd96513456eb87a4f99c (patch)
treef796bab3517d7f7640ef3ee5288ad25c79a729b3 /package/6in4/files
parent334c0f6e199dbd31062a33a7ff55a1f36624697e (diff)
[package] 6in4: re-establish tunnel also if no credentials are used (static setup)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@25627 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/6in4/files')
-rw-r--r--package/6in4/files/6in4.hotplug6
1 files changed, 5 insertions, 1 deletions
diff --git a/package/6in4/files/6in4.hotplug b/package/6in4/files/6in4.hotplug
index 9499296d92..49667a815e 100644
--- a/package/6in4/files/6in4.hotplug
+++ b/package/6in4/files/6in4.hotplug
@@ -29,11 +29,12 @@ if [ "$ACTION" = ifup ]; then
local password
config_get password "$cfg" password
+ uci_set_state network "$cfg" ipaddr "$wanip"
+
[ -n "$tunnelid" ] && [ -n "$username" ] && [ -n "$password" ] && {
[ "${#password}" == 32 -a -z "${password//[a-f0-9]/}" ] || {
password="$(echo -n "$password" | md5sum)"; password="${password%% *}"
}
- uci_set_state network "$cfg" ipaddr "$wanip"
(
local url="http://ipv4.tunnelbroker.net/ipv4_end.php?ipv4b=AUTO&user_id=$username&pass=$password&tunnel_id=$tunnelid"
@@ -51,6 +52,9 @@ if [ "$ACTION" = ifup ]; then
}
done
)&
+ } || {
+ logger -t 6in4-update "Re-establishing tunnel due to change on $INTERFACE ($DEVICE)"
+ ifup "$cfg" &
}
}
}