Fix for free() issue on the ecc-stack example. Requires PR https://github.com/wolfSSL/wolfssl/pull/1711

pull/97/head
David Garske 2018-07-23 16:04:25 -07:00
parent 9af7b9412a
commit 0bf51914fb
1 changed files with 21 additions and 10 deletions

View File

@ -9,8 +9,10 @@
#include <wolfssl/ssl.h>
#include <wolfssl/test.h>
static RNG rng;
static ecc_key genKey;
#define TEST_KEY_SZ 32
static WC_RNG mRng;
static ecc_key mGenKey;
static void* do_it(void* args)
{
@ -18,12 +20,13 @@ static void* do_it(void* args)
InitMemoryTracker();
ret = wc_ecc_make_key(&rng, 32, &genKey);
if (ret < 0) {
printf("ecc make key failed\n");
ret = wc_ecc_make_key(&mRng, TEST_KEY_SZ, &mGenKey);
if (ret != 0) {
printf("ecc make key failed %d\n", ret);
}
ShowMemoryTracker();
CleanupMemoryTracker();
(void)args;
@ -33,16 +36,24 @@ static void* do_it(void* args)
int main()
{
int ret = wc_InitRng(&rng);
if (ret < 0) {
printf("Init RNG failed\n");
int ret;
wolfCrypt_Init();
ret = wc_InitRng(&mRng);
if (ret != 0) {
printf("Init RNG failed %d\n", ret);
}
StackSizeCheck(NULL, do_it);
printf("sizeof RNG = %lu\n", sizeof(RNG));
printf("sizeof RNG = %lu\n", sizeof(WC_RNG));
printf("sizeof ecc_key = %lu\n", sizeof(ecc_key));
wc_FreeRng(&rng);
ret = wc_FreeRng(&mRng);
if (ret != 0) {
printf("Free RNG failed %d\n", ret);
}
wolfCrypt_Cleanup();
return 0;
}