Browse Source

Fix DSA public decode to allow extra buffer (in case private key is passed in). Fixes for clang-tidy "value stored never read". Allow showing line number and conditional with `DEBUG_WOLFSSL_VERBOSE` on `TEST_RES_CHECK`.

David Garske 1 year ago
parent
commit
b2f9838af4
3 changed files with 171 additions and 136 deletions
  1. 170 133
      tests/api.c
  2. 1 1
      wolfcrypt/src/asn.c
  3. 0 2
      wolfssl/wolfcrypt/mem_track.h

+ 170 - 133
tests/api.c

@@ -410,9 +410,20 @@ typedef struct testVector {
  * @return  When condition is true: TEST_SUCCESS.
  * @return  When condition is false: TEST_FAIL.
  */
+#ifdef DEBUG_WOLFSSL_VERBOSE
+#define XSTRINGIFY(s) STRINGIFY(s)
+#define STRINGIFY(s)  #s
+#define TEST_RES_CHECK(check) ({ \
+    int _ret = (check) ? TEST_SUCCESS : TEST_FAIL; \
+    if (_ret == TEST_FAIL) { \
+        fprintf(stderr, " check \"%s\" at %d ", \
+            XSTRINGIFY(check), __LINE__); \
+    } \
+    _ret; })
+#else
 #define TEST_RES_CHECK(check) \
     ((check) ? TEST_SUCCESS : TEST_FAIL)
-
+#endif /* DEBUG_WOLFSSL_VERBOSE */
 
 #define TEST_STRING    "Everyone gets Friday off."
 #define TEST_STRING_SZ 25
