Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Deck of Cards
id001
Card
defaulttrue
labelC
Code Block
languagecpp
int  GcaPI_Read(	
  HANDLE hGrd,
  DWORD dwItemNum,
  DWORD dwAddr,
  DWORD dwLng,
  void *pData,
  DWORD dwReadPsw,
  void *pReserved
);	
Expand
titleПараметры функции

hGrd

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

dwItemNum

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

dwAddr

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

dwLng

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

pData

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

dwReadPsw

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

pReserved

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

Expand
titleВозвращаемое значение функции

pData

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

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

GrdE_NoService

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

GrdE_InactiveItem

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

GrdE_Overbound

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

 

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

Expand
titleОписание

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

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

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

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

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

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

...