odhcp6c: improve server selection, introduce "forceprefix" option
[openwrt/staging/lynxis/omap.git] / package / network / ipv6 / odhcp6c / files / dhcpv6.sh
index bf6cd9aa6281ea44e2869f3263ab88de80bcf60a..ab344e1d30446a585eb063782c65265df437b326 100755 (executable)
@@ -10,6 +10,7 @@ proto_dhcpv6_init_config() {
        proto_config_add_string "clientid"
        proto_config_add_string "reqopts"
        proto_config_add_string "noslaaconly"
+       proto_config_add_string "forceprefix"
        proto_config_add_string "norelease"
        proto_config_add_string "ip6prefix"
        proto_config_add_string "iface_dslite"
@@ -20,8 +21,8 @@ proto_dhcpv6_setup() {
        local config="$1"
        local iface="$2"
 
-       local reqaddress reqprefix clientid reqopts noslaaconly norelease ip6prefix iface_dslite ifaceid
-       json_get_vars reqaddress reqprefix clientid reqopts noslaaconly norelease ip6prefix iface_dslite ifaceid
+       local reqaddress reqprefix clientid reqopts noslaaconly forceprefix norelease ip6prefix iface_dslite ifaceid
+       json_get_vars reqaddress reqprefix clientid reqopts noslaaconly forceprefix norelease ip6prefix iface_dslite ifaceid
 
 
        # Configure
@@ -35,6 +36,8 @@ proto_dhcpv6_setup() {
 
        [ "$noslaaconly" = "1" ] && append opts "-S"
 
+       [ "$forceprefix" = "1" ] && append opts "-F"
+
        [ "$norelease" = "1" ] && append opts "-k"
 
        [ -n "$ifaceid" ] && append opts "-i$ifaceid"