@@ -17095,6 +17106,7 @@ static int test_wc_ChaCha20Poly1305_aead(void)
                     plaintext, sizeof(plaintext), generatedCiphertext, NULL);
     if (ret == BAD_FUNC_ARG) {
         ret = 0;
+        (void)ret; /* suppress never read */
     }
 
     ret = wc_ChaCha20Poly1305_Decrypt(key, iv, aad, sizeof(aad), cipher,
@@ -20998,8 +21010,8 @@ static int test_wc_DsaPublicPrivateKeyDecode(void)
     DsaKey  key;
     word32  bytes;
     word32  idx  = 0;
-    int     priv = WOLFSSL_FATAL_ERROR;
-    int     pub  = WOLFSSL_FATAL_ERROR;
+    int     priv = 0;
+    int     pub  = 0;
     int     ret = 0;
 
 #ifdef USE_CERT_BUFFERS_1024
@@ -21039,7 +21051,7 @@ static int test_wc_DsaPublicPrivateKeyDecode(void)
             if (priv == BAD_FUNC_ARG) {
                 priv = wc_DsaPrivateKeyDecode(tmp, &idx, &key, bytes);
             }
-            if (priv == ASN_PARSE_E) {
+            if (priv == ASN_PARSE_E || priv == BUFFER_E) {
                 priv = 0;
             }
             else {
@@ -21054,6 +21066,7 @@ static int test_wc_DsaPublicPrivateKeyDecode(void)
     if (ret == 0) {
         idx = 0; /* Reset */
         pub = wc_DsaPublicKeyDecode(tmp, &idx, &key, bytes);
+
         /* Test bad args. */
         if (pub == 0) {
             pub = wc_DsaPublicKeyDecode(NULL, &idx, &key, bytes);
@@ -21066,7 +21079,7 @@ static int test_wc_DsaPublicPrivateKeyDecode(void)
             if (pub == BAD_FUNC_ARG) {
                 pub = wc_DsaPublicKeyDecode(tmp, &idx, &key, bytes);
             }
-            if (pub == ASN_PARSE_E) {
+            if (pub == ASN_PARSE_E || pub == BUFFER_E) {
                 pub = 0;
             }
             else {
@@ -21078,8 +21091,8 @@ static int test_wc_DsaPublicPrivateKeyDecode(void)
 
     wc_FreeDsaKey(&key);
 
-    res = TEST_RES_CHECK(ret == 0);
-#endif
+    res = TEST_RES_CHECK(ret == 0 && pub == 0 && priv == 0);
+#endif /* !NO_DSA */
     return res;
 
 } /* END test_wc_DsaPublicPrivateKeyDecode */
@@ -21325,12 +21338,12 @@ static int test_wc_DsaKeyToPublicDer(void)
         ret = WOLFSSL_FATAL_ERROR;
     }
 
-    XFREE(der,NULL,DYNAMIC_TYPE_TMP_BUFFER);
+    XFREE(der, NULL, DYNAMIC_TYPE_TMP_BUFFER);
     wc_FreeDsaKey(&genKey);
 
     res = TEST_RES_CHECK(ret == 0);
-#endif /* !defined(NO_DSA) && defined(WOLFSSL_KEY_GEN) */
-#endif /* HAVE_SELFTEST */
+#endif /* !NO_DSA && WOLFSSL_KEY_GEN */
+#endif /* !HAVE_SELFTEST */
     return res;
 
 } /* END test_wc_DsaKeyToPublicDer */
@@ -24821,7 +24834,7 @@ static int test_wc_ecc_signVerify_hash(void)
     wc_ecc_fp_free();
 #endif
 
-    res = TEST_RES_CHECK(ret == 0);
+    res = TEST_RES_CHECK(ret == 0 && signH == 0 && verifyH == 0);
 #endif
     return res;
 } /*  END test_wc_ecc_sign_hash */
@@ -44571,41 +44584,47 @@ static int test_wolfSSL_EVP_PKEY_assign(void)
     (void)pkey;
 
 #ifndef NO_RSA
-    type = EVP_PKEY_RSA;
-    AssertNotNull(pkey = wolfSSL_EVP_PKEY_new());
-    AssertNotNull(rsa = wolfSSL_RSA_new());
-    AssertIntEQ(wolfSSL_EVP_PKEY_assign(NULL,type,rsa),  WOLFSSL_FAILURE);
-    AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,type,NULL), WOLFSSL_FAILURE);
-    AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,-1,rsa),    WOLFSSL_FAILURE);
-    AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,type,rsa),  WOLFSSL_SUCCESS);
-    wolfSSL_EVP_PKEY_free(pkey);
-    res = TEST_RES_CHECK(1);
+    if (res == TEST_SKIPPED || res == TEST_SUCCESS) {
+        type = EVP_PKEY_RSA;
+        AssertNotNull(pkey = wolfSSL_EVP_PKEY_new());
+        AssertNotNull(rsa = wolfSSL_RSA_new());
+        AssertIntEQ(wolfSSL_EVP_PKEY_assign(NULL,type,rsa),  WOLFSSL_FAILURE);
+        AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,type,NULL), WOLFSSL_FAILURE);
+        AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,-1,rsa),    WOLFSSL_FAILURE);
+        AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,type,rsa),  WOLFSSL_SUCCESS);
+        wolfSSL_EVP_PKEY_free(pkey);
+        res = TEST_RES_CHECK(1);
+    }
 #endif /* NO_RSA */
 
 #ifndef NO_DSA
-    type = EVP_PKEY_DSA;
-    AssertNotNull(pkey = wolfSSL_EVP_PKEY_new());
-    AssertNotNull(dsa = wolfSSL_DSA_new());
-    AssertIntEQ(wolfSSL_EVP_PKEY_assign(NULL,type,dsa),  WOLFSSL_FAILURE);
-    AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,type,NULL), WOLFSSL_FAILURE);
-    AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,-1,dsa),    WOLFSSL_FAILURE);
-    AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,type,dsa),  WOLFSSL_SUCCESS);
-    wolfSSL_EVP_PKEY_free(pkey);
-    res = TEST_RES_CHECK(1);
+    if (res == TEST_SKIPPED || res == TEST_SUCCESS) {
+        type = EVP_PKEY_DSA;
+        AssertNotNull(pkey = wolfSSL_EVP_PKEY_new());
+        AssertNotNull(dsa = wolfSSL_DSA_new());
+        AssertIntEQ(wolfSSL_EVP_PKEY_assign(NULL,type,dsa),  WOLFSSL_FAILURE);
+        AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,type,NULL), WOLFSSL_FAILURE);
+        AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,-1,dsa),    WOLFSSL_FAILURE);
+        AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,type,dsa),  WOLFSSL_SUCCESS);
+        wolfSSL_EVP_PKEY_free(pkey);
+        res = TEST_RES_CHECK(1);
+    }
 #endif /* NO_DSA */
 
 #ifdef HAVE_ECC
