Skip to content

Conversation

@windowsair
Copy link
Contributor

#91
That’s only part of it. Besides, we need to handle the SEC_I_RENEGOTIATE situation.

See: https://learn.microsoft.com/en-us/windows/win32/secauthn/recognizing-a-request-to-renegotiate-a-connection

I’m not sure when I’ll be able to finish them.

When the client handshake output buffer has data, it needs to be
sent. Otherwise, the handshake will fail, especially for TLSv1.3 .
If SEC_I_RENEGOTIATE is received when using TLS1.3:

Prepare OutSecBuff and InSecBuff and pass the received data to
InitializeSecurityContext.

- If SEC_E_OK and there is no SECBUFFER_EXTRA buffer in OutSecBuff,
receive the next packet and call Decryptmessage.

- If SEC_E_OK and OutSecBuff has a SECBUFFER_EXTRA buffer, pass the
SECBUFFER_EXTRA buffer to Decryptmessage.

[1]: https://learn.microsoft.com/en-us/windows/win32/secauthn/renegotiating-an-schannel-connection
[2]: https://learn.microsoft.com/en-us/answers/questions/1375213/how-to-handle-a-sec-i-renegotiate-received-in-tls
@laudrup
Copy link
Owner

laudrup commented Jul 30, 2025

@windowsair I'm sorry, I had completely forgotten about this.

Would you say this is ready to be merged?

Then I'll do so and make a new release.

@windowsair
Copy link
Contributor Author

@laudrup Yes, it's ready for review. Sorry, I've been too busy recently and haven't done much testing.

@laudrup
Copy link
Owner

laudrup commented Jul 31, 2025

@windowsair
Looks good. Thanks a lot for you help with this and for your efforts in supporting this project in general.

@laudrup laudrup merged commit 87a6cbf into laudrup:master Jul 31, 2025
114 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants