| Предыдущий | Следующий |
| SEC_I_INCOMPLETE_CREDENTIALS | SEC_I_NO_LSA_CONTEXT |
SEC_I_RENEGOTIATE
Что означает SEC_I_RENEGOTIATE
SEC_I_RENEGOTIATE (0x00090321) — Защищённое соединение требует повторного согласования контекст безопасности с другой стороной.
Это информационный статус подсистемы безопасности, поэтому его нельзя обрабатывать как обычную ошибку HRESULT. Он сообщает, что текущий шаг имеет специальное продолжение; вызывающий код должен следовать контракту SSPI/Schannel и сохранить состояние текущего контекста.
Schannel может вернуть этот статус из DecryptMessage, когда peer инициировал renegotiation. После этого требуется снова пройти InitializeSecurityContext/AcceptSecurityContext с сохранением необработанных входных байтов.
Что проверить
- Сохраните необработанные bytes, возвращённые вместе со статусом DecryptMessage, и передайте их в новый handshake цикл.
- Повторно вызовите InitializeSecurityContext/AcceptSecurityContext согласно Schannel renegotiation contract.
- Проверьте, кто инициировал renegotiation и не запрещена ли она policy/protocol version приложения.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.