kernel: fq_codel: dont reinit flow state
[openwrt/staging/lynxis/omap.git] / package / 6rd / files / 6rd.sh
index 3786ef06f9a0e5bdee0b177f4dc909062cdc1ac7..59c3169b39a2aabc7666c2adb2a3b4db4e7b597b 100644 (file)
@@ -9,13 +9,6 @@
        init_proto "$@"
 }
 
-tun_error() {
-       local cfg="$1"; shift;
-
-       [ -n "$1" ] && proto_notify_error "$cfg" "$@"
-       proto_block_restart "$cfg"
-}
-
 proto_6rd_setup() {
        local cfg="$1"
        local iface="$2"
@@ -25,14 +18,17 @@ proto_6rd_setup() {
        json_get_vars mtu ttl ipaddr peeraddr ip6prefix ip6prefixlen ip4prefixlen
 
        [ -z "$ip6prefix" -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
        }
@@ -72,6 +68,7 @@ proto_6rd_init_config() {
 
        proto_config_add_int "mtu"
        proto_config_add_int "ttl"
+       proto_config_add_string "ipaddr"
        proto_config_add_string "peeraddr"
        proto_config_add_string "ip6prefix"
        proto_config_add_string "ip6prefixlen"