[openwrt/openwrt] umbim: use static config by default, fallback to DHCP
LEDE Commits
lede-commits at lists.infradead.org
Sat Apr 29 12:39:12 PDT 2023
hauke pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/ca8df8a992211c7f61434372b07afcbe0d94ff9f
commit ca8df8a992211c7f61434372b07afcbe0d94ff9f
Author: Lech Perczak <lech.perczak at gmail.com>
AuthorDate: Mon Jul 19 21:28:07 2021 +0200
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 <lech.perczak at gmail.com>
---
package/network/utils/umbim/files/lib/netifd/proto/mbim.sh | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
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"
More information about the lede-commits
mailing list