Skip to content

(d)tls13: implement session export feature - #11095

Draft
rizlik wants to merge 1 commit into
wolfSSL:masterfrom
rizlik:dtls13_export
Draft

(d)tls13: implement session export feature#11095
rizlik wants to merge 1 commit into
wolfSSL:masterfrom
rizlik:dtls13_export

Conversation

@rizlik

@rizlik rizlik commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Description

WIP

@rizlik rizlik self-assigned this Aug 6, 2026
Copilot AI lite review requested due to automatic review settings August 6, 2026 13:17

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Implements session export/import support for TLS 1.3 and DTLS 1.3 by extending the serialized session format (new v7 chunks for TLS 1.3 traffic secrets / KeyUpdate state and DTLS 1.3 record-layer state), wiring DTLS export callbacks into the TLS 1.3 server accept path, and adding extensive API tests and CI coverage for round-trip, negative, and interoperability scenarios (including pre-v7 compatibility).

Changes:

  • Bump session export format to version 7 and add serialized state chunks for (D)TLS 1.3.
  • Add TLS 1.3 / DTLS 1.3 export/import test coverage (round-trip, KeyUpdate, replay window, negative cases, v6 compatibility).
  • Add CI config job for --enable-sessionexport=nopeer with DTLS 1.3 enabled.

Reviewed changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
wolfssl/internal.h Updates export format constants, adds TLS13/DTLS13 chunk sizes, bumps export version to 7.
src/internal.c Adds export/import of TLS 1.3 secrets/KeyUpdate state and DTLS 1.3 record-layer state; adds DTLS 1.3 export readiness guards.
src/tls13.c Invokes DTLS export callback after DTLS 1.3 handshake completion (TLS 1.3 accept path).
tests/api/test_tls13.h Registers new TLS 1.3 session export/import tests.
tests/api/test_tls13.c Adds canned v6 import coverage and TLS 1.3 export/import + KeyUpdate tests.
tests/api/test_dtls13.h Registers a new DTLS 1.3 session export/import test suite (macro list).
tests/api/test_dtls13.c Adds DTLS 1.3 export/import round-trip, KeyUpdate, replay-window, negative, and callback tests.
tests/api/test_dtls.h Registers additional DTLS session export/import compatibility tests.
tests/api/test_dtls.c Adds canned v6 DTLS 1.2 import and DTLS 1.3 rejection of pre-v7 blobs tests.
doc/dox_comments/header_files/ssl.h Documents new export/import behaviors and error returns for (D)TLS 1.3.
.github/configs/os-check-linux.json Adds a CI configuration for --enable-sessionexport=nopeer with DTLS 1.3.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread tests/api/test_dtls13.h
Comment on lines +100 to +103
TEST_DECL_GROUP("dtls13", test_dtls13_export_guards), \
TEST_DECL_GROUP("dtls13", test_dtls13_export_import_roundtrip), \
TEST_DECL_GROUP("dtls13", test_dtls13_import_negative), \
TEST_DECL_GROUP("dtls13", test_dtls13_export_import_keyupdate), \
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