-    type = EVP_PKEY_EC;
-    AssertNotNull(pkey = wolfSSL_EVP_PKEY_new());
-    AssertNotNull(ecKey = wolfSSL_EC_KEY_new());
-    AssertIntEQ(wolfSSL_EVP_PKEY_assign(NULL,type,ecKey), WOLFSSL_FAILURE);
-    AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,type,NULL),  WOLFSSL_FAILURE);
-    AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,-1,ecKey),   WOLFSSL_FAILURE);
-    AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,type,ecKey),   WOLFSSL_FAILURE);
-    AssertIntEQ(wolfSSL_EC_KEY_generate_key(ecKey), 1);
-    AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,type,ecKey), WOLFSSL_SUCCESS);
-    wolfSSL_EVP_PKEY_free(pkey);
-    res = TEST_RES_CHECK(1);
+    if (res == TEST_SKIPPED || res == TEST_SUCCESS) {
+        type = EVP_PKEY_EC;
+        AssertNotNull(pkey = wolfSSL_EVP_PKEY_new());
+        AssertNotNull(ecKey = wolfSSL_EC_KEY_new());
+        AssertIntEQ(wolfSSL_EVP_PKEY_assign(NULL,type,ecKey), WOLFSSL_FAILURE);
+        AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,type,NULL),  WOLFSSL_FAILURE);
+        AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,-1,ecKey),   WOLFSSL_FAILURE);
+        AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,type,ecKey),   WOLFSSL_FAILURE);
+        AssertIntEQ(wolfSSL_EC_KEY_generate_key(ecKey), 1);
+        AssertIntEQ(wolfSSL_EVP_PKEY_assign(pkey,type,ecKey), WOLFSSL_SUCCESS);
+        wolfSSL_EVP_PKEY_free(pkey);
+        res = TEST_RES_CHECK(1);
+    }
 #endif /* HAVE_ECC */
 
     (void)type;
@@ -45187,78 +45206,92 @@ static int test_wolfSSL_EVP_CIPHER_block_size(void)
     int res = TEST_SKIPPED;
 
 #ifdef HAVE_AES_CBC
-    #ifdef WOLFSSL_AES_128
-    AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_128_cbc()), AES_BLOCK_SIZE);
-    #endif
-    #ifdef WOLFSSL_AES_192
-    AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_192_cbc()), AES_BLOCK_SIZE);
-    #endif
-    #ifdef WOLFSSL_AES_256
-    AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_256_cbc()), AES_BLOCK_SIZE);
-    #endif
-    res = TEST_RES_CHECK(1);
+    if (res == TEST_SKIPPED || res == TEST_SUCCESS) {
+        #ifdef WOLFSSL_AES_128
+        AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_128_cbc()), AES_BLOCK_SIZE);
+        #endif
+        #ifdef WOLFSSL_AES_192
+        AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_192_cbc()), AES_BLOCK_SIZE);
+        #endif
+        #ifdef WOLFSSL_AES_256
+        AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_256_cbc()), AES_BLOCK_SIZE);
+        #endif
+        res = TEST_RES_CHECK(1);
+    }
 #endif
 
 #ifdef HAVE_AESGCM
