aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKoen Vandeputte <koen.vandeputte@ncentric.com>2018-02-19 11:02:45 +0100
committerJohn Crispin <john@phrozen.org>2018-02-20 10:50:37 +0100
commit788312ca59c57f1cfc4737378526ff1c2a1c8374 (patch)
tree5d152b94d844c97f8b599bbea1c89419824758db
parentb934aa2f2144357ce5f9a62d3fcd2f326e8e9b2b (diff)
downloadupstream-788312ca59c57f1cfc4737378526ff1c2a1c8374.tar.gz
upstream-788312ca59c57f1cfc4737378526ff1c2a1c8374.tar.bz2
upstream-788312ca59c57f1cfc4737378526ff1c2a1c8374.zip
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@ncentric.com>
-rwxr-xr-xpackage/network/utils/uqmi/files/lib/netifd/proto/qmi.sh8
1 files 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 c3da5ede26..46ea134182 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