Заголовочный файл: ike_gost.h
Библиотека: libike_gost.so (linux), cpike_api.dll (windows)
Библиотека: libike_gost.so (linux), cpike_api.dll (windows)
Функция инкапсуляции пакетов IKE фазы 2.
Синтаксис
C/C++ | Copy Code |
---|---|
capi_result CAPI_EXTC p2_EncapFn ( P2_HANDLE sid, unsigned uFlags, void *pData, unsigned *puDataLen, unsigned uBufLen ); |
Параметры
- sid
- [in] Дескриптор IKE сессии фазы 2
- uFlags
- [in] Зарезервировано для будущего использования. Должен быть равен 0
- pData
- [in/out] Буфер с данными до/после зашифрования
- puDataLen
- [in/out] Размер данных до/после зашифрования
- uBufLen
- [in] Полный размер буфера с данными
Возвращаемое значение
При успехе возвращает CAPI_NOERROR и размер зашифрованных данных
CAPI_NOERROR Успешное завершение
CAPI_CALL_ERROR Неверный вызов
CAPI_PROTOCOL_ERROR Неверная последовательность вызовов
CAPI_CSP_ERROR Ошибка вызова CSP
CAPI_TTL_BYTES_EXPIRED_ERROR Превышено допустимое количество данных в рамках сессии
CAPI_TTL_SECS_EXPIRED_ERROR Превышено допустимое время жизни сессии
CAPI_NOT_ENOUGH_SPACE Размер буфера недостаточен для инкапсуляции и
CAPI_INTERNAL_ERROR внутренняя ошибка библиотеки
Примечания
Под инкапсуляцией понимается процесс формирования финального зашифрованного пакета для отправки удаленной стороне обмена.
На IKE фазе 1 используется p1_EncapFn.
Precondition:
-
Успешный вызов функции p2_CreateFn