Функция CertCreateCTLContext (wincrypt.h)
Функция CertCreateCTLContext создает контекст списка доверия сертификатов (CTL) из закодированного CTL. Созданный контекст не сохраняется в хранилище сертификатов. Функция создает копию закодированного CTL в созданном контексте.
Синтаксис
PCCTL_CONTEXT CertCreateCTLContext(
[in] DWORD dwMsgAndCertEncodingType,
[in] const BYTE *pbCtlEncoded,
[in] DWORD cbCtlEncoded
);
Параметры
[in] dwMsgAndCertEncodingType
Указывает тип используемой кодировки. Типы кодирования сертификатов и сообщений должны быть указаны путем объединения их с побитовой операцией ИЛИ, как показано в следующем примере:
X509_ASN_ENCODING | PKCS_7_ASN_ENCODING в настоящее время определены следующие типы кодирования:
- X509_ASN_ENCODING
- PKCS_7_ASN_ENCODING
[in] pbCtlEncoded
Указатель на буфер, содержащий закодированный CTL, из которого создается контекст.
[in] cbCtlEncoded
Размер буфера pbCtlEncoded (в байтах ).
Возвращаемое значение
Если функция выполняется успешно, возвращаемое значение является указателем на CTL_CONTEXT только для чтения.
Если функция завершается сбоем и ей не удается декодировать и создать CTL_CONTEXT, возвращаемое значение равно NULL. Чтобы получить дополнительные сведения об ошибке, вызовите Метод GetLastError. В следующей таблице показан возможный код ошибки.
Код возврата | Описание |
---|---|
|
Недопустимый тип кодирования сертификата. Поддерживаются только PKCS_7_ASN_ENCODING и X509_ASN_ENCODING. |
В случае сбоя функции GetLastError может вернуть ошибку кодирования и декодирования абстрактного синтаксиса (ASN.1). Сведения об этих ошибках см. в разделе Кодирование и декодирование возвращаемых значений ASN.1.
Комментарии
CTL_CONTEXT необходимо освободить, вызвав CertFreeCTLContext. Для создания дубликата можно вызвать CertDuplicateCTLContext. CertSetCTLContextProperty и CertGetCTLContextProperty можно вызывать для хранения и чтения свойств для CTL.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2003 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | wincrypt.h |
Библиотека | Crypt32.lib |
DLL | Crypt32.dll |