КриптоПро SSPI  

ImportSecurityContext

Функция CPImportSecurityContext() импортирует контекст или сессию из буфера.

SECURITY_STATUS ImportSecurityContext(
  SEC_CHAR SEC_FAR * pszPackage,
  PSecBuffer pPackedContext,
  void SEC_FAR * pToken,
  PCtxtHandle phContext
);

Примечания

Для Windows - систем функция является заглушкой и возвращает SEC_E_UNSUPPORTED_FUNCTION

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

Если буфер содержит экспортированный контекст уровня ядра, то ищется контекст пользователя, из которого он был экспортирован, данный контекст обновляется и возвращается.

Если буфер содержит эспортированную сессию, то в кэше сессий ищется указанная сессия, и в отсутствие таковой она импортируется из буфера. Далее на этой сессии создается контекст и возвращается пользователю.

Аргументы

pszPackage
[in] не используется и устанавливается в NULL
pPackedContext
[in] указатель на структуру SecBuffer World Wide Web link , в которой записана эспортированная сессия или экспортированный контекст.
pToken
[in] туда передается информация (структура utlsdb_token ) о закрытом ключе пользовательского процесса и открытом ключе получателя (модуля ядра или узла кластера), необходимая для создания ключа обмена
phContext
[out] контекст TLS, полученный в результате выполнения

Требования:

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.

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

В случае успеха возвращает STATUS_SUCCESS
Коды возвратаОписание
STATUS_INTERNAL_ERRORпроизошла ошибка импорта