aboutsummaryrefslogtreecommitdiffstats
path: root/package
diff options
context:
space:
mode:
authorFlorian Eckert <fe@dev.tdt.de>2018-04-12 10:31:29 +0200
committerKoen Vandeputte <koen.vandeputte@ncentric.com>2018-10-11 12:18:16 +0200
commit0c9d06b5b243334123eafaf2e26a15ec2757767e (patch)
tree6c1c47e11e66f91415d2872ea819313b647a99a7 /package
parent4b80bd878d0fcb520f4811097900ebb5478a74fd (diff)
downloadupstream-0c9d06b5b243334123eafaf2e26a15ec2757767e.tar.gz
upstream-0c9d06b5b243334123eafaf2e26a15ec2757767e.tar.bz2
upstream-0c9d06b5b243334123eafaf2e26a15ec2757767e.zip
uqmi: stop proto handler if verify pin count is not 3
Check pin count value from pin status and stop verification the pin if the value is less then 3. This should prevent the proto-handler to lock the SIM. If SIM is locked then the PUK is needed. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
Diffstat (limited to 'package')
-rwxr-xr-xpackage/network/utils/uqmi/files/lib/netifd/proto/qmi.sh7
1 files changed, 7 insertions, 0 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 bfe01ddcc3..f7b5f27ef6 100755
--- a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
+++ b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh
@@ -94,6 +94,7 @@ proto_qmi_setup() {
. /usr/share/libubox/jshn.sh
json_load "$(uqmi -s -d "$device" --get-pin-status)"
json_get_var pin1_status pin1_status
+ json_get_var pin1_verify_tries pin1_verify_tries
case "$pin1_status" in
disabled)
@@ -106,6 +107,12 @@ proto_qmi_setup() {
return 1
;;
not_verified)
+ [ "$pin1_verify_tries" -lt "3" ] && {
+ echo "PIN verify count value is $pin1_verify_tries this is below the limit of 3"
+ proto_notify_error "$interface" PIN_TRIES_BELOW_LIMIT
+ proto_block_restart "$interface"
+ return 1
+ }
if [ -n "$pincode" ]; then
uqmi -s -d "$device" --verify-pin1 "$pincode" > /dev/null 2>&1 || uqmi -s -d "$device" --uim-verify-pin1 "$pincode" > /dev/null 2>&1 || {
echo "Unable to verify PIN"