Fixes from regression testing#9938
Merged
JacobBarthelmeh merged 1 commit intowolfSSL:masterfrom Mar 12, 2026
Merged
Conversation
d69f7ad to
e255f34
Compare
Contributor
Author
|
retest this please FIPS Windows: |
e255f34 to
0cc7a7e
Compare
0cc7a7e to
0b8930f
Compare
CRL APIs not usable when NO_ASN_TIME defined. WOLFSSL_TLS13 needs to be defined with HAVE_ECH. When session ticket encrypted with CBC, must be a multiple of block size. Fix test define protection. Fix ML-DSA protection of reduction functions. Need !NO_RSA with WC_RSA_PSS. Connection ID is not a DTLS 1.3 only extension.
0b8930f to
bbd2f6f
Compare
Contributor
Author
|
retest this please |
JacobBarthelmeh
approved these changes
Mar 12, 2026
Contributor
There was a problem hiding this comment.
Pull request overview
Addresses multiple regressions found during test runs by tightening feature guards and fixing build/behavior issues across session tickets, CRL generation, TLS extensions, and PQC code paths.
Changes:
- Adjust preprocessor guards to ensure features/APIs are only compiled when their dependencies are enabled (e.g., CRL generation vs
NO_ASN_TIME, ECH vs TLS 1.3, RSA-PSS vsNO_RSA). - Fix session ticket sizing for CBC-encrypted tickets by rounding internal ticket plaintext size to the AES block size.
- Correct DTLS CID extension availability (not DTLS 1.3-only) and refine tests/build protections for TLS 1.3 and ML-DSA/Dilithium variants.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
wolfssl/internal.h |
Moves TLSX_CONNECTION_ID to be available independently of TLS 1.3 so DTLS CID isn’t treated as DTLS 1.3-only. |
wolfcrypt/src/pkcs7.c |
Ensures RSA-PSS encoding logic is excluded when RSA is disabled. |
wolfcrypt/src/dilithium.c |
Fixes/expands compile-time protection for reduction/mod-reduction helpers used by ML-DSA/Dilithium across small/make-key/verify variants. |
tests/api/test_tls13.c |
Tightens build guards for a TLS 1.3 mismatch test to avoid unsupported SP-math curve configurations. |
tests/api.c |
Gates tests appropriately when NO_SESSION_CACHE/NO_ASN_TIME configurations make APIs unavailable. |
src/internal.c |
Adds unused-parameter suppression for edge builds, fixes ECH cleanup guard, and aligns CBC ticket plaintext size to block boundaries. |
src/crl.c |
Compiles out OpenSSL-extra CRL generation APIs when NO_ASN_TIME is set. |
Comments suppressed due to low confidence (1)
src/crl.c:2336
wolfSSL_X509_CRL_new()(and related CRL generation APIs in this block) are now compiled out whenNO_ASN_TIMEis defined, but the public declarations/macros for these functions still appear to be available underHAVE_CRL && OPENSSL_EXTRAin the headers. This can lead to link-time undefined references for consumers that build withOPENSSL_EXTRA+HAVE_CRL+NO_ASN_TIME. Either update the corresponding header guards to also require!defined(NO_ASN_TIME), or provide#elsestub implementations that returnNOT_COMPILED_IN/BAD_FUNC_ARGso the symbols are always present.
#if defined(OPENSSL_EXTRA) && !defined(NO_ASN_TIME)
/* Create a new empty CRL object for generation.
* Version is set to 2 by default. Use wolfSSL_X509_CRL_set_version() to
* change it.
* lastUpdate set to current time, nextUpdate set to 500 days from now.
* Returns a new CRL or NULL on failure.
*/
WOLFSSL_X509_CRL* wolfSSL_X509_CRL_new(void)
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
CRL APIs not usable when NO_ASN_TIME defined.
WOLFSSL_TLS13 needs to be defined with HAVE_ECH.
When session ticket encrypted with CBC, must be a multiple of block size. Fix test define protection.
Fix ML-DSA protection of reduction functions.
Need !NO_RSA with WC_RSA_PSS.
Connection ID is not a DTLS 1.3 only extension.
Testing
Regression testing.