mirror of
https://gitea.osmocom.org/sim-card/pysim.git
synced 2026-03-25 14:58:33 +03:00
transport: Add support for SW 6Cxx
According to ETSI TS 102 221 Section 7.2.2.3.1 Table 7.1 the UICC may respond with SW 6Cxx to tell us to re-issue the command with a modified P3/Le. Change-Id: Ia7e6202bbd0f61034a985ecf76d0542d959922ce
This commit is contained in:
@@ -109,11 +109,16 @@ class LinkBase(abc.ABC):
|
|||||||
# available. There are two SWs commonly used for this 9fxx (sim) and 61xx (usim), where
|
# available. There are two SWs commonly used for this 9fxx (sim) and 61xx (usim), where
|
||||||
# xx is the number of response bytes available.
|
# xx is the number of response bytes available.
|
||||||
# See also:
|
# See also:
|
||||||
# SW1=9F: 3GPP TS 51.011 9.4.1, Responses to commands which are correctly executed
|
if (sw is not None):
|
||||||
# SW1=61: ISO/IEC 7816-4, Table 5 — General meaning of the interindustry values of SW1-SW2
|
if ((sw[0:2] == '9f') or (sw[0:2] == '61')):
|
||||||
if (sw is not None) and ((sw[0:2] == '9f') or (sw[0:2] == '61')):
|
# SW1=9F: 3GPP TS 51.011 9.4.1, Responses to commands which are correctly executed
|
||||||
pdu_gr = pdu[0:2] + 'c00000' + sw[2:4]
|
# SW1=61: ISO/IEC 7816-4, Table 5 — General meaning of the interindustry values of SW1-SW2
|
||||||
data, sw = self.send_apdu_raw(pdu_gr)
|
pdu_gr = pdu[0:2] + 'c00000' + sw[2:4]
|
||||||
|
data, sw = self.send_apdu_raw(pdu_gr)
|
||||||
|
if sw[0:2] == '6c':
|
||||||
|
# SW1=6C: ETSI TS 102 221 Table 7.1: Procedure byte coding
|
||||||
|
pdu_gr = pdu[0:8] + sw[2:4]
|
||||||
|
data,sw = self.send_apdu_raw(pdu_gr)
|
||||||
|
|
||||||
return data, sw
|
return data, sw
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user