From: Lech Perczak Date: Mon, 19 Jul 2021 19:28:07 +0000 (+0200) Subject: umbim: use static config by default, fallback to DHCP X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=ca8df8a992211c7f61434372b07afcbe0d94ff9f;p=openwrt%2Fstaging%2Fdangole.git umbim: use static config by default, fallback to DHCP Finally, inspired by ModemManager's logic, make static configuration obtained through MBIM control channel, preferred. If IP configuration is not available this way, fallback to DHCP(v6) if enabled, else do not create a sub-interface for unavailable IP type. Signed-off-by: Lech Perczak --- diff --git a/package/network/utils/umbim/files/lib/netifd/proto/mbim.sh b/package/network/utils/umbim/files/lib/netifd/proto/mbim.sh index d8df783a92..294dc64400 100755 --- a/package/network/utils/umbim/files/lib/netifd/proto/mbim.sh +++ b/package/network/utils/umbim/files/lib/netifd/proto/mbim.sh @@ -179,8 +179,11 @@ _proto_mbim_setup() { proto_init_update "$ifname" 1 proto_send_update "$interface" + [ -z "$dhcp" ] && dhcp=1 + [ -z "$dhcpv6" ] && dhcpv6=1 + [ "$iptype" != "ipv6" ] && { - if [ -z "$dhcp" -o "$dhcp" = 0 ]; then + if [ -n "$ipv4address" ]; then json_init json_add_string name "${interface}_4" json_add_string ifname "@$interface" @@ -196,7 +199,7 @@ _proto_mbim_setup() { [ -n "$zone" ] && json_add_string zone "$zone" json_close_object ubus call network add_dynamic "$(json_dump)" - else + elif [ "$dhcp" != 0 ]; then echo "mbim[$$]" "Starting DHCP on $ifname" json_init json_add_string name "${interface}_4" @@ -210,7 +213,7 @@ _proto_mbim_setup() { } [ "$iptype" != "ipv4" ] && { - if [ -z "$dhcpv6" -o "$dhcpv6" = 0 ]; then + if [ -n "$ipv6address" ]; then json_init json_add_string name "${interface}_6" json_add_string ifname "@$interface" @@ -226,7 +229,7 @@ _proto_mbim_setup() { [ -n "$zone" ] && json_add_string zone "$zone" json_close_object ubus call network add_dynamic "$(json_dump)" - else + elif [ "$dhcpv6" != 0 ]; then echo "mbim[$$]" "Starting DHCPv6 on $ifname" json_init json_add_string name "${interface}_6"