КриптоПро TLS |
Расшифровывает сообщение, проверяет его целостность и уведомляет о получении запроса на переустановку связи или разрыв соединения.
SECURITY_STATUS DecryptMessage ( PCtxtHandle phContext, PSecBufferDesc pMessage, ULONG MessageSeqNo, PULONG pfQOP );
Функция не может быть вызвана асинхронно (одновременно из разных нитей) над одним и тем же контекстом. Последовательность пакетов существенна для TLS.
Если функция завершается успешно, и другая сторона не запросила изменения состояния соединения (renegotiation или shutdown), то возвращается SEC_E_OK. Иначе функция возвращает одно из следующих значений:
Возвращаемые значения | Описание |
---|---|
SEC_E_INVALID_HANDLE | Параметр phContext содержит недействительный дескриптор контекста. |
SEC_E_INVALID_TOKEN | Параметр pInput содержит неправильные входные данные. |
SEC_E_INCOMPLETE_MESSAGE | Данные во входном буфере неполны. Приложение должно прочитать остальные данные, и повторить вызов. |
SEC_I_RENEGOTIATE | Другая сторона запросила renegotiate. См. заметки. |
SEC_I_CONTEXT_EXPIRED | Другая сторона закрыла соединение. См. заметки. |
Функция возвращает SEC_I_CONTEXT_EXPIRED, когда отправитель завершил соединение. После получения этого сообщения нужно:
Windows NT/2000/XP: Необходимо Windows NT 4.0 SP5 или
старше с Internet Explorer 5.0 или старше.
Windows 98/ME: Необходимо Windows 95 OSR2 или старше с
Internet Explorer 5.0 или старше.
Файл описания: Прототип описан в файле Sspi.h.
AcceptSecurityContext() , InitializeSecurityContext() , DeleteSecurityContext() , EncryptMessage() , SecBuffer() , SecBufferDesc()