-    #ifdef WOLFSSL_AES_128
-    AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_128_gcm()), 1);
-    #endif
-    #ifdef WOLFSSL_AES_192
-    AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_192_gcm()), 1);
-    #endif
-    #ifdef WOLFSSL_AES_256
-    AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_256_gcm()), 1);
-    #endif
-    res = TEST_RES_CHECK(1);
+    if (res == TEST_SKIPPED || res == TEST_SUCCESS) {
+        #ifdef WOLFSSL_AES_128
+        AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_128_gcm()), 1);
+        #endif
+        #ifdef WOLFSSL_AES_192
+        AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_192_gcm()), 1);
+        #endif
+        #ifdef WOLFSSL_AES_256
+        AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_256_gcm()), 1);
+        #endif
+        res = TEST_RES_CHECK(1);
+    }
 #endif
 
 #ifdef WOLFSSL_AES_COUNTER
-    #ifdef WOLFSSL_AES_128
-    AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_128_ctr()), 1);
-    #endif
-    #ifdef WOLFSSL_AES_192
-    AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_192_ctr()), 1);
-    #endif
-    #ifdef WOLFSSL_AES_256
-    AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_256_ctr()), 1);
-    #endif
-    res = TEST_RES_CHECK(1);
+    if (res == TEST_SKIPPED || res == TEST_SUCCESS) {
+        #ifdef WOLFSSL_AES_128
+        AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_128_ctr()), 1);
+        #endif
+        #ifdef WOLFSSL_AES_192
+        AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_192_ctr()), 1);
+        #endif
+        #ifdef WOLFSSL_AES_256
+        AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_256_ctr()), 1);
+        #endif
+        res = TEST_RES_CHECK(1);
+    }
 #endif
 
 #ifdef HAVE_AES_ECB
-    #ifdef WOLFSSL_AES_128
-    AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_128_ecb()), AES_BLOCK_SIZE);
-    #endif
-    #ifdef WOLFSSL_AES_192
-    AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_192_ecb()), AES_BLOCK_SIZE);
-    #endif
-    #ifdef WOLFSSL_AES_256
-    AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_256_ecb()), AES_BLOCK_SIZE);
-    #endif
-    res = TEST_RES_CHECK(1);
+    if (res == TEST_SKIPPED || res == TEST_SUCCESS) {
+        #ifdef WOLFSSL_AES_128
+        AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_128_ecb()), AES_BLOCK_SIZE);
+        #endif
+        #ifdef WOLFSSL_AES_192
+        AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_192_ecb()), AES_BLOCK_SIZE);
+        #endif
+        #ifdef WOLFSSL_AES_256
+        AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_256_ecb()), AES_BLOCK_SIZE);
+        #endif
+        res = TEST_RES_CHECK(1);
+    }
 #endif
 
 #ifdef WOLFSSL_AES_OFB
-    #ifdef WOLFSSL_AES_128
-    AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_128_ofb()), 1);
-    #endif
-    #ifdef WOLFSSL_AES_192
-    AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_192_ofb()), 1);
-    #endif
-    #ifdef WOLFSSL_AES_256
-    AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_256_ofb()), 1);
-    #endif
-    res = TEST_RES_CHECK(1);
+    if (res == TEST_SKIPPED || res == TEST_SUCCESS) {
+        #ifdef WOLFSSL_AES_128
+        AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_128_ofb()), 1);
+        #endif
+        #ifdef WOLFSSL_AES_192
+        AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_192_ofb()), 1);
+        #endif
+        #ifdef WOLFSSL_AES_256
+        AssertIntEQ(EVP_CIPHER_block_size(EVP_aes_256_ofb()), 1);
+        #endif
+        res = TEST_RES_CHECK(1);
+    }
 #endif
 
 #ifndef NO_RC4
-    AssertIntEQ(EVP_CIPHER_block_size(wolfSSL_EVP_rc4()), 1);
-    res = TEST_RES_CHECK(1);
+    if (res == TEST_SKIPPED || res == TEST_SUCCESS) {
+        AssertIntEQ(EVP_CIPHER_block_size(wolfSSL_EVP_rc4()), 1);
+        res = TEST_RES_CHECK(1);
+    }
 #endif
 
 #if defined(HAVE_CHACHA) && defined(HAVE_POLY1305)
