diff options
author | Jussi Pakkanen <jussi.pakkanen@canonical.com> | 2014-04-22 15:47:58 +0300 |
---|---|---|
committer | Denis Kenzior <denkenz@gmail.com> | 2014-05-19 09:55:32 -0500 |
commit | b18b83822a69fe5e6f6cf2ac390955dd011971f4 (patch) | |
tree | fa2518a56027c582bc3d29ce29f045626e49a343 | |
parent | a0f172898892f83db4967c57cc249e06d1fb8a8b (diff) | |
download | phonesim-b18b83822a69fe5e6f6cf2ac390955dd011971f4.tar.gz |
phonesim: Add SIM PIN retry counter support
Add support for +CPINR command that returns the amount of PIN unlock
attempts remaining. It also tracks the value properly according to
state changes. The output format is (roughly) as specified in ETSI
TS 127 007 v11.8.0.
-rw-r--r-- | src/default.xml | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/default.xml b/src/default.xml index 2868587..e0cafbb 100644 --- a/src/default.xml +++ b/src/default.xml @@ -232,6 +232,9 @@ <!-- Value of the PIN that is required --> <set name="PINVALUE" value="2468"/> + <!-- How many times can PIN unlocking be attempted --> + <set name="PINRETRYCOUNT" value="3"/> + <!-- pin protection status --> <set name="SC" value="0"/> @@ -2280,6 +2283,19 @@ </chat> <chat> + <!-- Do we support CPINR? --> + <command>AT+CPINR=?</command> + <response>OK\n</response> +</chat> + +<chat> + <!-- How many pin unlock attempts remain --> + <command>AT+CPINR</command> + <response>+CPINR: SIM PIN,${PINRETRYCOUNT},3\nOK\n</response> +</chat> + + +<chat> <!-- Check for which PIN is required --> <command>AT+CPIN?</command> <response delay="2000">+CPIN: ${PINNAME}\n\nOK</response> @@ -2290,6 +2306,7 @@ <command>AT+CPIN="${PINVALUE}"</command> <response>+CPIN: READY\n\nOK</response> <set name="PINNAME" value="READY"/> + <set name="PINRETRYCOUNT" value="3"/> </chat> <chat> @@ -2305,6 +2322,7 @@ <response>+CPIN: READY\n\nOK</response> <set name="PINVALUE" value="${*}"/> <set name="PINNAME" value="READY"/> + <set name="PINRETRYCOUNT" value="3"/> </chat> <chat> @@ -2320,6 +2338,7 @@ <command>AT+CPIN="*","*"</command> <response>+CPIN: SIM PUK\n\nERROR</response> <set name="PINNAME" value="SIM PUK"/> + <set name="PINRETRYCOUNT" value="0"/> </chat> <chat> @@ -2327,6 +2346,7 @@ <command>AT+CPIN=*</command> <response>+CPIN: SIM PIN\n\nERROR</response> <set name="PINNAME" value="SIM PIN"/> + <set name="PINRETRYCOUNT" value="2"/> <switch name="pinretry1"/> </chat> @@ -2337,6 +2357,7 @@ <command>AT+CPIN="${PINVALUE}"</command> <response>+CPIN: READY\n\nOK</response> <set name="PINNAME" value="READY"/> + <set name="PINRETRYCOUNT" value="3"/> <switch name="default"/> </chat> @@ -2346,6 +2367,7 @@ <response>+CPIN: READY\n\nOK</response> <set name="PINVALUE" value="${*}"/> <set name="PINNAME" value="READY"/> + <set name="PINRETRYCOUNT" value="3"/> <switch name="default"/> </chat> @@ -2354,6 +2376,7 @@ <command>AT+CPIN=*</command> <response>+CPIN: SIM PIN\n\nERROR</response> <set name="PINNAME" value="SIM PIN"/> + <set name="PINRETRYCOUNT" value="1"/> <switch name="pinretry2"/> </chat> @@ -2366,6 +2389,7 @@ <command>AT+CPIN="${PINVALUE}"</command> <response>+CPIN: READY\n\nOK</response> <set name="PINNAME" value="READY"/> + <set name="PINRETRYCOUNT" value="3"/> <switch name="default"/> </chat> @@ -2375,6 +2399,7 @@ <response>+CPIN: READY\n\nOK</response> <set name="PINVALUE" value="${*}"/> <set name="PINNAME" value="READY"/> + <set name="PINRETRYCOUNT" value="3"/> <switch name="default"/> </chat> @@ -2383,6 +2408,7 @@ <command>AT+CPIN=*</command> <response>+CPIN: SIM PUK\n\nERROR</response> <set name="PINNAME" value="SIM PUK"/> + <set name="PINRETRYCOUNT" value="0"/> </chat> </state> |