diff --git a/src/ssl.c b/src/ssl.c index 8c50069d6..d368e5969 100644 --- a/src/ssl.c +++ b/src/ssl.c @@ -30203,6 +30203,8 @@ void* wolfSSL_GetDhAgreeCtx(WOLFSSL* ssl) return NULL; } obj->dynamic |= WOLFSSL_ASN1_DYNAMIC_DATA ; + } else { + obj->dynamic &= ~WOLFSSL_ASN1_DYNAMIC_DATA ; } XMEMCPY(obj->obj, objBuf, obj->objSz); diff --git a/tests/api.c b/tests/api.c index 3a02abb8c..d99710aeb 100644 --- a/tests/api.c +++ b/tests/api.c @@ -18565,8 +18565,9 @@ static void test_wolfSSL_OBJ(void) AssertTrue((nid = OBJ_obj2nid(asn1Name)) > 0); } BIO_free(bio); - X509_free(x509); ASN1_OBJECT_free(asn1Name); + X509_free(x509); + } for (i = 0; p12_f[i] != NULL; i++) @@ -18586,8 +18587,8 @@ static void test_wolfSSL_OBJ(void) AssertTrue((nid = OBJ_obj2nid(asn1Name)) > 0); } BIO_free(bio); - X509_free(x509); ASN1_OBJECT_free(asn1Name); + X509_free(x509); } printf(resultFmt, passed); diff --git a/wolfcrypt/src/asn.c b/wolfcrypt/src/asn.c index 16efd701f..dd609b599 100644 --- a/wolfcrypt/src/asn.c +++ b/wolfcrypt/src/asn.c @@ -104,7 +104,7 @@ ASN Options: #include #endif -#ifdef OPENSSL_EXTRA +#if defined(OPENSSL_EXTRA) || defined(OPENSSL_ALL) || defined(OPENSSL_EXTRA_X509_SMALL) #include /* for OBJ_sn2nid */ #endif @@ -4090,10 +4090,10 @@ WOLFSSL_LOCAL int OBJ_sn2nid(const char *sn) {WOLFSSL_COMMON_NAME, NID_commonName}, {WOLFSSL_COUNTRY_NAME, NID_countryName}, {WOLFSSL_LOCALITY_NAME, NID_localityName}, - {"/ST", NID_stateOrProvinceName}, + {WOLFSSL_STATE_NAME, NID_stateOrProvinceName}, {WOLFSSL_ORG_NAME, NID_organizationName}, {WOLFSSL_ORGUNIT_NAME, NID_organizationalUnitName}, - {"/emailAddress", NID_emailAddress}, + {WOLFSSL_EMAIL_ADDR, NID_emailAddress}, {NULL, -1}}; int i; diff --git a/wolfssl/openssl/ssl.h b/wolfssl/openssl/ssl.h index 3242513ec..7728dba47 100644 --- a/wolfssl/openssl/ssl.h +++ b/wolfssl/openssl/ssl.h @@ -587,6 +587,7 @@ typedef WOLFSSL_X509_STORE_CTX X509_STORE_CTX; /* NIDs */ enum { + NID_undef = 0, NID_des = 66, NID_des3 = 67, NID_sha256 = 672, diff --git a/wolfssl/ssl.h b/wolfssl/ssl.h index 25f304597..dad04b61f 100644 --- a/wolfssl/ssl.h +++ b/wolfssl/ssl.h @@ -1177,8 +1177,6 @@ enum { BIO_CLOSE = 1, BIO_NOCLOSE = 0, - NID_undef = 0, - X509_FILETYPE_PEM = 8, X509_LU_X509 = 9, X509_LU_CRL = 12, diff --git a/wolfssl/wolfcrypt/asn.h b/wolfssl/wolfcrypt/asn.h index c6594b57a..5ab2f84e8 100644 --- a/wolfssl/wolfcrypt/asn.h +++ b/wolfssl/wolfcrypt/asn.h @@ -137,6 +137,7 @@ enum DN_Tags { #define WOLFSSL_BUS_CAT "/businessCategory=" #define WOLFSSL_JOI_C "/jurisdictionC=" #define WOLFSSL_JOI_ST "/jurisdictionST=" +#define WOLFSSL_EMAIL_ADDR "/emailAddress=" enum ECC_TYPES { ECC_PREFIX_0 = 160,