[openwrt/openwrt] uqmi: set CID during 'query-data-status' operation

LEDE Commits lede-commits at lists.infradead.org
Sat Mar 12 03:09:04 PST 2022


dangole pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/c8a88118af4602e9eb1b57434d9e2e2c57667e53

commit c8a88118af4602e9eb1b57434d9e2e2c57667e53
Author: Lech Perczak <lech.perczak at gmail.com>
AuthorDate: Sat Mar 12 01:50:53 2022 +0100

    uqmi: set CID during 'query-data-status' operation
    
    Modems used in ZTE mobile broadband routers require to query the data
    session status using the same CID as one used to establish the session,
    otherwise they will report the session as "disconnected" despite
    reporting correct PDH in previous step. Without this change, IPv6
    connection on these modems doesn't establish properly. In IPv4 this bug
    is present as well, but for some reason querying of IPv4 status works
    using temporary CID, this however seems noncompliant with QMI
    specifications, so fix it as well.
    
    Signed-off-by: Lech Perczak <lech.perczak at gmail.com>
---
 package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh | 4 ++--
 1 file changed, 2 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 156e57b135..ad577ea317 100755
--- a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
+++ b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
@@ -285,7 +285,7 @@ proto_qmi_setup() {
 		fi
 
 		# Check data connection state
-		connstat=$(uqmi -s -d "$device" --get-data-status)
+		connstat=$(uqmi -s -d "$device" --set-client-id wds,"$cid_4" --get-data-status)
 		[ "$connstat" == '"connected"' ] || {
 			echo "No data link!"
 			uqmi -s -d "$device" --set-client-id wds,"$cid_4" --release-client-id wds > /dev/null 2>&1
@@ -322,7 +322,7 @@ proto_qmi_setup() {
 		fi
 
 		# Check data connection state
-		connstat=$(uqmi -s -d "$device" --get-data-status)
+		connstat=$(uqmi -s -d "$device" --set-client-id wds,"$cid_6" --get-data-status)
 		[ "$connstat" == '"connected"' ] || {
 			echo "No data link!"
 			uqmi -s -d "$device" --set-client-id wds,"$cid_6" --release-client-id wds > /dev/null 2>&1




More information about the lede-commits mailing list