You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Функция GcaPI_Read позволяет считывать данные защищенной ячейки или определителя алгоритма.

 

C
int GcaPI_Read(
HANDLE hGrd,
DWORD dwItemNum,
DWORD dwAddr,
DWORD dwLng,
void *pData,
DWORD dwReadPsw,
void *pReserved
);

C#

Visual Basic

Visual C++

hGrd

не используется

dwItemNum

номер защищенной ячейки/алгоритма из которой будет производиться чтение

dwAddr

смещение в определителе защищенной ячейки/алгоритма, начиная с которого будет производиться чтение

dwLng

длина блока данных, которые должны быть прочитаны

pData

указатель на буфер для прочитанных данных

dwReadPsw

зарезервировано

pReserved

зарезервировано. Параметр должен быть равен NULL

pData

буфер, содержащий прочитанные данные

Возможные ошибки

GrdE_NoService

для данного типа ячейки не предусмотрена операция чтения

GrdE_InactiveItem

ячейка в деактивированном состоянии, чтение выполнить невозможно

GrdE_Overbound

адрес для чтения выходит за пределы дескриптора

 

Стандартный набор ошибок

Функция GcaPI_Read позволяет читать определитель аппаратного алгоритма или данные защищенной ячейки (rs_K[]).

Чтение из ячейки можно производить в том случае, когда она находится в активном состоянии.

Если алгоритм или ячейка находятся в активном состоянии (Active), функция возвращает GrdE_OK и в буфер pData считывается dwLng байт, начиная со смещения в определителе ячейки dwAddr.

Если смещение dwAddr задано слишком большим (больше размера определителя), возвращается ошибка GrdE_Overbound.

Если сумма dwAddr+dwLng выходит за доступные для чтения пределы, данных считывается ровно столько, сколько можно считать. При этом функция возвращает GrdE_OK и никаких других кодов ошибки не генерируется.

Функции GcaPI_Read и GcaPI_Update игнорируют пароль для доступа к ячейке и счетчик ошибок ввода пароля.

См. директорию:

"%Program Files%\Guardant\Guardant 6\%PublicCode%\Samples\ARM\"

  • No labels