Fix cast warnings with wolfCrypt test/benchmark. Cleanup of 80 char max line length in wolfCrypt test.

pull/1153/head
David Garske 2017-09-22 09:38:43 -07:00
parent 6451e12313
commit ee6f88cd98
2 changed files with 161 additions and 114 deletions

View File

@ -703,12 +703,12 @@ static void* benchmarks_do(void* args)
/* setup bench plain, cipher, key and iv globals */ /* setup bench plain, cipher, key and iv globals */
/* make sure bench buffer is multiple of 16 (AES block size) */ /* make sure bench buffer is multiple of 16 (AES block size) */
bench_buf_size = bench_size + BENCH_CIPHER_ADD; bench_buf_size = (int)bench_size + BENCH_CIPHER_ADD;
if (bench_buf_size % 16) if (bench_buf_size % 16)
bench_buf_size += 16 - (bench_buf_size % 16); bench_buf_size += 16 - (bench_buf_size % 16);
bench_plain = (byte*)XMALLOC(bench_buf_size, HEAP_HINT, DYNAMIC_TYPE_WOLF_BIGINT); bench_plain = (byte*)XMALLOC((size_t)bench_buf_size, HEAP_HINT, DYNAMIC_TYPE_WOLF_BIGINT);
bench_cipher = (byte*)XMALLOC(bench_buf_size, HEAP_HINT, DYNAMIC_TYPE_WOLF_BIGINT); bench_cipher = (byte*)XMALLOC((size_t)bench_buf_size, HEAP_HINT, DYNAMIC_TYPE_WOLF_BIGINT);
if (bench_plain == NULL || bench_cipher == NULL) { if (bench_plain == NULL || bench_cipher == NULL) {
XFREE(bench_plain, HEAP_HINT, DYNAMIC_TYPE_WOLF_BIGINT); XFREE(bench_plain, HEAP_HINT, DYNAMIC_TYPE_WOLF_BIGINT);
XFREE(bench_cipher, HEAP_HINT, DYNAMIC_TYPE_WOLF_BIGINT); XFREE(bench_cipher, HEAP_HINT, DYNAMIC_TYPE_WOLF_BIGINT);
@ -717,8 +717,8 @@ static void* benchmarks_do(void* args)
printf("Benchmark block buffer alloc failed!\n"); printf("Benchmark block buffer alloc failed!\n");
goto exit; goto exit;
} }
XMEMSET(bench_plain, 0, bench_buf_size); XMEMSET(bench_plain, 0, (size_t)bench_buf_size);
XMEMSET(bench_cipher, 0, bench_buf_size); XMEMSET(bench_cipher, 0, (size_t)bench_buf_size);
#ifdef WOLFSSL_ASYNC_CRYPT #ifdef WOLFSSL_ASYNC_CRYPT
bench_key = (byte*)XMALLOC(sizeof(bench_key_buf), HEAP_HINT, DYNAMIC_TYPE_WOLF_BIGINT); bench_key = (byte*)XMALLOC(sizeof(bench_key_buf), HEAP_HINT, DYNAMIC_TYPE_WOLF_BIGINT);
@ -1136,7 +1136,7 @@ void bench_rng(void)
len = remain; len = remain;
if (len > RNG_MAX_BLOCK_LEN) if (len > RNG_MAX_BLOCK_LEN)
len = RNG_MAX_BLOCK_LEN; len = RNG_MAX_BLOCK_LEN;
ret = wc_RNG_GenerateBlock(&myrng, &bench_plain[pos], len); ret = wc_RNG_GenerateBlock(&myrng, &bench_plain[pos], (word32)len);
if (ret < 0) if (ret < 0)
goto exit_rng; goto exit_rng;
@ -2639,11 +2639,11 @@ void bench_rsa(int doAsync)
#ifdef USE_CERT_BUFFERS_1024 #ifdef USE_CERT_BUFFERS_1024
tmp = rsa_key_der_1024; tmp = rsa_key_der_1024;
bytes = sizeof_rsa_key_der_1024; bytes = (size_t)sizeof_rsa_key_der_1024;
rsaKeySz = 1024; rsaKeySz = 1024;
#elif defined(USE_CERT_BUFFERS_2048) #elif defined(USE_CERT_BUFFERS_2048)
tmp = rsa_key_der_2048; tmp = rsa_key_der_2048;
bytes = sizeof_rsa_key_der_2048; bytes = (size_t)sizeof_rsa_key_der_2048;
#else #else
#error "need a cert buffer size" #error "need a cert buffer size"
#endif /* USE_CERT_BUFFERS */ #endif /* USE_CERT_BUFFERS */
@ -2683,7 +2683,7 @@ void bench_rsa(int doAsync)
/* while free pending slots in queue, submit ops */ /* while free pending slots in queue, submit ops */
for (i = 0; i < BENCH_MAX_PENDING; i++) { for (i = 0; i < BENCH_MAX_PENDING; i++) {
if (bench_async_check(&ret, BENCH_ASYNC_GET_DEV(&rsaKey[i]), 1, &times, ntimes, &pending)) { if (bench_async_check(&ret, BENCH_ASYNC_GET_DEV(&rsaKey[i]), 1, &times, ntimes, &pending)) {
ret = wc_RsaPublicEncrypt(message, len, enc[i], ret = wc_RsaPublicEncrypt(message, (word32)len, enc[i],
RSA_BUF_SIZE, &rsaKey[i], &rng); RSA_BUF_SIZE, &rsaKey[i], &rng);
if (!bench_async_handle(&ret, BENCH_ASYNC_GET_DEV(&rsaKey[i]), 1, &times, &pending)) { if (!bench_async_handle(&ret, BENCH_ASYNC_GET_DEV(&rsaKey[i]), 1, &times, &pending)) {
goto exit_rsa_pub; goto exit_rsa_pub;
@ -2701,7 +2701,7 @@ exit_rsa_pub:
} }
/* capture resulting encrypt length */ /* capture resulting encrypt length */
idx = rsaKeySz/8; idx = (word32)(rsaKeySz/8);
/* begin private async RSA */ /* begin private async RSA */
bench_stats_start(&count, &start); bench_stats_start(&count, &start);
@ -2788,11 +2788,11 @@ void bench_dh(int doAsync)
/* do nothing, but don't use default FILE */ /* do nothing, but don't use default FILE */
#elif defined(USE_CERT_BUFFERS_1024) #elif defined(USE_CERT_BUFFERS_1024)
tmp = dh_key_der_1024; tmp = dh_key_der_1024;
bytes = sizeof_dh_key_der_1024; bytes = (size_t)sizeof_dh_key_der_1024;
dhKeySz = 1024; dhKeySz = 1024;
#elif defined(USE_CERT_BUFFERS_2048) #elif defined(USE_CERT_BUFFERS_2048)
tmp = dh_key_der_2048; tmp = dh_key_der_2048;
bytes = sizeof_dh_key_der_2048; bytes = (size_t)sizeof_dh_key_der_2048;
#else #else
#error "need to define a cert buffer size" #error "need to define a cert buffer size"
#endif /* USE_CERT_BUFFERS */ #endif /* USE_CERT_BUFFERS */
@ -3217,7 +3217,7 @@ void bench_ecc(int doAsync)
/* while free pending slots in queue, submit ops */ /* while free pending slots in queue, submit ops */
for (i = 0; i < BENCH_MAX_PENDING; i++) { for (i = 0; i < BENCH_MAX_PENDING; i++) {
if (bench_async_check(&ret, BENCH_ASYNC_GET_DEV(&genKey[i]), 1, &times, agreeTimes, &pending)) { if (bench_async_check(&ret, BENCH_ASYNC_GET_DEV(&genKey[i]), 1, &times, agreeTimes, &pending)) {
x[i] = keySize; x[i] = (word32)keySize;
ret = wc_ecc_shared_secret(&genKey[i], &genKey2[i], shared[i], &x[i]); ret = wc_ecc_shared_secret(&genKey[i], &genKey2[i], shared[i], &x[i]);
if (!bench_async_handle(&ret, BENCH_ASYNC_GET_DEV(&genKey[i]), 1, &times, &pending)) { if (!bench_async_handle(&ret, BENCH_ASYNC_GET_DEV(&genKey[i]), 1, &times, &pending)) {
goto exit_ecdhe; goto exit_ecdhe;
@ -3255,7 +3255,7 @@ exit_ecdhe:
if (bench_async_check(&ret, BENCH_ASYNC_GET_DEV(&genKey[i]), 1, &times, agreeTimes, &pending)) { if (bench_async_check(&ret, BENCH_ASYNC_GET_DEV(&genKey[i]), 1, &times, agreeTimes, &pending)) {
if (genKey[i].state == 0) if (genKey[i].state == 0)
x[i] = ECC_MAX_SIG_SIZE; x[i] = ECC_MAX_SIG_SIZE;
ret = wc_ecc_sign_hash(digest[i], keySize, sig[i], &x[i], ret = wc_ecc_sign_hash(digest[i], (word32)keySize, sig[i], &x[i],
&rng, &genKey[i]); &rng, &genKey[i]);
if (!bench_async_handle(&ret, BENCH_ASYNC_GET_DEV(&genKey[i]), 1, &times, &pending)) { if (!bench_async_handle(&ret, BENCH_ASYNC_GET_DEV(&genKey[i]), 1, &times, &pending)) {
goto exit_ecdsa_sign; goto exit_ecdsa_sign;
@ -3286,7 +3286,7 @@ exit_ecdsa_sign:
if (genKey[i].state == 0) if (genKey[i].state == 0)
verify[i] = 0; verify[i] = 0;
ret = wc_ecc_verify_hash(sig[i], x[i], digest[i], ret = wc_ecc_verify_hash(sig[i], x[i], digest[i],
keySize, &verify[i], &genKey[i]); (word32)keySize, &verify[i], &genKey[i]);
if (!bench_async_handle(&ret, BENCH_ASYNC_GET_DEV(&genKey[i]), 1, &times, &pending)) { if (!bench_async_handle(&ret, BENCH_ASYNC_GET_DEV(&genKey[i]), 1, &times, &pending)) {
goto exit_ecdsa_verify; goto exit_ecdsa_verify;
} }
@ -3695,7 +3695,7 @@ void benchmark_configure(int block_size)
{ {
/* must be greater than 0 */ /* must be greater than 0 */
if (block_size > 0) { if (block_size > 0) {
bench_size = block_size; bench_size = (word32)block_size;
} }
} }

View File

@ -1242,7 +1242,8 @@ int md5_test(void)
return -1500; return -1500;
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_Md5Update(&md5, (byte*)test_md5[i].input, (word32)test_md5[i].inLen); ret = wc_Md5Update(&md5, (byte*)test_md5[i].input,
(word32)test_md5[i].inLen);
if (ret != 0) if (ret != 0)
ERROR_OUT(-1510 - i, exit); ERROR_OUT(-1510 - i, exit);
@ -1274,7 +1275,8 @@ int md5_test(void)
wc_Md5SizeSet(&md5, times * sizeof(large_input)); wc_Md5SizeSet(&md5, times * sizeof(large_input));
#endif #endif
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_Md5Update(&md5, (byte*)large_input, (word32)sizeof(large_input)); ret = wc_Md5Update(&md5, (byte*)large_input,
(word32)sizeof(large_input));
if (ret != 0) if (ret != 0)
ERROR_OUT(-1560, exit); ERROR_OUT(-1560, exit);
} }
@ -1428,7 +1430,8 @@ int sha_test(void)
return -1700; return -1700;
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_ShaUpdate(&sha, (byte*)test_sha[i].input, (word32)test_sha[i].inLen); ret = wc_ShaUpdate(&sha, (byte*)test_sha[i].input,
(word32)test_sha[i].inLen);
if (ret != 0) if (ret != 0)
ERROR_OUT(-1710 - i, exit); ERROR_OUT(-1710 - i, exit);
ret = wc_ShaGetHash(&sha, hashcopy); ret = wc_ShaGetHash(&sha, hashcopy);
@ -1458,7 +1461,8 @@ int sha_test(void)
wc_ShaSizeSet(&sha, times * sizeof(large_input)); wc_ShaSizeSet(&sha, times * sizeof(large_input));
#endif #endif
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_ShaUpdate(&sha, (byte*)large_input, (word32)sizeof(large_input)); ret = wc_ShaUpdate(&sha, (byte*)large_input,
(word32)sizeof(large_input));
if (ret != 0) if (ret != 0)
ERROR_OUT(-1760, exit); ERROR_OUT(-1760, exit);
} }
@ -1658,7 +1662,8 @@ int sha224_test(void)
return -2000; return -2000;
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_Sha224Update(&sha, (byte*)test_sha[i].input,(word32)test_sha[i].inLen); ret = wc_Sha224Update(&sha, (byte*)test_sha[i].input,
(word32)test_sha[i].inLen);
if (ret != 0) if (ret != 0)
ERROR_OUT(-2010 - i, exit); ERROR_OUT(-2010 - i, exit);
ret = wc_Sha224GetHash(&sha, hashcopy); ret = wc_Sha224GetHash(&sha, hashcopy);
@ -1723,7 +1728,8 @@ int sha256_test(void)
return -2100; return -2100;
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_Sha256Update(&sha, (byte*)test_sha[i].input,(word32)test_sha[i].inLen); ret = wc_Sha256Update(&sha, (byte*)test_sha[i].input,
(word32)test_sha[i].inLen);
if (ret != 0) if (ret != 0)
ERROR_OUT(-2110 - i, exit); ERROR_OUT(-2110 - i, exit);
ret = wc_Sha256GetHash(&sha, hashcopy); ret = wc_Sha256GetHash(&sha, hashcopy);
@ -1753,7 +1759,8 @@ int sha256_test(void)
wc_Sha256SizeSet(&sha, times * sizeof(large_input)); wc_Sha256SizeSet(&sha, times * sizeof(large_input));
#endif #endif
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_Sha256Update(&sha, (byte*)large_input, (word32)sizeof(large_input)); ret = wc_Sha256Update(&sha, (byte*)large_input,
(word32)sizeof(large_input));
if (ret != 0) if (ret != 0)
ERROR_OUT(-2160, exit); ERROR_OUT(-2160, exit);
} }
@ -1822,7 +1829,8 @@ int sha512_test(void)
return -2200; return -2200;
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_Sha512Update(&sha, (byte*)test_sha[i].input,(word32)test_sha[i].inLen); ret = wc_Sha512Update(&sha, (byte*)test_sha[i].input,
(word32)test_sha[i].inLen);
if (ret != 0) if (ret != 0)
ERROR_OUT(-2210 - i, exit); ERROR_OUT(-2210 - i, exit);
ret = wc_Sha512GetHash(&sha, hashcopy); ret = wc_Sha512GetHash(&sha, hashcopy);
@ -1851,7 +1859,8 @@ int sha512_test(void)
} }
times = 100; times = 100;
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_Sha512Update(&sha, (byte*)large_input, (word32)sizeof(large_input)); ret = wc_Sha512Update(&sha, (byte*)large_input,
(word32)sizeof(large_input));
if (ret != 0) if (ret != 0)
ERROR_OUT(-2260, exit); ERROR_OUT(-2260, exit);
} }
@ -1917,7 +1926,8 @@ int sha384_test(void)
return -2300; return -2300;
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_Sha384Update(&sha, (byte*)test_sha[i].input,(word32)test_sha[i].inLen); ret = wc_Sha384Update(&sha, (byte*)test_sha[i].input,
(word32)test_sha[i].inLen);
if (ret != 0) if (ret != 0)
ERROR_OUT(-2310 - i, exit); ERROR_OUT(-2310 - i, exit);
ret = wc_Sha384GetHash(&sha, hashcopy); ret = wc_Sha384GetHash(&sha, hashcopy);
@ -1945,7 +1955,8 @@ int sha384_test(void)
} }
times = 100; times = 100;
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_Sha384Update(&sha, (byte*)large_input, (word32)sizeof(large_input)); ret = wc_Sha384Update(&sha, (byte*)large_input,
(word32)sizeof(large_input));
if (ret != 0) if (ret != 0)
ERROR_OUT(-2360, exit); ERROR_OUT(-2360, exit);
} }
@ -2004,7 +2015,8 @@ static int sha3_224_test(void)
return -2000; return -2000;
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_Sha3_224_Update(&sha, (byte*)test_sha[i].input,(word32)test_sha[i].inLen); ret = wc_Sha3_224_Update(&sha, (byte*)test_sha[i].input,
(word32)test_sha[i].inLen);
if (ret != 0) if (ret != 0)
ERROR_OUT(-2010 - i, exit); ERROR_OUT(-2010 - i, exit);
ret = wc_Sha3_224_GetHash(&sha, hashcopy); ret = wc_Sha3_224_GetHash(&sha, hashcopy);
@ -2031,7 +2043,8 @@ static int sha3_224_test(void)
} }
times = 100; times = 100;
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_Sha3_224_Update(&sha, (byte*)large_input, (word32)sizeof(large_input)); ret = wc_Sha3_224_Update(&sha, (byte*)large_input,
(word32)sizeof(large_input));
if (ret != 0) if (ret != 0)
ERROR_OUT(-2060, exit); ERROR_OUT(-2060, exit);
} }
@ -2091,7 +2104,8 @@ static int sha3_256_test(void)
return -2100; return -2100;
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_Sha3_256_Update(&sha, (byte*)test_sha[i].input,(word32)test_sha[i].inLen); ret = wc_Sha3_256_Update(&sha, (byte*)test_sha[i].input,
(word32)test_sha[i].inLen);
if (ret != 0) if (ret != 0)
ERROR_OUT(-2110 - i, exit); ERROR_OUT(-2110 - i, exit);
ret = wc_Sha3_256_GetHash(&sha, hashcopy); ret = wc_Sha3_256_GetHash(&sha, hashcopy);
@ -2118,7 +2132,8 @@ static int sha3_256_test(void)
} }
times = 100; times = 100;
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_Sha3_256_Update(&sha, (byte*)large_input, (word32)sizeof(large_input)); ret = wc_Sha3_256_Update(&sha, (byte*)large_input,
(word32)sizeof(large_input));
if (ret != 0) if (ret != 0)
ERROR_OUT(-2160, exit); ERROR_OUT(-2160, exit);
} }
@ -2181,7 +2196,8 @@ static int sha3_384_test(void)
return -2200; return -2200;
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_Sha3_384_Update(&sha, (byte*)test_sha[i].input,(word32)test_sha[i].inLen); ret = wc_Sha3_384_Update(&sha, (byte*)test_sha[i].input,
(word32)test_sha[i].inLen);
if (ret != 0) if (ret != 0)
ERROR_OUT(-2210 - i, exit); ERROR_OUT(-2210 - i, exit);
ret = wc_Sha3_384_GetHash(&sha, hashcopy); ret = wc_Sha3_384_GetHash(&sha, hashcopy);
@ -2209,7 +2225,8 @@ static int sha3_384_test(void)
} }
times = 100; times = 100;
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_Sha3_384_Update(&sha, (byte*)large_input, (word32)sizeof(large_input)); ret = wc_Sha3_384_Update(&sha, (byte*)large_input,
(word32)sizeof(large_input));
if (ret != 0) if (ret != 0)
ERROR_OUT(-2260, exit); ERROR_OUT(-2260, exit);
} }
@ -2275,7 +2292,8 @@ static int sha3_512_test(void)
return -2300; return -2300;
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_Sha3_512_Update(&sha, (byte*)test_sha[i].input,(word32)test_sha[i].inLen); ret = wc_Sha3_512_Update(&sha, (byte*)test_sha[i].input,
(word32)test_sha[i].inLen);
if (ret != 0) if (ret != 0)
ERROR_OUT(-2310 - i, exit); ERROR_OUT(-2310 - i, exit);
ret = wc_Sha3_512_GetHash(&sha, hashcopy); ret = wc_Sha3_512_GetHash(&sha, hashcopy);
@ -2304,7 +2322,8 @@ static int sha3_512_test(void)
} }
times = 100; times = 100;
for (i = 0; i < times; ++i) { for (i = 0; i < times; ++i) {
ret = wc_Sha3_512_Update(&sha, (byte*)large_input, (word32)sizeof(large_input)); ret = wc_Sha3_512_Update(&sha, (byte*)large_input,
(word32)sizeof(large_input));
if (ret != 0) if (ret != 0)
ERROR_OUT(-2360, exit); ERROR_OUT(-2360, exit);
} }
@ -2569,7 +2588,8 @@ int hmac_md5_test(void)
return -2500; return -2500;
} }
ret = wc_HmacSetKey(&hmac, MD5, (byte*)keys[i], (word32)XSTRLEN(keys[i])); ret = wc_HmacSetKey(&hmac, MD5, (byte*)keys[i],
(word32)XSTRLEN(keys[i]));
if (ret != 0) if (ret != 0)
return -2501; return -2501;
ret = wc_HmacUpdate(&hmac, (byte*)test_hmac[i].input, ret = wc_HmacUpdate(&hmac, (byte*)test_hmac[i].input,
@ -2650,7 +2670,8 @@ int hmac_sha_test(void)
if (wc_HmacInit(&hmac, HEAP_HINT, devId) != 0) if (wc_HmacInit(&hmac, HEAP_HINT, devId) != 0)
return -20010; return -20010;
ret = wc_HmacSetKey(&hmac, SHA, (byte*)keys[i], (word32)XSTRLEN(keys[i])); ret = wc_HmacSetKey(&hmac, SHA, (byte*)keys[i],
(word32)XSTRLEN(keys[i]));
if (ret != 0) if (ret != 0)
return -2601; return -2601;
ret = wc_HmacUpdate(&hmac, (byte*)test_hmac[i].input, ret = wc_HmacUpdate(&hmac, (byte*)test_hmac[i].input,
@ -2732,7 +2753,8 @@ int hmac_sha224_test(void)
if (wc_HmacInit(&hmac, HEAP_HINT, devId) != 0) if (wc_HmacInit(&hmac, HEAP_HINT, devId) != 0)
return -2700; return -2700;
ret = wc_HmacSetKey(&hmac, SHA224, (byte*)keys[i],(word32)XSTRLEN(keys[i])); ret = wc_HmacSetKey(&hmac, SHA224, (byte*)keys[i],
(word32)XSTRLEN(keys[i]));
if (ret != 0) if (ret != 0)
return -2701; return -2701;
ret = wc_HmacUpdate(&hmac, (byte*)test_hmac[i].input, ret = wc_HmacUpdate(&hmac, (byte*)test_hmac[i].input,
@ -2817,7 +2839,8 @@ int hmac_sha256_test(void)
if (wc_HmacInit(&hmac, HEAP_HINT, devId) != 0) if (wc_HmacInit(&hmac, HEAP_HINT, devId) != 0)
return -2800; return -2800;
ret = wc_HmacSetKey(&hmac, SHA256, (byte*)keys[i],(word32)XSTRLEN(keys[i])); ret = wc_HmacSetKey(&hmac, SHA256, (byte*)keys[i],
(word32)XSTRLEN(keys[i]));
if (ret != 0) if (ret != 0)
return -2801; return -2801;
ret = wc_HmacUpdate(&hmac, (byte*)test_hmac[i].input, ret = wc_HmacUpdate(&hmac, (byte*)test_hmac[i].input,
@ -2998,7 +3021,8 @@ int hmac_sha384_test(void)
if (wc_HmacInit(&hmac, HEAP_HINT, devId) != 0) if (wc_HmacInit(&hmac, HEAP_HINT, devId) != 0)
return -3000; return -3000;
ret = wc_HmacSetKey(&hmac, SHA384, (byte*)keys[i],(word32)XSTRLEN(keys[i])); ret = wc_HmacSetKey(&hmac, SHA384, (byte*)keys[i],
(word32)XSTRLEN(keys[i]));
if (ret != 0) if (ret != 0)
return -3001; return -3001;
ret = wc_HmacUpdate(&hmac, (byte*)test_hmac[i].input, ret = wc_HmacUpdate(&hmac, (byte*)test_hmac[i].input,
@ -3089,7 +3113,8 @@ int hmac_sha512_test(void)
if (wc_HmacInit(&hmac, HEAP_HINT, devId) != 0) if (wc_HmacInit(&hmac, HEAP_HINT, devId) != 0)
return -3100; return -3100;
ret = wc_HmacSetKey(&hmac, SHA512, (byte*)keys[i],(word32)XSTRLEN(keys[i])); ret = wc_HmacSetKey(&hmac, SHA512, (byte*)keys[i],
(word32)XSTRLEN(keys[i]));
if (ret != 0) if (ret != 0)
return -3101; return -3101;
ret = wc_HmacUpdate(&hmac, (byte*)test_hmac[i].input, ret = wc_HmacUpdate(&hmac, (byte*)test_hmac[i].input,
@ -3656,7 +3681,7 @@ int poly1305_test(void)
/* Check fail of TLS MAC function if altering additional data */ /* Check fail of TLS MAC function if altering additional data */
XMEMSET(tag, 0, sizeof(tag)); XMEMSET(tag, 0, sizeof(tag));
additional[0] = additional[0] + 1; additional[0]++;
ret = wc_Poly1305_MAC(&enc, additional, sizeof(additional), ret = wc_Poly1305_MAC(&enc, additional, sizeof(additional),
(byte*)msg4, sizeof(msg4), tag, sizeof(tag)); (byte*)msg4, sizeof(msg4), tag, sizeof(tag));
if (ret != 0) if (ret != 0)
@ -5511,7 +5536,7 @@ int aesgcm_test(void)
#ifdef BENCH_AESGCM_LARGE #ifdef BENCH_AESGCM_LARGE
/* setup test buffer */ /* setup test buffer */
for (alen=0; alen<BENCH_AESGCM_LARGE; alen++) for (alen=0; alen<BENCH_AESGCM_LARGE; alen++)
large_input[alen] = alen; large_input[alen] = (byte)alen;
/* AES-GCM encrypt and decrypt both use AES encrypt internally */ /* AES-GCM encrypt and decrypt both use AES encrypt internally */
result = wc_AesGcmEncrypt(&enc, large_output, large_input, result = wc_AesGcmEncrypt(&enc, large_output, large_input,
@ -5539,15 +5564,15 @@ int aesgcm_test(void)
/* Variable IV length test */ /* Variable IV length test */
for (ivlen=0; ivlen<(int)sizeof(k1); ivlen++) { for (ivlen=0; ivlen<(int)sizeof(k1); ivlen++) {
/* AES-GCM encrypt and decrypt both use AES encrypt internally */ /* AES-GCM encrypt and decrypt both use AES encrypt internally */
result = wc_AesGcmEncrypt(&enc, resultC, p, sizeof(p), k1, ivlen, result = wc_AesGcmEncrypt(&enc, resultC, p, sizeof(p), k1,
resultT, sizeof(resultT), a, sizeof(a)); (word32)ivlen, resultT, sizeof(resultT), a, sizeof(a));
#if defined(WOLFSSL_ASYNC_CRYPT) #if defined(WOLFSSL_ASYNC_CRYPT)
result = wc_AsyncWait(result, &enc.asyncDev, WC_ASYNC_FLAG_NONE); result = wc_AsyncWait(result, &enc.asyncDev, WC_ASYNC_FLAG_NONE);
#endif #endif
if (result != 0) if (result != 0)
return -4310; return -4310;
result = wc_AesGcmDecrypt(&enc, resultP, resultC, sizeof(resultC), k1, result = wc_AesGcmDecrypt(&enc, resultP, resultC, sizeof(resultC), k1,
ivlen, resultT, sizeof(resultT), a, sizeof(a)); (word32)ivlen, resultT, sizeof(resultT), a, sizeof(a));
#if defined(WOLFSSL_ASYNC_CRYPT) #if defined(WOLFSSL_ASYNC_CRYPT)
result = wc_AsyncWait(result, &enc.asyncDev, WC_ASYNC_FLAG_NONE); result = wc_AsyncWait(result, &enc.asyncDev, WC_ASYNC_FLAG_NONE);
#endif #endif
@ -5560,14 +5585,14 @@ int aesgcm_test(void)
for (alen=0; alen<(int)sizeof(p); alen++) { for (alen=0; alen<(int)sizeof(p); alen++) {
/* AES-GCM encrypt and decrypt both use AES encrypt internally */ /* AES-GCM encrypt and decrypt both use AES encrypt internally */
result = wc_AesGcmEncrypt(&enc, resultC, p, sizeof(p), iv1, result = wc_AesGcmEncrypt(&enc, resultC, p, sizeof(p), iv1,
sizeof(iv1), resultT, sizeof(resultT), p, alen); sizeof(iv1), resultT, sizeof(resultT), p, (word32)alen);
#if defined(WOLFSSL_ASYNC_CRYPT) #if defined(WOLFSSL_ASYNC_CRYPT)
result = wc_AsyncWait(result, &enc.asyncDev, WC_ASYNC_FLAG_NONE); result = wc_AsyncWait(result, &enc.asyncDev, WC_ASYNC_FLAG_NONE);
#endif #endif
if (result != 0) if (result != 0)
return -4312; return -4312;
result = wc_AesGcmDecrypt(&enc, resultP, resultC, sizeof(resultC), iv1, result = wc_AesGcmDecrypt(&enc, resultP, resultC, sizeof(resultC), iv1,
sizeof(iv1), resultT, sizeof(resultT), p, alen); sizeof(iv1), resultT, sizeof(resultT), p, (word32)alen);
#if defined(WOLFSSL_ASYNC_CRYPT) #if defined(WOLFSSL_ASYNC_CRYPT)
result = wc_AsyncWait(result, &enc.asyncDev, WC_ASYNC_FLAG_NONE); result = wc_AsyncWait(result, &enc.asyncDev, WC_ASYNC_FLAG_NONE);
#endif #endif
@ -5578,14 +5603,14 @@ int aesgcm_test(void)
/* Variable plain text length test */ /* Variable plain text length test */
for (plen=1; plen<(int)sizeof(p); plen++) { for (plen=1; plen<(int)sizeof(p); plen++) {
/* AES-GCM encrypt and decrypt both use AES encrypt internally */ /* AES-GCM encrypt and decrypt both use AES encrypt internally */
result = wc_AesGcmEncrypt(&enc, resultC, p, plen, iv1, sizeof(iv1), result = wc_AesGcmEncrypt(&enc, resultC, p, (word32)plen, iv1,
resultT, sizeof(resultT), a, sizeof(a)); sizeof(iv1), resultT, sizeof(resultT), a, sizeof(a));
#if defined(WOLFSSL_ASYNC_CRYPT) #if defined(WOLFSSL_ASYNC_CRYPT)
result = wc_AsyncWait(result, &enc.asyncDev, WC_ASYNC_FLAG_NONE); result = wc_AsyncWait(result, &enc.asyncDev, WC_ASYNC_FLAG_NONE);
#endif #endif
if (result != 0) if (result != 0)
return -4314; return -4314;
result = wc_AesGcmDecrypt(&enc, resultP, resultC, plen, iv1, result = wc_AesGcmDecrypt(&enc, resultP, resultC, (word32)plen, iv1,
sizeof(iv1), resultT, sizeof(resultT), a, sizeof(a)); sizeof(iv1), resultT, sizeof(resultT), a, sizeof(a));
#if defined(WOLFSSL_ASYNC_CRYPT) #if defined(WOLFSSL_ASYNC_CRYPT)
result = wc_AsyncWait(result, &enc.asyncDev, WC_ASYNC_FLAG_NONE); result = wc_AsyncWait(result, &enc.asyncDev, WC_ASYNC_FLAG_NONE);
@ -6143,8 +6168,8 @@ int camellia_test(void)
return testVectors[i].errorCode; return testVectors[i].errorCode;
break; break;
case CAM_CBC_DEC: case CAM_CBC_DEC:
ret = wc_CamelliaCbcDecrypt(&cam, out, testVectors[i].ciphertext, ret = wc_CamelliaCbcDecrypt(&cam, out,
CAMELLIA_BLOCK_SIZE); testVectors[i].ciphertext, CAMELLIA_BLOCK_SIZE);
if (ret != 0 || XMEMCMP(out, testVectors[i].plaintext, if (ret != 0 || XMEMCMP(out, testVectors[i].plaintext,
CAMELLIA_BLOCK_SIZE)) CAMELLIA_BLOCK_SIZE))
return testVectors[i].errorCode; return testVectors[i].errorCode;
@ -7158,7 +7183,7 @@ static int rsa_sig_test(RsaKey* key, word32 keyLen, int modLen, WC_RNG* rng)
if (ret != BAD_FUNC_ARG) if (ret != BAD_FUNC_ARG)
return -5339; return -5339;
sigSz = modLen; sigSz = (word32)modLen;
ret = wc_SignatureGenerate(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, NULL, ret = wc_SignatureGenerate(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, NULL,
inLen, out, &sigSz, key, keyLen, rng); inLen, out, &sigSz, key, keyLen, rng);
if (ret != BAD_FUNC_ARG) if (ret != BAD_FUNC_ARG)
@ -7208,15 +7233,15 @@ static int rsa_sig_test(RsaKey* key, word32 keyLen, int modLen, WC_RNG* rng)
return -5347; return -5347;
ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, NULL, ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, NULL,
inLen, out, modLen, key, keyLen); inLen, out, (word32)modLen, key, keyLen);
if (ret != BAD_FUNC_ARG) if (ret != BAD_FUNC_ARG)
return -5348; return -5348;
ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, in, ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, in,
0, out, modLen, key, keyLen); 0, out, (word32)modLen, key, keyLen);
if (ret != BAD_FUNC_ARG) if (ret != BAD_FUNC_ARG)
return -5349; return -5349;
ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, in, ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, in,
inLen, NULL, modLen, key, keyLen); inLen, NULL, (word32)modLen, key, keyLen);
if (ret != BAD_FUNC_ARG) if (ret != BAD_FUNC_ARG)
return -5350; return -5350;
ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, in, ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, in,
@ -7224,11 +7249,11 @@ static int rsa_sig_test(RsaKey* key, word32 keyLen, int modLen, WC_RNG* rng)
if (ret != BAD_FUNC_ARG) if (ret != BAD_FUNC_ARG)
return -5351; return -5351;
ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, in, ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, in,
inLen, out, modLen, NULL, keyLen); inLen, out, (word32)modLen, NULL, keyLen);
if (ret != BAD_FUNC_ARG) if (ret != BAD_FUNC_ARG)
return -5352; return -5352;
ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, in, ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, in,
inLen, out, modLen, key, 0); inLen, out, (word32)modLen, key, 0);
if (ret != BAD_FUNC_ARG) if (ret != BAD_FUNC_ARG)
return -5353; return -5353;
@ -7246,14 +7271,14 @@ static int rsa_sig_test(RsaKey* key, word32 keyLen, int modLen, WC_RNG* rng)
if (ret != modLen) if (ret != modLen)
return -5356; return -5356;
sigSz = ret; sigSz = (word32)ret;
ret = wc_SignatureGenerate(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, in, ret = wc_SignatureGenerate(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, in,
inLen, out, &sigSz, key, keyLen, rng); inLen, out, &sigSz, key, keyLen, rng);
if (ret != 0) if (ret != 0)
return -5357; return -5357;
ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, in, ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, in,
inLen, out, modLen, key, keyLen); inLen, out, (word32)modLen, key, keyLen);
if (ret != 0) if (ret != 0)
return -5358; return -5358;
@ -7264,13 +7289,13 @@ static int rsa_sig_test(RsaKey* key, word32 keyLen, int modLen, WC_RNG* rng)
return -5359; return -5359;
ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA_W_ENC, ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA_W_ENC,
in, inLen, out, modLen, key, keyLen); in, inLen, out, (word32)modLen, key, keyLen);
if (ret != 0) if (ret != 0)
return -5360; return -5360;
/* Wrong signature type. */ /* Wrong signature type. */
ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, in, ret = wc_SignatureVerify(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_RSA, in,
inLen, out, modLen, key, keyLen); inLen, out, (word32)modLen, key, keyLen);
if (ret == 0) if (ret == 0)
return -5361; return -5361;
@ -7601,13 +7626,13 @@ int rsa_test(void)
#endif #endif
#ifdef USE_CERT_BUFFERS_1024 #ifdef USE_CERT_BUFFERS_1024
bytes = sizeof_client_key_der_1024; bytes = (size_t)sizeof_client_key_der_1024;
if (bytes < (size_t)sizeof_client_cert_der_1024) if (bytes < (size_t)sizeof_client_cert_der_1024)
bytes = sizeof_client_cert_der_1024; bytes = (size_t)sizeof_client_cert_der_1024;
#elif defined(USE_CERT_BUFFERS_2048) #elif defined(USE_CERT_BUFFERS_2048)
bytes = sizeof_client_key_der_2048; bytes = (size_t)sizeof_client_key_der_2048;
if (bytes < (size_t)sizeof_client_cert_der_2048) if (bytes < (size_t)sizeof_client_cert_der_2048)
bytes = sizeof_client_cert_der_2048; bytes = (size_t)sizeof_client_cert_der_2048;
#else #else
bytes = FOURK_BUF; bytes = FOURK_BUF;
#endif #endif
@ -7622,9 +7647,9 @@ int rsa_test(void)
} }
#ifdef USE_CERT_BUFFERS_1024 #ifdef USE_CERT_BUFFERS_1024
XMEMCPY(tmp, client_key_der_1024, sizeof_client_key_der_1024); XMEMCPY(tmp, client_key_der_1024, (size_t)sizeof_client_key_der_1024);
#elif defined(USE_CERT_BUFFERS_2048) #elif defined(USE_CERT_BUFFERS_2048)
XMEMCPY(tmp, client_key_der_2048, sizeof_client_key_der_2048); XMEMCPY(tmp, client_key_der_2048, (size_t)sizeof_client_key_der_2048);
#elif !defined(NO_FILESYSTEM) #elif !defined(NO_FILESYSTEM)
file = fopen(clientKey, "rb"); file = fopen(clientKey, "rb");
if (!file) { if (!file) {
@ -7687,7 +7712,7 @@ int rsa_test(void)
} }
#endif #endif
idx = ret; /* save off encrypted length */ idx = (word32)ret; /* save off encrypted length */
do { do {
#if defined(WOLFSSL_ASYNC_CRYPT) #if defined(WOLFSSL_ASYNC_CRYPT)
ret = wc_AsyncWait(ret, &key.asyncDev, WC_ASYNC_FLAG_CALL_AGAIN); ret = wc_AsyncWait(ret, &key.asyncDev, WC_ASYNC_FLAG_CALL_AGAIN);
@ -7733,7 +7758,7 @@ int rsa_test(void)
ERROR_OUT(-5513, exit_rsa); ERROR_OUT(-5513, exit_rsa);
} }
idx = ret; idx = (word32)ret;
XMEMSET(plain, 0, plainSz); XMEMSET(plain, 0, plainSz);
do { do {
#if defined(WOLFSSL_ASYNC_CRYPT) #if defined(WOLFSSL_ASYNC_CRYPT)
@ -7747,7 +7772,7 @@ int rsa_test(void)
ERROR_OUT(-5514, exit_rsa); ERROR_OUT(-5514, exit_rsa);
} }
if (XMEMCMP(plain, in, ret)) { if (XMEMCMP(plain, in, (size_t)ret)) {
ERROR_OUT(-5515, exit_rsa); ERROR_OUT(-5515, exit_rsa);
} }
@ -7771,7 +7796,7 @@ int rsa_test(void)
ERROR_OUT(-5516, exit_rsa); ERROR_OUT(-5516, exit_rsa);
} }
idx = ret; idx = (word32)ret;
do { do {
#if defined(WOLFSSL_ASYNC_CRYPT) #if defined(WOLFSSL_ASYNC_CRYPT)
ret = wc_AsyncWait(ret, &key.asyncDev, WC_ASYNC_FLAG_CALL_AGAIN); ret = wc_AsyncWait(ret, &key.asyncDev, WC_ASYNC_FLAG_CALL_AGAIN);
@ -7805,7 +7830,7 @@ int rsa_test(void)
ERROR_OUT(-5519, exit_rsa); ERROR_OUT(-5519, exit_rsa);
} }
idx = ret; idx = (word32)ret;
do { do {
#if defined(WOLFSSL_ASYNC_CRYPT) #if defined(WOLFSSL_ASYNC_CRYPT)
ret = wc_AsyncWait(ret, &key.asyncDev, WC_ASYNC_FLAG_CALL_AGAIN); ret = wc_AsyncWait(ret, &key.asyncDev, WC_ASYNC_FLAG_CALL_AGAIN);
@ -7859,7 +7884,7 @@ int rsa_test(void)
/* TODO: investigate why Cavium Nitrox doesn't detect decrypt error here */ /* TODO: investigate why Cavium Nitrox doesn't detect decrypt error here */
#ifndef HAVE_CAVIUM #ifndef HAVE_CAVIUM
idx = ret; idx = (word32)ret;
do { do {
#if defined(WOLFSSL_ASYNC_CRYPT) #if defined(WOLFSSL_ASYNC_CRYPT)
ret = wc_AsyncWait(ret, &key.asyncDev, WC_ASYNC_FLAG_CALL_AGAIN); ret = wc_AsyncWait(ret, &key.asyncDev, WC_ASYNC_FLAG_CALL_AGAIN);
@ -7890,7 +7915,7 @@ int rsa_test(void)
ERROR_OUT(-5527, exit_rsa); ERROR_OUT(-5527, exit_rsa);
} }
idx = ret; idx = (word32)ret;
do { do {
#if defined(WOLFSSL_ASYNC_CRYPT) #if defined(WOLFSSL_ASYNC_CRYPT)
ret = wc_AsyncWait(ret, &key.asyncDev, WC_ASYNC_FLAG_CALL_AGAIN); ret = wc_AsyncWait(ret, &key.asyncDev, WC_ASYNC_FLAG_CALL_AGAIN);
@ -7926,14 +7951,15 @@ int rsa_test(void)
/* TODO: investigate why Cavium Nitrox doesn't detect decrypt error here */ /* TODO: investigate why Cavium Nitrox doesn't detect decrypt error here */
#ifndef HAVE_CAVIUM #ifndef HAVE_CAVIUM
idx = ret; idx = (word32)ret;
do { do {
#if defined(WOLFSSL_ASYNC_CRYPT) #if defined(WOLFSSL_ASYNC_CRYPT)
ret = wc_AsyncWait(ret, &key.asyncDev, WC_ASYNC_FLAG_CALL_AGAIN); ret = wc_AsyncWait(ret, &key.asyncDev, WC_ASYNC_FLAG_CALL_AGAIN);
#endif #endif
if (ret >= 0) { if (ret >= 0) {
ret = wc_RsaPrivateDecrypt_ex(out, idx, plain, plainSz, &key, ret = wc_RsaPrivateDecrypt_ex(out, idx, plain, plainSz, &key,
WC_RSA_OAEP_PAD, WC_HASH_TYPE_SHA256, WC_MGF1SHA256, in, inLen); WC_RSA_OAEP_PAD, WC_HASH_TYPE_SHA256, WC_MGF1SHA256,
in, inLen);
} }
} while (ret == WC_PENDING_E); } while (ret == WC_PENDING_E);
if (ret > 0) { /* should fail */ if (ret > 0) { /* should fail */
@ -7999,7 +8025,7 @@ int rsa_test(void)
ERROR_OUT(-5535, exit_rsa); ERROR_OUT(-5535, exit_rsa);
} }
idx = ret; idx = (word32)ret;
do { do {
#if defined(WOLFSSL_ASYNC_CRYPT) #if defined(WOLFSSL_ASYNC_CRYPT)
ret = wc_AsyncWait(ret, &key.asyncDev, WC_ASYNC_FLAG_CALL_AGAIN); ret = wc_AsyncWait(ret, &key.asyncDev, WC_ASYNC_FLAG_CALL_AGAIN);
@ -8028,11 +8054,11 @@ int rsa_test(void)
#endif #endif
#ifdef USE_CERT_BUFFERS_1024 #ifdef USE_CERT_BUFFERS_1024
XMEMCPY(tmp, client_cert_der_1024, sizeof_client_cert_der_1024); XMEMCPY(tmp, client_cert_der_1024, (size_t)sizeof_client_cert_der_1024);
bytes = sizeof_client_cert_der_1024; bytes = (size_t)sizeof_client_cert_der_1024;
#elif defined(USE_CERT_BUFFERS_2048) #elif defined(USE_CERT_BUFFERS_2048)
XMEMCPY(tmp, client_cert_der_2048, sizeof_client_cert_der_2048); XMEMCPY(tmp, client_cert_der_2048, (size_t)sizeof_client_cert_der_2048);
bytes = sizeof_client_cert_der_2048; bytes = (size_t)sizeof_client_cert_der_2048;
#elif !defined(NO_FILESYSTEM) #elif !defined(NO_FILESYSTEM)
file2 = fopen(clientCert, "rb"); file2 = fopen(clientCert, "rb");
if (!file2) { if (!file2) {
@ -9100,11 +9126,11 @@ int dh_test(void)
WC_RNG rng; WC_RNG rng;
#ifdef USE_CERT_BUFFERS_1024 #ifdef USE_CERT_BUFFERS_1024
XMEMCPY(tmp, dh_key_der_1024, sizeof_dh_key_der_1024); XMEMCPY(tmp, dh_key_der_1024, (size_t)sizeof_dh_key_der_1024);
bytes = sizeof_dh_key_der_1024; bytes = (size_t)sizeof_dh_key_der_1024;
#elif defined(USE_CERT_BUFFERS_2048) #elif defined(USE_CERT_BUFFERS_2048)
XMEMCPY(tmp, dh_key_der_2048, sizeof_dh_key_der_2048); XMEMCPY(tmp, dh_key_der_2048, (size_t)sizeof_dh_key_der_2048);
bytes = sizeof_dh_key_der_2048; bytes = (size_t)sizeof_dh_key_der_2048;
#elif defined(NO_ASN) #elif defined(NO_ASN)
/* don't use file, no DER parsing */ /* don't use file, no DER parsing */
#elif !defined(NO_FILESYSTEM) #elif !defined(NO_FILESYSTEM)
@ -9806,7 +9832,8 @@ int openssl_test(void)
byte plain [AES_BLOCK_SIZE * 4]; byte plain [AES_BLOCK_SIZE * 4];
EVP_CIPHER_CTX_init(&ctx); EVP_CIPHER_CTX_init(&ctx);
if (EVP_CipherInit(&ctx, EVP_aes_256_ecb(), (unsigned char*)key, NULL, 1) == 0) if (EVP_CipherInit(&ctx, EVP_aes_256_ecb(), (unsigned char*)key,
NULL, 1) == 0)
return -5918; return -5918;
if (EVP_Cipher(&ctx, cipher, (byte*)msg, 16) == 0) if (EVP_Cipher(&ctx, cipher, (byte*)msg, 16) == 0)
@ -9816,7 +9843,8 @@ int openssl_test(void)
return -5920; return -5920;
EVP_CIPHER_CTX_init(&ctx); EVP_CIPHER_CTX_init(&ctx);
if (EVP_CipherInit(&ctx, EVP_aes_256_ecb(), (unsigned char*)key, NULL, 0) == 0) if (EVP_CipherInit(&ctx, EVP_aes_256_ecb(), (unsigned char*)key,
NULL, 0) == 0)
return -5921; return -5921;
if (EVP_Cipher(&ctx, plain, cipher, 16) == 0) if (EVP_Cipher(&ctx, plain, cipher, 16) == 0)
@ -10003,14 +10031,16 @@ int openssl_test(void)
if (EVP_CipherInit(&en, EVP_aes_128_ctr(), if (EVP_CipherInit(&en, EVP_aes_128_ctr(),
(unsigned char*)ctrKey, (unsigned char*)ctrIv, 0) == 0) (unsigned char*)ctrKey, (unsigned char*)ctrIv, 0) == 0)
return -5924; return -5924;
if (EVP_Cipher(&en, (byte*)cipherBuff, (byte*)ctrPlain, AES_BLOCK_SIZE*4) == 0) if (EVP_Cipher(&en, (byte*)cipherBuff, (byte*)ctrPlain,
AES_BLOCK_SIZE*4) == 0)
return -5925; return -5925;
EVP_CIPHER_CTX_init(&de); EVP_CIPHER_CTX_init(&de);
if (EVP_CipherInit(&de, EVP_aes_128_ctr(), if (EVP_CipherInit(&de, EVP_aes_128_ctr(),
(unsigned char*)ctrKey, (unsigned char*)ctrIv, 0) == 0) (unsigned char*)ctrKey, (unsigned char*)ctrIv, 0) == 0)
return -5926; return -5926;
if (EVP_Cipher(&de, (byte*)plainBuff, (byte*)cipherBuff, AES_BLOCK_SIZE*4) == 0) if (EVP_Cipher(&de, (byte*)plainBuff, (byte*)cipherBuff,
AES_BLOCK_SIZE*4) == 0)
return -5927; return -5927;
if (XMEMCMP(cipherBuff, ctrCipher, AES_BLOCK_SIZE*4)) if (XMEMCMP(cipherBuff, ctrCipher, AES_BLOCK_SIZE*4))
@ -10026,13 +10056,15 @@ int openssl_test(void)
if (EVP_CipherInit(p_en, EVP_aes_128_ctr(), if (EVP_CipherInit(p_en, EVP_aes_128_ctr(),
(unsigned char*)ctrKey, (unsigned char*)ctrIv, 0) == 0) (unsigned char*)ctrKey, (unsigned char*)ctrIv, 0) == 0)
return -5932; return -5932;
if (EVP_Cipher(p_en, (byte*)cipherBuff, (byte*)ctrPlain, AES_BLOCK_SIZE*4) == 0) if (EVP_Cipher(p_en, (byte*)cipherBuff, (byte*)ctrPlain,
AES_BLOCK_SIZE*4) == 0)
return -5933; return -5933;
if (EVP_CipherInit(p_de, EVP_aes_128_ctr(), if (EVP_CipherInit(p_de, EVP_aes_128_ctr(),
(unsigned char*)ctrKey, (unsigned char*)ctrIv, 0) == 0) (unsigned char*)ctrKey, (unsigned char*)ctrIv, 0) == 0)
return -5934; return -5934;
if (EVP_Cipher(p_de, (byte*)plainBuff, (byte*)cipherBuff, AES_BLOCK_SIZE*4) == 0) if (EVP_Cipher(p_de, (byte*)plainBuff, (byte*)cipherBuff,
AES_BLOCK_SIZE*4) == 0)
return -5935; return -5935;
wolfSSL_EVP_CIPHER_CTX_free(p_en); wolfSSL_EVP_CIPHER_CTX_free(p_en);
@ -10077,7 +10109,8 @@ int openssl_test(void)
if (EVP_CipherInit(&en, EVP_aes_192_ctr(), if (EVP_CipherInit(&en, EVP_aes_192_ctr(),
(unsigned char*)ctr192Key, (unsigned char*)ctr192Iv, 0) == 0) (unsigned char*)ctr192Key, (unsigned char*)ctr192Iv, 0) == 0)
return -5948; return -5948;
if (EVP_Cipher(&en, (byte*)cipherBuff, (byte*)ctr192Plain, AES_BLOCK_SIZE) == 0) if (EVP_Cipher(&en, (byte*)cipherBuff, (byte*)ctr192Plain,
AES_BLOCK_SIZE) == 0)
return -5949; return -5949;
EVP_CIPHER_CTX_init(&de); EVP_CIPHER_CTX_init(&de);
if (EVP_CipherInit(&de, EVP_aes_192_ctr(), if (EVP_CipherInit(&de, EVP_aes_192_ctr(),
@ -10085,7 +10118,8 @@ int openssl_test(void)
return -5950; return -5950;
XMEMSET(plainBuff, 0, sizeof(plainBuff)); XMEMSET(plainBuff, 0, sizeof(plainBuff));
if (EVP_Cipher(&de, (byte*)plainBuff, (byte*)cipherBuff, AES_BLOCK_SIZE) == 0) if (EVP_Cipher(&de, (byte*)plainBuff, (byte*)cipherBuff,
AES_BLOCK_SIZE) == 0)
return -5951; return -5951;
if (XMEMCMP(plainBuff, ctr192Plain, sizeof(ctr192Plain))) if (XMEMCMP(plainBuff, ctr192Plain, sizeof(ctr192Plain)))
@ -10097,7 +10131,8 @@ int openssl_test(void)
if (EVP_CipherInit(&en, EVP_aes_256_ctr(), if (EVP_CipherInit(&en, EVP_aes_256_ctr(),
(unsigned char*)ctr256Key, (unsigned char*)ctr256Iv, 0) == 0) (unsigned char*)ctr256Key, (unsigned char*)ctr256Iv, 0) == 0)
return -5954; return -5954;
if (EVP_Cipher(&en, (byte*)cipherBuff, (byte*)ctr256Plain, AES_BLOCK_SIZE) == 0) if (EVP_Cipher(&en, (byte*)cipherBuff, (byte*)ctr256Plain,
AES_BLOCK_SIZE) == 0)
return -5955; return -5955;
EVP_CIPHER_CTX_init(&de); EVP_CIPHER_CTX_init(&de);
if (EVP_CipherInit(&de, EVP_aes_256_ctr(), if (EVP_CipherInit(&de, EVP_aes_256_ctr(),
@ -10105,7 +10140,8 @@ int openssl_test(void)
return -5956; return -5956;
XMEMSET(plainBuff, 0, sizeof(plainBuff)); XMEMSET(plainBuff, 0, sizeof(plainBuff));
if (EVP_Cipher(&de, (byte*)plainBuff, (byte*)cipherBuff, AES_BLOCK_SIZE) == 0) if (EVP_Cipher(&de, (byte*)plainBuff, (byte*)cipherBuff,
AES_BLOCK_SIZE) == 0)
return -5957; return -5957;
if (XMEMCMP(plainBuff, ctr256Plain, sizeof(ctr256Plain))) if (XMEMCMP(plainBuff, ctr256Plain, sizeof(ctr256Plain)))
@ -10145,13 +10181,15 @@ int openssl_test(void)
if (EVP_CipherInit(&en, EVP_aes_128_cbc(), if (EVP_CipherInit(&en, EVP_aes_128_cbc(),
(unsigned char*)key, (unsigned char*)iv, 1) == 0) (unsigned char*)key, (unsigned char*)iv, 1) == 0)
return -5960; return -5960;
if (EVP_CipherUpdate(&en, (byte*)cipher, &outlen, (byte*)cbcPlain, 9) == 0) if (EVP_CipherUpdate(&en, (byte*)cipher, &outlen,
(byte*)cbcPlain, 9) == 0)
return -5961; return -5961;
if(outlen != 0) if(outlen != 0)
return -5962; return -5962;
total += outlen; total += outlen;
if (EVP_CipherUpdate(&en, (byte*)&cipher[total], &outlen, (byte*)&cbcPlain[9] , 9) == 0) if (EVP_CipherUpdate(&en, (byte*)&cipher[total], &outlen,
(byte*)&cbcPlain[9] , 9) == 0)
return -5963; return -5963;
if(outlen != 16) if(outlen != 16)
return -5964; return -5964;
@ -10177,12 +10215,14 @@ int openssl_test(void)
return -5970; return -5970;
total += outlen; total += outlen;
if (EVP_CipherUpdate(&de, (byte*)&plain[total], &outlen, (byte*)&cipher[6], 12) == 0) if (EVP_CipherUpdate(&de, (byte*)&plain[total], &outlen,
(byte*)&cipher[6], 12) == 0)
return -5971; return -5971;
if(outlen != 0) if(outlen != 0)
total += outlen; total += outlen;
if (EVP_CipherUpdate(&de, (byte*)&plain[total], &outlen, (byte*)&cipher[6+12], 14) == 0) if (EVP_CipherUpdate(&de, (byte*)&plain[total], &outlen,
(byte*)&cipher[6+12], 14) == 0)
return -5972; return -5972;
if(outlen != 16) if(outlen != 16)
return -5973; return -5973;
@ -10740,7 +10780,7 @@ static int ecc_test_vector(int keySize)
eccVector vec; eccVector vec;
XMEMSET(&vec, 0, sizeof(vec)); XMEMSET(&vec, 0, sizeof(vec));
vec.keySize = keySize; vec.keySize = (word32)keySize;
switch(keySize) { switch(keySize) {
@ -10995,8 +11035,8 @@ static int ecc_test_make_pub(WC_RNG* rng)
ecc_point* pubPoint = NULL; ecc_point* pubPoint = NULL;
#ifdef USE_CERT_BUFFERS_256 #ifdef USE_CERT_BUFFERS_256
XMEMCPY(tmp, ecc_key_der_256, sizeof_ecc_key_der_256); XMEMCPY(tmp, ecc_key_der_256, (size_t)sizeof_ecc_key_der_256);
tmpSz = sizeof_ecc_key_der_256; tmpSz = (size_t)sizeof_ecc_key_der_256;
#else #else
FILE* file; FILE* file;
file = fopen(eccCaKeyFile, "rb"); file = fopen(eccCaKeyFile, "rb");
@ -11553,12 +11593,14 @@ static int ecc_test_curve(WC_RNG* rng, int keySize)
{ {
int ret; int ret;
ret = ecc_test_curve_size(rng, keySize, ECC_TEST_VERIFY_COUNT, ECC_CURVE_DEF, NULL); ret = ecc_test_curve_size(rng, keySize, ECC_TEST_VERIFY_COUNT,
ECC_CURVE_DEF, NULL);
if (ret < 0) { if (ret < 0) {
if (ret == ECC_CURVE_OID_E) { if (ret == ECC_CURVE_OID_E) {
/* ignore error for curves not found */ /* ignore error for curves not found */
/* some curve sizes are only available with: /* some curve sizes are only available with:
HAVE_ECC_SECPR2, HAVE_ECC_SECPR3, HAVE_ECC_BRAINPOOL and HAVE_ECC_KOBLITZ */ HAVE_ECC_SECPR2, HAVE_ECC_SECPR3, HAVE_ECC_BRAINPOOL
and HAVE_ECC_KOBLITZ */
} }
else { else {
printf("ecc_test_curve_size %d failed!: %d\n", keySize, ret); printf("ecc_test_curve_size %d failed!: %d\n", keySize, ret);
@ -11824,7 +11866,7 @@ static int ecc_sig_test(WC_RNG* rng, ecc_key* key)
if (ret != size) if (ret != size)
return -6628; return -6628;
sigSz = ret; sigSz = (word32)ret;
ret = wc_SignatureGenerate(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_ECC, in, ret = wc_SignatureGenerate(WC_HASH_TYPE_SHA256, WC_SIGNATURE_TYPE_ECC, in,
inLen, out, &sigSz, key, sizeof(*key), rng); inLen, out, &sigSz, key, sizeof(*key), rng);
if (ret != 0) if (ret != 0)
@ -12508,7 +12550,7 @@ int ecc_test_buffers(void) {
int verify = 0; int verify = 0;
word32 x; word32 x;
bytes = sizeof_ecc_clikey_der_256; bytes = (size_t)sizeof_ecc_clikey_der_256;
/* place client key into ecc_key struct cliKey */ /* place client key into ecc_key struct cliKey */
ret = wc_EccPrivateKeyDecode(ecc_clikey_der_256, &idx, &cliKey, ret = wc_EccPrivateKeyDecode(ecc_clikey_der_256, &idx, &cliKey,
(word32)bytes); (word32)bytes);
@ -12516,7 +12558,7 @@ int ecc_test_buffers(void) {
return -6915; return -6915;
idx = 0; idx = 0;
bytes = sizeof_ecc_key_der_256; bytes = (size_t)sizeof_ecc_key_der_256;
/* place server key into ecc_key struct servKey */ /* place server key into ecc_key struct servKey */
ret = wc_EccPrivateKeyDecode(ecc_key_der_256, &idx, &servKey, ret = wc_EccPrivateKeyDecode(ecc_key_der_256, &idx, &servKey,
@ -12563,7 +12605,7 @@ int ecc_test_buffers(void) {
if (ret < 0) if (ret < 0)
return -6922; return -6922;
if (XMEMCMP(plain, in, ret)) if (XMEMCMP(plain, in, (word32)ret))
return -6923; return -6923;
#ifdef WOLFSSL_CERT_EXT #ifdef WOLFSSL_CERT_EXT
@ -13313,8 +13355,13 @@ int ed25519_test(void)
}; };
static const byte* msgs[] = {msg1, msg2, msg3, msg1, msg1, msg4}; static const byte* msgs[] = {msg1, msg2, msg3, msg1, msg1, msg4};
static const word16 msgSz[] = {0 /*sizeof(msg1)*/, sizeof(msg2), sizeof(msg3), static const word16 msgSz[] = {0 /*sizeof(msg1)*/,
0 /*sizeof(msg1)*/, 0 /*sizeof(msg1)*/, sizeof(msg4)}; sizeof(msg2),
sizeof(msg3),
0 /*sizeof(msg1)*/,
0 /*sizeof(msg1)*/,
sizeof(msg4)
};
#endif /* HAVE_ED25519_SIGN && HAVE_ED25519_KEY_EXPORT && HAVE_ED25519_KEY_IMPORT */ #endif /* HAVE_ED25519_SIGN && HAVE_ED25519_KEY_EXPORT && HAVE_ED25519_KEY_IMPORT */
/* create ed25519 keys */ /* create ed25519 keys */