-    AssertIntEQ(EVP_CIPHER_block_size(wolfSSL_EVP_chacha20_poly1305()), 1);
-    res = TEST_RES_CHECK(1);
+    if (res == TEST_SKIPPED || res == TEST_SUCCESS) {
+        AssertIntEQ(EVP_CIPHER_block_size(wolfSSL_EVP_chacha20_poly1305()), 1);
+        res = TEST_RES_CHECK(1);
+    }
 #endif
 
     return res;
@@ -54951,52 +54984,56 @@ static int test_wolfSSL_d2i_DHparams(void)
 
     /* Test 2048 bit parameters */
 #ifdef HAVE_FFDHE_2048
-    f = XFOPEN(params1, "rb");
-    AssertTrue(f != XBADFILE);
-    len = (long)XFREAD(buf, 1, sizeof(buf), f);
-    XFCLOSE(f);
+    if (res == TEST_SKIPPED || res == TEST_SUCCESS) {
+        f = XFOPEN(params1, "rb");
+        AssertTrue(f != XBADFILE);
+        len = (long)XFREAD(buf, 1, sizeof(buf), f);
+        XFCLOSE(f);
 
-    /* Valid case */
-    AssertNotNull(dh = wolfSSL_d2i_DHparams(NULL, &pt, len));
-    AssertNotNull(dh->p);
-    AssertNotNull(dh->g);
-    AssertTrue(pt == buf);
-    AssertIntEQ(DH_set_length(NULL, BN_num_bits(dh->p)), 0);
-    AssertIntEQ(DH_set_length(dh, BN_num_bits(dh->p)), 1);
-    AssertIntEQ(DH_generate_key(dh), WOLFSSL_SUCCESS);
+        /* Valid case */
+        AssertNotNull(dh = wolfSSL_d2i_DHparams(NULL, &pt, len));
+        AssertNotNull(dh->p);
+        AssertNotNull(dh->g);
+        AssertTrue(pt == buf);
+        AssertIntEQ(DH_set_length(NULL, BN_num_bits(dh->p)), 0);
+        AssertIntEQ(DH_set_length(dh, BN_num_bits(dh->p)), 1);
+        AssertIntEQ(DH_generate_key(dh), WOLFSSL_SUCCESS);
 
-    /* Invalid cases */
-    AssertNull(wolfSSL_d2i_DHparams(NULL, NULL, len));
-    AssertNull(wolfSSL_d2i_DHparams(NULL, &pt, -1));
-    AssertNull(wolfSSL_d2i_DHparams(NULL, &pt, 10));
+        /* Invalid cases */
+        AssertNull(wolfSSL_d2i_DHparams(NULL, NULL, len));
+        AssertNull(wolfSSL_d2i_DHparams(NULL, &pt, -1));
+        AssertNull(wolfSSL_d2i_DHparams(NULL, &pt, 10));
 
-    DH_free(dh);
+        DH_free(dh);
 
-    *buf = 0;
-    pt = buf;
-    res = TEST_RES_CHECK(1);
+        *buf = 0;
+        pt = buf;
+        res = TEST_RES_CHECK(1);
+    }
 #endif /* HAVE_FFDHE_2048 */
 
     /* Test 3072 bit parameters */
 #ifdef HAVE_FFDHE_3072
