Ошибка при создании файла. RuToken S
Здравствуйте, использую библиотеку Winscard, пытаюсь создать EF файл на RuToken S. Сначала выбираю текущим MF файл:
BYTE selectMF[] =
{
/*class*/ 0x00,
/*ins*/ 0xA4,
/*p1*/ 0x00,
/*p2*/ 0x00,
/*data len*/ 0x02,
/*MF low byte*/ 0x00,
/*MF high byte*/ 0x3f
};
SCardTransmit(cardHandle, SCARD_PCI_T0, selectMF, 7, NULL, response, &responseSize);
Команда проходит успешно. Затем пытаюсь создать:
BYTE create[] =
{ 0x0, 0xE0, 0x0, 0x0, 0xE,
0x62, 0xC, /*tlv*/
0x80, 0x2, 0xA, 0x0, /*size*/
0x82, 0x2, 0x1, 0x0, /*descriptor - binary file*/
0x83, 0x2, 0xA0, 0x1F }; /*file id*/
SCardTransmit(cardHandle, SCARD_PCI_T0, create, 19, NULL, response, &responseSize);
В результате в выходном буфере имею первые два байта 6A80, что означает "Parameters in the data portion are incorrect", хотя делаю вроде бы все по документации. Подскажите, в каком месте у меня может быть ошибка? Или просто приведите успешную команду CREATE FILE для EF файла на RuTokenS, а дальше я разберусь. Заранее спасибо