diff --git a/tests/api/test_ossl_asn1.c b/tests/api/test_ossl_asn1.c index c1629eadc6..46500bd0e0 100644 --- a/tests/api/test_ossl_asn1.c +++ b/tests/api/test_ossl_asn1.c @@ -198,11 +198,11 @@ int test_wolfSSL_ASN1_INTEGER_BN(void) } #if defined(WOLFSSL_QT) || defined(WOLFSSL_HAPROXY) ExpectNotNull(bn = ASN1_INTEGER_to_BN(ai, NULL)); - BN_free(bn); - bn = NULL; #else - ExpectNull(ASN1_INTEGER_to_BN(ai, NULL)); + ExpectNull(bn = ASN1_INTEGER_to_BN(ai, NULL)); #endif + BN_free(bn); + bn = NULL; if (ai != NULL) { ai->data[0] = 0x02; /* tag for ASN_INTEGER */ @@ -213,11 +213,11 @@ int test_wolfSSL_ASN1_INTEGER_BN(void) #if defined(WOLFSSL_QT) || defined(WOLFSSL_HAPROXY) /* Interpreted as a number 0x020403. */ ExpectNotNull(bn = ASN1_INTEGER_to_BN(ai, NULL)); - BN_free(bn); - bn = NULL; #else - ExpectNull(ASN1_INTEGER_to_BN(ai, NULL)); + ExpectNull(bn = ASN1_INTEGER_to_BN(ai, NULL)); #endif + BN_free(bn); + bn = NULL; if (ai != NULL) { ai->data[0] = 0x02; /* tag for ASN_INTEGER */ diff --git a/tests/api/test_x509.c b/tests/api/test_x509.c index 47780e6dc4..38bf71f8f6 100644 --- a/tests/api/test_x509.c +++ b/tests/api/test_x509.c @@ -502,6 +502,9 @@ static int craft_malicious_time_cert(const byte* orig, int origSz, notBeforeLenOff = validityOff + 3; /* the 0x0D byte */ notBeforeDataEnd = notBeforeLenOff + 1 + 13; /* tag(1) was at +2, data starts at +4 */ + if (notBeforeDataEnd >= origSz) { + return -1; + } /* Build the new buffer: * [0 .. notBeforeLenOff-1] unchanged prefix