[openwrt/openwrt] uqmi: ensure CID is a numeric value before proceeding

LEDE Commits lede-commits at lists.infradead.org
Tue Feb 20 01:50:45 PST 2018


blogic pushed a commit to openwrt/openwrt.git, branch lede-17.01:
https://git.lede-project.org/788312ca59c57f1cfc4737378526ff1c2a1c8374

commit 788312ca59c57f1cfc4737378526ff1c2a1c8374
Author: Koen Vandeputte <koen.vandeputte at ncentric.com>
AuthorDate: Mon Feb 19 11:02:45 2018 +0100

    uqmi: ensure CID is a numeric value before proceeding
    
    The current implementation only checked if uqmi itself executed
    correctly which is also the case when the returned value is actually
    an error.
    
    Rework this, checking that CID is a numeric value, which can only
    be true if uqmi itself also executed correctly.
    
    Signed-off-by: Koen Vandeputte <koen.vandeputte at ncentric.com>
---
 package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh | 8 ++++----
 1 file changed, 4 insertions(+), 4 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 c3da5ed..46ea134 100755
--- a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
+++ b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
@@ -140,11 +140,11 @@ proto_qmi_setup() {
 
 	[ "$pdptype" = "ip" -o "$pdptype" = "ipv4v6" ] && {
 		cid_4=$(uqmi -s -d "$device" --get-client-id wds)
-		[ $? -ne 0 ] && {
+		if ! [ "$cid_4" -eq "$cid_4" ] 2> /dev/null; then
 			echo "Unable to obtain client ID"
 			proto_notify_error "$interface" NO_CID
 			return 1
-		}
+		fi
 
 		uqmi -s -d "$device" --set-client-id wds,"$cid_4" --set-ip-family ipv4 > /dev/null
 
@@ -177,11 +177,11 @@ proto_qmi_setup() {
 
 	[ "$pdptype" = "ipv6" -o "$pdptype" = "ipv4v6" ] && {
 		cid_6=$(uqmi -s -d "$device" --get-client-id wds)
-		[ $? -ne 0 ] && {
+		if ! [ "$cid_6" -eq "$cid_6" ] 2> /dev/null; then
 			echo "Unable to obtain client ID"
 			proto_notify_error "$interface" NO_CID
 			return 1
-		}
+		fi
 
 		uqmi -s -d "$device" --set-client-id wds,"$cid_6" --set-ip-family ipv6 > /dev/null
 



More information about the lede-commits mailing list