-    f = XFOPEN(params2, "rb");
-    AssertTrue(f != XBADFILE);
-    len = (long)XFREAD(buf, 1, sizeof(buf), f);
-    XFCLOSE(f);
+    if (res == TEST_SKIPPED || res == TEST_SUCCESS) {
+        f = XFOPEN(params2, "rb");
+        AssertTrue(f != XBADFILE);
+        len = (long)XFREAD(buf, 1, sizeof(buf), f);
+        XFCLOSE(f);
 
-    /* Valid case */
-    AssertNotNull(dh = wolfSSL_d2i_DHparams(&dh, &pt, len));
-    AssertNotNull(dh->p);
-    AssertNotNull(dh->g);
-    AssertTrue(pt != buf);
-    AssertIntEQ(DH_generate_key(dh), 1);
+        /* Valid case */
+        AssertNotNull(dh = wolfSSL_d2i_DHparams(&dh, &pt, len));
+        AssertNotNull(dh->p);
+        AssertNotNull(dh->g);
+        AssertTrue(pt != buf);
+        AssertIntEQ(DH_generate_key(dh), 1);
 
-    /* Invalid cases */
-    AssertNull(wolfSSL_d2i_DHparams(NULL, NULL, len));
-    AssertNull(wolfSSL_d2i_DHparams(NULL, &pt, -1));
+        /* Invalid cases */
+        AssertNull(wolfSSL_d2i_DHparams(NULL, NULL, len));
+        AssertNull(wolfSSL_d2i_DHparams(NULL, &pt, -1));
 
-    DH_free(dh);
-    res = TEST_RES_CHECK(1);
+        DH_free(dh);
+        res = TEST_RES_CHECK(1);
+    }
 #endif /* HAVE_FFDHE_3072 */
 
 #endif /* !HAVE_FIPS || HAVE_FIPS_VERSION > 2 */
@@ -55200,7 +55237,7 @@ static int test_openssl_generate_key_and_cert(void)
     int res = TEST_SKIPPED;
 #if defined(OPENSSL_EXTRA)
 #if !defined(NO_RSA)
-    {
+    if (res == TEST_SKIPPED || res == TEST_SUCCESS) {
         EVP_PKEY* pkey = EVP_PKEY_new();
         int key_length = 2048;
         BIGNUM* exponent = BN_new();
@@ -55244,12 +55281,12 @@ static int test_openssl_generate_key_and_cert(void)
         }
 
         EVP_PKEY_free(pkey);
+        res = TEST_RES_CHECK(1);
     }
-    res = TEST_RES_CHECK(1);
 #endif /* !NO_RSA */
 
 #ifdef HAVE_ECC
-    {
+    if (res == TEST_SKIPPED || res == TEST_SUCCESS) {
         EVP_PKEY* pkey = EVP_PKEY_new();
         EC_KEY* ec_key = EC_KEY_new_by_curve_name(NID_X9_62_prime256v1);
 
@@ -55269,8 +55306,8 @@ static int test_openssl_generate_key_and_cert(void)
     #endif
 
         EVP_PKEY_free(pkey);
+        res = TEST_RES_CHECK(1);
     }
-    res = TEST_RES_CHECK(1);
 #endif /* HAVE_ECC */
 #endif /* OPENSSL_EXTRA */
     return res;

+ 1 - 1
wolfcrypt/src/asn.c

@@ -10395,7 +10395,7 @@ int wc_DsaPublicKeyDecode(const byte* input, word32* inOutIdx, DsaKey* key,
         for (i = 0; i < DSA_INTS - 1; i++)
             GetASN_MP(&dataASN[(int)DSAKEYASN_IDX_VER + i], GetDsaInt(key, i));
         /* Parse as simple form. */
-        ret = GetASN_Items(dsaKeyASN, dataASN, dsaPublicKeyASN_Length, 1, input,
+        ret = GetASN_Items(dsaKeyASN, dataASN, dsaPublicKeyASN_Length, 0, input,
                            inOutIdx, inSz);
         if (ret != 0) {
             /* Clear dynamic data items. */

+ 0 - 2
wolfssl/wolfcrypt/mem_track.h

@@ -558,8 +558,6 @@ int StackSizeHWMReset(void)
     fprintf(stderr, "%ld\t%s\n", (long int)HWM, msg); \
     StackSizeHWMReset();                              \
     })
- \
-
 
 #define STACK_SIZE_CHECKPOINT_WITH_MAX_CHECK(max, ...) ({  \
     ssize_t HWM = StackSizeHWM_OffsetCorrected();    \