umbim: separate DHCPv6 configuration from DHCP(v4)
authorLech Perczak <lech.perczak@gmail.com>
Mon, 9 Jan 2023 21:54:07 +0000 (22:54 +0100)
committerHauke Mehrtens <hauke@hauke-m.de>
Sat, 29 Apr 2023 19:33:04 +0000 (21:33 +0200)
Now, that sub-interface setup is split by IP type, and separate checks
are performed for DHCP selection, it is possible to control DHCP on v4
an v6 sub-interfaces instantly. Add "dhcpv6" variable, akin to QMI
option, to control behaviour of DHCPv6 separately from IPv4 option,
which is required for some mobile operators.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
package/network/utils/umbim/files/lib/netifd/proto/mbim.sh

index 9af5b69ac110c51c752ea5b2355ff4222cbead3c..d8df783a9262af255da4a9b479519ffd017ad61b 100755 (executable)
@@ -20,6 +20,7 @@ proto_mbim_init_config() {
        proto_config_add_string username
        proto_config_add_string password
        proto_config_add_boolean dhcp
+       proto_config_add_boolean dhcpv6
        proto_config_add_string pdptype
        proto_config_add_defaults
 }
@@ -29,8 +30,8 @@ _proto_mbim_setup() {
        local tid=2
        local ret
 
-       local device apn pincode delay allow_roaming allow_partner dhcp pdptype $PROTO_DEFAULT_OPTIONS
-       json_get_vars device apn pincode delay auth username password allow_roaming allow_partner dhcp pdptype $PROTO_DEFAULT_OPTIONS
+       local device apn pincode delay allow_roaming allow_partner dhcp dhcpv6 pdptype $PROTO_DEFAULT_OPTIONS
+       json_get_vars device apn pincode delay auth username password allow_roaming allow_partner dhcp dhcpv6 pdptype $PROTO_DEFAULT_OPTIONS
 
        [ -n "$ctl_device" ] && device=$ctl_device
 
@@ -209,7 +210,7 @@ _proto_mbim_setup() {
        }
 
        [ "$iptype" != "ipv4" ] && {
-               if [ -z "$dhcp" -o "$dhcp" = 0 ]; then
+               if [ -z "$dhcpv6" -o "$dhcpv6" = 0 ]; then
                        json_init
                        json_add_string name "${interface}_6"
                        json_add_string ifname "@$interface"