Browse Source

6in4: re-establish tunnel also if no credentials are used (static setup)

SVN-Revision: 25627
Jo-Philipp Wich 15 years ago
parent
commit
7f75ed2939
2 changed files with 6 additions and 2 deletions
  1. 1 1
      package/6in4/Makefile
  2. 5 1
      package/6in4/files/6in4.hotplug

+ 1 - 1
package/6in4/Makefile

@@ -8,7 +8,7 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=6in4
-PKG_VERSION:=8
+PKG_VERSION:=9
 PKG_RELEASE:=1
 
 include $(INCLUDE_DIR)/package.mk

+ 5 - 1
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" &
 			}
 		}
 	}