PCSC: Accept 0x67 (Wrong length) as a response to READ RECORD
It looks like some USIM cards respond with 0x67 (Wrong length) instead of 0x6c to 00 b2 01 04 ff. This was getting rejected in scard_get_record_len(). ETSI TS 102 221 is not very clear on this detail, but it looks fine to accept the 0x67 error value, too, to learn the record length. Signed-hostap: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
90b8fc8f4e
commit
f2fe5b3663
1 changed files with 1 additions and 1 deletions
|
@ -812,7 +812,7 @@ static int scard_get_record_len(struct scard_data *scard, unsigned char recnum,
|
|||
wpa_hexdump(MSG_DEBUG, "SCARD: file length determination response",
|
||||
buf, blen);
|
||||
|
||||
if (blen < 2 || buf[0] != 0x6c) {
|
||||
if (blen < 2 || (buf[0] != 0x6c && buf[0] != 0x67)) {
|
||||
wpa_printf(MSG_DEBUG, "SCARD: unexpected response to file "
|
||||
"length determination");
|
||||
return -1;
|
||||
|
|
Loading…
Reference in a new issue