Add cert/CRL capabilities: skid, akid, dist point, netscape#9713
Open
padelsbach wants to merge 1 commit intowolfSSL:masterfrom
Open
Add cert/CRL capabilities: skid, akid, dist point, netscape#9713padelsbach wants to merge 1 commit intowolfSSL:masterfrom
padelsbach wants to merge 1 commit intowolfSSL:masterfrom
Conversation
edbaa04 to
ce8d86b
Compare
0dc4e71 to
3d24d5e
Compare
Contributor
Author
|
jenkins retest this please |
3d24d5e to
eb909d5
Compare
Contributor
There was a problem hiding this comment.
Pull request overview
This PR extends wolfSSL’s X.509 and CRL feature set (follow-up to PR 9631) by adding certificate extension setters (SKID/AKID, Netscape cert type, CRL distribution points) and CRL generation/encoding APIs with OpenSSL-compat surface area, plus new tests and an OpenSSL-based verification script.
Changes:
- Add new public APIs for setting X.509 extensions (SKID/AKID, Netscape cert type) and CRL Distribution Points, plus additional OpenSSL-compat CRL setters/encoders.
- Implement CRL generation/signing helpers in wolfCrypt and add CRL encode/store helpers in the CRL subsystem.
- Add/expand unit tests and a scripts-based OpenSSL validation flow; update distributed cert fixtures and ignore generated CRLs.
Reviewed changes
Copilot reviewed 21 out of 24 changed files in this pull request and generated 10 comments.
Show a summary per file
| File | Description |
|---|---|
src/x509.c |
Implements new X509 extension setters, CRL DER encoder, CRL dist point helper, and CRL setter APIs. |
src/crl.c |
Adds CRL buffer/file storing and CRL generation APIs (new/encode/sign/add revoked). |
wolfcrypt/src/asn.c |
Adds low-level CRL TBS builder and signing routine (wc_MakeCRL_ex, wc_SignCRL_ex). |
wolfssl/ssl.h |
Exposes new public API declarations for the added X509/CRL functionality. |
wolfssl/openssl/ssl.h |
Adds OpenSSL macro mappings for the new APIs. |
tests/api.c |
Adds tests for new extension setters and CRL encode/sign flows. |
scripts/crl-gen-openssl.test |
Validates generated CRLs using OpenSSL for structure/signature/revocation behavior. |
certs/* + certs/renewcerts.sh |
Adds new cert fixtures and updates renewal script to generate them. |
wolfssl/wolfio.h |
Adds Linux kernel module inet_pton wrapper mapping for IP alt-name parsing. |
src/ssl_asn1.c, src/pk.c, src/ssl.c, wolfcrypt/src/evp.c, wolfssl/internal.h |
Adjusts feature guards to include OPENSSL_EXTRA_X509_SMALL and related build configurations. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
2b6b2c4 to
7f6a433
Compare
7f6a433 to
aafc876
Compare
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
Follow up to PR 9631 which must be merged first.
Testing
How did you test?
Checklist