КриптоПро SSPI  

QueryContextAttributes

Функция QueryContextAttributes() возвращает информацию о свойствах данного контекста.

SECURITY_STATUS QueryContextAttributes(
  PCtxtHandle phContext,
  ULONG ulAttribute,
  PVOID pBuffer
);

Аргументы

phContext
[in] Дескриптор интересующего контекста.
ulAttribute
[in] Указывает, какой атрибут запрашивается. Допустимые атрибуты перечислены в следующей таблице:
Значение Возвращаемая информация Тип структуры pBuffer
SECPKG_ATTR_CONNECTION_INFO Протокол и используемые криптографические алгоритмы. SecPkgContext_ConnectionInfo
SECPKG_ATTR_CIPHER_INFO Информация об используемых сюитах и криптографических алгоритмах. SecPkgContext_CipherInfo
SECPKG_ATTR_ISSUER_LIST_EX Список доверенных центров сертификации. SecPkgContext_IssuerListInfoEx
SECPKG_ATTR_LIFESPAN Время истечения соединения. Время возвращается в UTC. SecPkgContext_Lifespan
SECPKG_ATTR_NAMES Subject из сертификата удаленной стороны. SecPkgContext_Names
SECPKG_ATTR_REMOTE_CERT_CONTEXT Сертификат удаленной стороны. CERT_CONTEXT. См. заметки.
SECPKG_ATTR_STREAM_SIZES Размеры буферов для заголовка, блока данных и трейлера при шифровании. SecPkgContext_StreamSizes
SECPKG_ATTR_APPLICATION_PROTOCOL Согласованный протокол уровня приложения SecPkgContext_ApplicationProtocol

pBuffer
[in/out] Указатель на структуру, куда будет помещен атрибут. Тип структуры зависит от параметра ulAttribute. См. Заметки.

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

При успешном завершении функция возвращает SEC_E_OK.

В противном случае функция возвращает ненулевой код ошибки.

Примечания

Память для структуры, указанной в pBuffer, отводит приложение, а память для динамических элементов этой структуры отводит SSP, и ее необходимо освободить с помощью FreeContextBuffer.

Аттрибут SECPKG_ATTR_REMOTE_CERT_CONTEXT возвращает структуру CERT_CONTEXT. Ее необходимо освободить с помощью CertFreeCertificateContext.

Требования:

AIX: 5.3 или выше.
FreeBSD: 7 или выше.
Linux: LSB 3.1 (RHEL 4, SuSE 10) или выше.
Solaris: 10 или выше.
Windows 2000 или выше: Необходимо Windows 2000 SP4 или старше с Internet Explorer 6.0 или старше.
Файл описания: Прототип описан в файле sspi.h для Windows и CSP_Sspi.h, CSP_SChannel.h, CpSSP.h для Unix.