diff options
Diffstat (limited to 'package')
-rwxr-xr-x | package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh index 6dcc226693..32df6ee9b1 100755 --- a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh +++ b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh @@ -19,20 +19,23 @@ proto_qmi_init_config() { proto_config_add_string modes proto_config_add_boolean ipv6 proto_config_add_boolean dhcp + proto_config_add_int metric } proto_qmi_setup() { local interface="$1" - local device apn auth username password pincode delay modes ipv6 dhcp + local device apn auth username password pincode delay modes ipv6 dhcp metric local cid_4 pdh_4 cid_6 pdh_6 ipv4 local ip subnet gateway dns1 dns2 ip_6 ip_prefix_length gateway_6 dns1_6 dns2_6 - json_get_vars device apn auth username password pincode delay modes ipv6 dhcp + json_get_vars device apn auth username password pincode delay modes ipv6 dhcp metric ipv4=1 [ "$ipv6" = 1 ] || ipv6="" + [ "$metric" = "" ] && metric="0" + [ -n "$ctl_device" ] && device=$ctl_device [ -n "$device" ] || { @@ -200,6 +203,7 @@ proto_qmi_setup() { json_add_string name "${interface}_4" json_add_string ifname "@$interface" json_add_string proto "dhcp" + json_add_int metric "$metric" json_close_object ubus call network add_dynamic "$(json_dump)" } @@ -209,6 +213,7 @@ proto_qmi_setup() { json_add_string name "${interface}_6" json_add_string ifname "@$interface" json_add_string proto "dhcpv6" + json_add_int metric "$metric" # RFC 7278: Extend an IPv6 /64 Prefix to LAN json_add_string extendprefix 1 json_close_object |