From: Jo-Philipp Wich Date: Mon, 18 Jun 2012 21:40:34 +0000 (+0000) Subject: 6in4, 6to4: further simplify protocol backends - use new default route dependencies... X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=4dc3b124e9d8941fea3655879f2da9e0acf90bc6;p=librecmc%2Flibrecmc.git 6in4, 6to4: further simplify protocol backends - use new default route dependencies to trigger bringup - remove old hotplug scripts SVN-Revision: 32428 --- diff --git a/package/6in4/Makefile b/package/6in4/Makefile index d91ae84a60..fdab290861 100644 --- a/package/6in4/Makefile +++ b/package/6in4/Makefile @@ -37,8 +37,6 @@ endef define Package/6in4/install $(INSTALL_DIR) $(1)/lib/netifd/proto $(INSTALL_BIN) ./files/6in4.sh $(1)/lib/netifd/proto/6in4.sh - $(INSTALL_DIR) $(1)/etc/hotplug.d/iface - $(INSTALL_DATA) ./files/6in4.hotplug $(1)/etc/hotplug.d/iface/90-6in4 endef $(eval $(call BuildPackage,6in4)) diff --git a/package/6in4/files/6in4.hotplug b/package/6in4/files/6in4.hotplug deleted file mode 100644 index e94179828b..0000000000 --- a/package/6in4/files/6in4.hotplug +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/sh - -if [ "$ACTION" = ifup ]; then - . /lib/functions.sh - - INCLUDE_ONLY=1 - . /lib/netifd/proto/6in4.sh - - include /lib/network - scan_interfaces - - update_tunnel() { - local cfg="$1" - - local proto - config_get proto "$cfg" proto - [ "$proto" = 6in4 ] || return 0 - - local wandev - config_get wandev "$cfg" wan_device "$(find_6in4_wanif)" - [ "$wandev" = "$DEVICE" ] || return 0 - - local wanip=$(find_6in4_wanip "$wandev") - - [ -n "$wanip" ] && ifup "$cfg" - } - - config_foreach update_tunnel interface -fi diff --git a/package/6in4/files/6in4.sh b/package/6in4/files/6in4.sh index 747662c08a..71bc68940c 100755 --- a/package/6in4/files/6in4.sh +++ b/package/6in4/files/6in4.sh @@ -9,13 +9,6 @@ init_proto "$@" } -tun_error() { - local cfg="$1"; shift; - - [ -n "$1" ] && proto_notify_error "$cfg" "$@" - proto_block_restart "$cfg" -} - proto_6in4_setup() { local cfg="$1" local iface="$2" @@ -25,14 +18,17 @@ proto_6in4_setup() { json_get_vars mtu ttl ipaddr peeraddr ip6addr tunnelid username password [ -z "$ip6addr" -o -z "$peeraddr" ] && { - tun_error "$cfg" "MISSING_ADDRESS" + proto_notify_error "$cfg" "MISSING_ADDRESS" + proto_block_restart "$cfg" return } + ( proto_add_host_dependency "$cfg" 0.0.0.0 ) + [ -z "$ipaddr" ] && { local wanif if ! network_find_wan wanif || ! network_get_ipaddr ipaddr "$wanif"; then - tun_error "$cfg" "NO_WAN_LINK" + proto_notify_error "$cfg" "NO_WAN_LINK" return fi } diff --git a/package/6to4/Makefile b/package/6to4/Makefile index 441f05de3e..740697f75e 100644 --- a/package/6to4/Makefile +++ b/package/6to4/Makefile @@ -37,8 +37,6 @@ endef define Package/6to4/install $(INSTALL_DIR) $(1)/lib/netifd/proto $(INSTALL_BIN) ./files/6to4.sh $(1)/lib/netifd/proto/6to4.sh - $(INSTALL_DIR) $(1)/etc/hotplug.d/iface - $(INSTALL_DATA) ./files/6to4.hotplug $(1)/etc/hotplug.d/iface/91-6to4 endef $(eval $(call BuildPackage,6to4)) diff --git a/package/6to4/files/6to4.hotplug b/package/6to4/files/6to4.hotplug deleted file mode 100644 index 48ac9c1b81..0000000000 --- a/package/6to4/files/6to4.hotplug +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/sh - -if [ "$ACTION" = ifup ]; then - . /lib/functions.sh - - INCLUDE_ONLY=1 - . /lib/netifd/proto/6to4.sh - - include /lib/network - scan_interfaces - - update_tunnel() { - local cfg="$1" - - local proto - config_get proto "$cfg" proto - [ "$proto" = 6to4 ] || return 0 - - local wandev - config_get wandev "$cfg" wan_device "$(find_6to4_wanif)" - [ "$wandev" = "$DEVICE" ] || return 0 - - local wanip=$(find_6to4_wanip "$wandev") - - [ -n "$wanip" ] && ifup "$cfg" - } - - config_foreach update_tunnel interface -fi diff --git a/package/6to4/files/6to4.sh b/package/6to4/files/6to4.sh index 5a1ad47594..10abd9a26e 100755 --- a/package/6to4/files/6to4.sh +++ b/package/6to4/files/6to4.sh @@ -98,13 +98,6 @@ set_6to4_radvd_prefix() { } } -tun_error() { - local cfg="$1"; shift; - - [ -n "$1" ] && proto_notify_error "$cfg" "$@" - proto_block_restart "$cfg" -} - proto_6to4_setup() { local cfg="$1" local iface="$2" @@ -113,16 +106,18 @@ proto_6to4_setup() { local mtu ttl ipaddr adv_subnet adv_interface adv_valid_lifetime adv_preferred_lifetime json_get_vars mtu ttl ipaddr adv_subnet adv_interface adv_valid_lifetime adv_preferred_lifetime + ( proto_add_host_dependency "$cfg" 0.0.0.0 ) + [ -z "$ipaddr" ] && { local wanif if ! network_find_wan wanif || ! network_get_ipaddr ipaddr "$wanif"; then - tun_error "$cfg" "NO_WAN_LINK" + proto_notify_error "$cfg" "NO_WAN_LINK" return fi } test_6to4_rfc1918 "$ipaddr" && { - tun_error "$cfg" "INVALID_LOCAL_ADDRESS" + proto_notify_error "$cfg" "INVALID_LOCAL_ADDRESS" return }