Merge pull request #8960 from ribes96/certwrite-custext

When creating a Cert from a WOLFSSL_X509, account for custom extensions
This commit is contained in:
David Garske
2025-07-09 16:13:07 -07:00
committed by GitHub

View File

@@ -10737,6 +10737,26 @@ static int CertFromX509(Cert* cert, WOLFSSL_X509* x509)
cert->altSigValLen = x509->altSigValLen;
cert->altSigValCrit = x509->altSigValCrit;
#endif /* WOLFSSL_DUAL_ALG_CERTS */
#if defined(WOLFSSL_ASN_TEMPLATE) && defined(WOLFSSL_CUSTOM_OID) && \
defined(HAVE_OID_ENCODING)
if ((x509->customExtCount < 0) ||
(x509->customExtCount >= NUM_CUSTOM_EXT)) {
WOLFSSL_MSG("Bad value for customExtCount.");
return WOLFSSL_FAILURE;
}
for (i = 0; i < x509->customExtCount; i++) {
if (wc_SetCustomExtension(cert, x509->custom_exts[i].crit,
x509->custom_exts[i].oid, x509->custom_exts[i].val,
x509->custom_exts[i].valSz))
{
return WOLFSSL_FAILURE;
}
}
#endif /* WOLFSSL_ASN_TEMPLATE && WOLFSSL_CUSTOM_OID && HAVE_OID_ENCODING */
#endif /* WOLFSSL_CERT_EXT */
#ifdef WOLFSSL_CERT_REQ