Skip to content

Add cert/CRL capabilities: skid, akid, dist point, netscape#9713

Open
padelsbach wants to merge 1 commit intowolfSSL:masterfrom
padelsbach:crl-generation-cert-updates
Open

Add cert/CRL capabilities: skid, akid, dist point, netscape#9713
padelsbach wants to merge 1 commit intowolfSSL:masterfrom
padelsbach:crl-generation-cert-updates

Conversation

@padelsbach
Copy link
Contributor

@padelsbach padelsbach commented Jan 24, 2026

Description

Follow up to PR 9631 which must be merged first.

Testing

How did you test?

Checklist

  • added tests
  • updated/added doxygen
  • updated appropriate READMEs
  • Updated manual and documentation

@padelsbach padelsbach force-pushed the crl-generation-cert-updates branch 6 times, most recently from edbaa04 to ce8d86b Compare January 31, 2026 15:29
@padelsbach padelsbach force-pushed the crl-generation-cert-updates branch 3 times, most recently from 0dc4e71 to 3d24d5e Compare February 5, 2026 21:07
@padelsbach
Copy link
Contributor Author

padelsbach commented Feb 6, 2026

jenkins retest this please

@padelsbach padelsbach force-pushed the crl-generation-cert-updates branch from 3d24d5e to eb909d5 Compare February 7, 2026 01:07
@padelsbach padelsbach assigned cconlon and unassigned padelsbach Feb 9, 2026
@cconlon cconlon requested a review from Copilot February 9, 2026 22:19
@padelsbach padelsbach marked this pull request as ready for review February 9, 2026 22:20
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

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.

@padelsbach padelsbach assigned padelsbach and unassigned cconlon Feb 9, 2026
@padelsbach padelsbach force-pushed the crl-generation-cert-updates branch 7 times, most recently from 2b6b2c4 to 7f6a433 Compare February 13, 2026 23:54
@padelsbach padelsbach force-pushed the crl-generation-cert-updates branch from 7f6a433 to aafc876 Compare February 14, 2026 04:38
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