SCARD: Fix GSM authentication on USIM
scard_gsm_auth() used SIM_CMD_GET_RESPONSE for both SIM and USIM. Convert
the command into USIM_CMD_GET_RESPONSE for USIM.
Since commit eb32460029
("Fix switching from EAP-SIM to EAP-AKA/AKA'")
EAP-SIM is using the USIM if available. This triggers a probably ancient
bug in scard_gsm_auth(), which results in sending the wrong get response
command to the USIM. Thus, EAP-SIM stopped to work after this change on
USIMs that expect the proper command.
Signed-off-by: Simon Baatz <gmbnomis@gmail.com>
This commit is contained in:
parent
d352c407e3
commit
c70c37500b
1 changed files with 1 additions and 0 deletions
|
@ -1237,6 +1237,7 @@ int scard_gsm_auth(struct scard_data *scard, const unsigned char *_rand,
|
||||||
cmd[4] = 17;
|
cmd[4] = 17;
|
||||||
cmd[5] = 16;
|
cmd[5] = 16;
|
||||||
os_memcpy(cmd + 6, _rand, 16);
|
os_memcpy(cmd + 6, _rand, 16);
|
||||||
|
get_resp[0] = USIM_CLA;
|
||||||
}
|
}
|
||||||
len = sizeof(resp);
|
len = sizeof(resp);
|
||||||
ret = scard_transmit(scard, cmd, cmdlen, resp, &len);
|
ret = scard_transmit(scard, cmd, cmdlen, resp, &len);
|
||||||
|
|
Loading…
Reference in a new issue