Skip to content

Commit 78f7454

Browse files
Merge pull request #7154 from anhu/EccKeyParamCopy_error
Fix missing heap hint in `EccKeyParamCopy`
2 parents 3b20f49 + dcc9465 commit 78f7454

1 file changed

Lines changed: 11 additions & 10 deletions

File tree

wolfcrypt/src/asn.c

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -33197,7 +33197,7 @@ static int ASNToHexString(const byte* input, word32* inOutIdx, char** out,
3319733197
return 0;
3319833198
}
3319933199

33200-
static int EccKeyParamCopy(char** dst, char* src)
33200+
static int EccKeyParamCopy(char** dst, char* src, void* heap)
3320133201
{
3320233202
int ret = 0;
3320333203
#ifdef WOLFSSL_ECC_CURVE_STATIC
@@ -33218,8 +33218,9 @@ static int EccKeyParamCopy(char** dst, char* src)
3321833218
else {
3321933219
XSTRNCPY(*dst, src, MAX_ECC_STRING);
3322033220
}
33221-
XFREE(src, key->heap, DYNAMIC_TYPE_ECC_BUFFER);
33221+
XFREE(src, heap, DYNAMIC_TYPE_ECC_BUFFER);
3322233222
#endif
33223+
(void)heap;
3322333224

3322433225
return ret;
3322533226
}
@@ -33327,10 +33328,10 @@ int wc_EccPublicKeyDecode(const byte* input, word32* inOutIdx,
3332733328
key->heap, DYNAMIC_TYPE_ECC_BUFFER);
3332833329
if (ret == 0) {
3332933330
#ifndef WOLFSSL_ECC_CURVE_STATIC
33330-
ret = EccKeyParamCopy((char**)&curve->prime, p);
33331+
ret = EccKeyParamCopy((char**)&curve->prime, p, key->heap);
3333133332
#else
3333233333
const char *_tmp_ptr = &curve->prime[0];
33333-
ret = EccKeyParamCopy((char**)&_tmp_ptr, p);
33334+
ret = EccKeyParamCopy((char**)&_tmp_ptr, p, key->heap);
3333433335
#endif
3333533336
}
3333633337
}
@@ -33346,10 +33347,10 @@ int wc_EccPublicKeyDecode(const byte* input, word32* inOutIdx,
3334633347
key->heap, DYNAMIC_TYPE_ECC_BUFFER);
3334733348
if (ret == 0) {
3334833349
#ifndef WOLFSSL_ECC_CURVE_STATIC
33349-
ret = EccKeyParamCopy((char**)&curve->Af, af);
33350+
ret = EccKeyParamCopy((char**)&curve->Af, af, key->heap);
3335033351
#else
3335133352
const char *_tmp_ptr = &curve->Af[0];
33352-
ret = EccKeyParamCopy((char**)&_tmp_ptr, af);
33353+
ret = EccKeyParamCopy((char**)&_tmp_ptr, af, key->heap);
3335333354
#endif
3335433355
}
3335533356
}
@@ -33359,10 +33360,10 @@ int wc_EccPublicKeyDecode(const byte* input, word32* inOutIdx,
3335933360
key->heap, DYNAMIC_TYPE_ECC_BUFFER);
3336033361
if (ret == 0) {
3336133362
#ifndef WOLFSSL_ECC_CURVE_STATIC
33362-
ret = EccKeyParamCopy((char**)&curve->Bf, bf);
33363+
ret = EccKeyParamCopy((char**)&curve->Bf, bf, key->heap);
3336333364
#else
3336433365
const char *_tmp_ptr = &curve->Bf[0];
33365-
ret = EccKeyParamCopy((char**)&_tmp_ptr, bf);
33366+
ret = EccKeyParamCopy((char**)&_tmp_ptr, bf, key->heap);
3336633367
#endif
3336733368
}
3336833369
}
@@ -33419,10 +33420,10 @@ int wc_EccPublicKeyDecode(const byte* input, word32* inOutIdx,
3341933420
key->heap, DYNAMIC_TYPE_ECC_BUFFER);
3342033421
if (ret == 0) {
3342133422
#ifndef WOLFSSL_ECC_CURVE_STATIC
33422-
ret = EccKeyParamCopy((char**)&curve->order, o);
33423+
ret = EccKeyParamCopy((char**)&curve->order, o, key->heap);
3342333424
#else
3342433425
const char *_tmp_ptr = &curve->order[0];
33425-
ret = EccKeyParamCopy((char**)&_tmp_ptr, o);
33426+
ret = EccKeyParamCopy((char**)&_tmp_ptr, o, key->heap);
3342633427
#endif
3342733428
}
3342833429
}

0 commit comments

Comments
 (0)