Koen Vandeputte <koen.vandepu...@ncentric.com> wrote: > 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. Why ignore exit status? if [ $? -ne 0 -o ! "$cid_4" -eq "$cid_4" ]; ... Also, write comment near this dirty trick, or someone optimize it to if [ -n "$cid_x" ] ... > Signed-off-by: Koen Vandeputte <koen.vandepu...@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 c3da5ede26b1..46ea134182e3 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 > > -- > 2.7.4 _______________________________________________ Lede-dev mailing list Lede-dev@lists.infradead.org http://lists.infradead.org/mailman/listinfo/lede-dev