[openwrt/openwrt] uqmi: ensure CID is a numeric value before proceeding
LEDE Commits
lede-commits at lists.infradead.org
Tue Feb 20 01:34:07 PST 2018
blogic pushed a commit to openwrt/openwrt.git, branch master:
https://git.lede-project.org/e16cc7a8c8f32a0ec865d48735ac278845c6d582
commit e16cc7a8c8f32a0ec865d48735ac278845c6d582
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