From 5e7cff71fd26064760a10236a9c6a2ec6d41c6b2 Mon Sep 17 00:00:00 2001 From: Anthony Hu Date: Mon, 15 Aug 2022 11:39:59 -0400 Subject: [PATCH 1/2] Initialize the Enc memberss of CertName struct. Tested by reproducing the problem in an example and confirming fix makes problem go away. --- wolfcrypt/src/asn.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/wolfcrypt/src/asn.c b/wolfcrypt/src/asn.c index ca25681f8..703e31c3a 100644 --- a/wolfcrypt/src/asn.c +++ b/wolfcrypt/src/asn.c @@ -23699,19 +23699,49 @@ int wc_InitCert_ex(Cert* cert, void* heap, int devId) cert->issuer.countryEnc = CTC_PRINTABLE; cert->issuer.stateEnc = CTC_UTF8; + cert->issuer.streetEnc = CTC_UTF8; cert->issuer.localityEnc = CTC_UTF8; cert->issuer.surEnc = CTC_UTF8; +#ifdef WOLFSSL_CERT_NAME_ALL + cert->issuer.givenNameEnc = CTC_UTF8; + cert->issuer.initialsEnc = CTC_UTF8; + cert->issuer.dnQualifierEnc = CTC_UTF8; + cert->issuer.dnNameEnc = CTC_UTF8; +#endif cert->issuer.orgEnc = CTC_UTF8; cert->issuer.unitEnc = CTC_UTF8; cert->issuer.commonNameEnc = CTC_UTF8; + cert->issuer.serialDevEnc = CTC_PRINTABLE; + cert->issuer.userIdEnc = CTC_UTF8; + cert->issuer.postalCodeEnc = CTC_UTF8; +#ifdef WOLFSSL_CERT_EXT + cert->issuer.busCatEnc = CTC_UTF8; + cert->issuer.joiCEnc = CTC_UTF8; + cert->issuer.joiStEnc = CTC_UTF8; +#endif cert->subject.countryEnc = CTC_PRINTABLE; cert->subject.stateEnc = CTC_UTF8; + cert->subject.streetEnc = CTC_UTF8; cert->subject.localityEnc = CTC_UTF8; cert->subject.surEnc = CTC_UTF8; +#ifdef WOLFSSL_CERT_NAME_ALL + cert->subject.givenNameEnc = CTC_UTF8; + cert->subject.initialsEnc = CTC_UTF8; + cert->subject.dnQualifierEnc = CTC_UTF8; + cert->subject.dnNameEnc = CTC_UTF8; +#endif cert->subject.orgEnc = CTC_UTF8; cert->subject.unitEnc = CTC_UTF8; cert->subject.commonNameEnc = CTC_UTF8; + cert->subject.serialDevEnc = CTC_PRINTABLE; + cert->subject.userIdEnc = CTC_UTF8; + cert->subject.postalCodeEnc = CTC_UTF8; +#ifdef WOLFSSL_CERT_EXT + cert->subject.busCatEnc = CTC_UTF8; + cert->subject.joiCEnc = CTC_UTF8; + cert->subject.joiStEnc = CTC_UTF8; +#endif #ifdef WOLFSSL_MULTI_ATTRIB for (i = 0; i < CTC_MAX_ATTRIB; i++) { From 52ed047a447c7238c0214df3290b732a8643e26f Mon Sep 17 00:00:00 2001 From: Anthony Hu Date: Mon, 15 Aug 2022 12:13:05 -0400 Subject: [PATCH 2/2] Fix a mismatched decl and impl --- wolfcrypt/src/ge_low_mem.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wolfcrypt/src/ge_low_mem.c b/wolfcrypt/src/ge_low_mem.c index 34ac45e46..2076afce6 100644 --- a/wolfcrypt/src/ge_low_mem.c +++ b/wolfcrypt/src/ge_low_mem.c @@ -176,7 +176,7 @@ static void barrett_reduce(word32* r, word32 x[64]) } -void sc_reduce(unsigned char x[64]) +void sc_reduce(unsigned char *x) { int i; word32 t[64];