Функция должна обеспечивать освобождение 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);
Значение 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. |
Коды возврата | Описание |
---|---|
TRUE | Освобождение сопроцессора было осуществлено. |
FALSE | Освобождение не было осуществлено. |
CPC_FAST_CODE ,CPC_Kernel_Fpu_Begin_Callback ,CPSetProvParam() ,CPCSetProvParam()