-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Session resumption not working when Connection ID is used #5872
Comments
@Thibautartis thank you for your bug report! Indeed, adding resumption to a passing CID test in
Our test programs and environment are different from what @Thibautartis has and it would be best to validate the fix with them once it is ready. |
In case of a session resumption the transforms were being populated before extension parsing, which resulted in the client rejecting a server hello that contained a connection ID. |
Investigating other extensions revealed one pre-existing example program bug, but no other problems with extensions and session resumption:
|
Summary
I have recently implemented the connection ID in a multi threaded DTLS server which already had session resumption. Though when trying to accomplish a session resumption with connection ID enabled it seems the client does not properly process the CID sent by the server and thus, does not send any Connection ID record with the last flight, making the server reject the handshake
System information
Mbed TLS version (number or commit id): v3.0.0
Operating system and version: Linux manjaro 5.10.114-1-MANJARO
Configuration (if not default, please attach
mbedtls_config.h
): resumption_fail.zipCompiler and options (if you used a pre-built binary, please indicate how you obtained it): GCC
Expected behavior
The client should transmit a Connection ID record embedding the CID received from the server, allowing the server to finish processing the session resumption
Actual behavior
The client does not transmit any Connection ID record to the server after having received the ServerHello, the server thus does not manage to parse the connection ID and drops the session resumption as a consequence
Steps to reproduce
Attempt a session resumption with connection ID enabled
Additional information
I have attached debug logs from the client and server I use and the PCAP file corresponding to the logs
The text was updated successfully, but these errors were encountered: