КриптоПро CSP  

CPC_Kernel_Fpu_End_Callback

Описание функции освобождения FPU в режиме ядра ОС.

Функция должна обеспечивать освобождение FPU (восстанавливая значения регистров MMX (ST) и XMM ). Ей передаются буфер для сохранения регистров, его размер, тип функции, использовавшей в провайдере дополнительные регистры, и осуществившей вызов парной функции CPC_Kernel_Fpu_Begin_Callback .

typedef BOOL CPCAPI CPC_Kernel_Fpu_End_Callback(BYTE *buf,CPC_SIZE_T sz,DWORD op_type);

Аргументы

buf
[in] Буфер, предоставляемый провайдером для сохранения дополнительных регистров. В нем должна была сохранить состояние сопроцессора функция CPC_Kernel_Fpu_Begin_Callback .
sz
[in] Размер буфера, переданного провайдером для сохранения дополнительных регистров.
op_type
[in] Тип функции, запросившей сохранение регистров. Тип может быть одним из четырех:
Значение op_type Тип функции
CSP_OPERATION_CIPHER1 Нераспараллеливаемые функции шифрования по ГОСТ 28147-89 и ГОСТ Р 34.12–2015 (Магма, Кузнечик).
CSP_OPERATION_CIPHER2 Распараллеливаемые функции шифрования по ГОСТ 28147-89 и ГОСТ Р 34.12–2015 (Магма, Кузнечик).
CSP_OPERATION_IMIT Функции выработки имитовставки по ГОСТ 28147-89 и ГОСТ Р 34.12–2015 (Магма, Кузнечик).
CSP_OPERATION_HASH Функции хэширования по ГОСТ Р 34.11-94 и ГОСТ Р 34.11-2012.

Возвращаемые значения

результат освобождения сопроцессора FPU.
Коды возвратаОписание
TRUEОсвобождение сопроцессора было осуществлено.
FALSEОсвобождение не было осуществлено.

См. также

CPC_FAST_CODE ,CPC_Kernel_Fpu_Begin_Callback ,CPSetProvParam() ,CPCSetProvParam()