Библиотека: libike_gost.so (linux), cpike_api.dll (windows)
Функция создания дескриптора IKE сессии фазы 1.
Синтаксис
C/C++ | Copy Code |
---|---|
capi_result CAPI_EXTC p1_CreateFn ( ike_gost_handle h, const vblob **pcVendor_ID_b, CPIKE_AUTH_T am, IKE_ROLE role, CPIKE_ENC_T enc_mac_id, CPIKE_HASH_T hash_id, CPIKE_GTYPE_T gtype_id, CPIKE_GROUP_T group_id, unsigned uFlags, P1_HANDLE *sid ); |
Параметры
- h
- [in] Дескриптор библиотеки IKE
- pcVendor_ID_b
- [in] Массив используемых приложением пространств приватных идентификаторов IKE удаленной стороны обмена (завершается нулевым указателем)
- am
- [in] Метод аутентификации (CPIKE_AUTH_GOST_PSK, CPIKE_AUTH_GOST_SIGNATURE, CPIKE_AUTH_GSS_API)
- role
- [in] Собственная роль: Initiator или Responder
- enc_mac_id
- [in] Согласованный идентификатор алгоритма шифрования и имитозащиты ISAKMP SA
- hash_id
- [in] Согласованный идентификатор алгоритма хеш функции и PRF
- gtype_id
- [in] Согласованный идентификатор типа группы Диффи-Хеллмана фазы 1
- group_id
- [in] Согласованная группа Диффи-Хелмана фазы 1
- uFlags
- [in] Зарезервировано для будущего использования. Должен быть равен 0
- sid
- [out] Дескриптор IKE сессии фазы 1
Возвращаемое значение
При успехе возвращает CAPI_NOERROR и дескриптор новой IKE сессии фазы 1
CAPI_NOERROR Успешное завершение
CAPI_NOFREE_SID_ERROR Нет свободных SID
CAPI_CALL_ERROR Неверная последовательность вызовов
CAPI_CSP_ERROR Ошибка вызова CSP
CAPI_INTERNAL_ERROR Внутренняя ошибка библиотеки
Примечания
Дескриптор IKE сессии фазы 1 освобождается функцией p1_DestroyFn.
Необязательные параметры сессии, которые имеют рекомендованные значения по умолчанию, могут быть изменены функцией p1_SetParamFn.
Сроки действия PSK, закрытых ключей и сертификатов, которые будут использованы для аутентификации, рекомендуется учитывать путём установки параметра CPIKE_AC_Life_Duration.
Функция p1_GetParamFn предназначена для получения действующих параметров сессии.