Address code review

pull/5932/head
Juliusz Sosinowicz 2023-01-16 14:02:57 +01:00 committed by David Garske
parent 0e662dea6e
commit 50cb3a7b8c
4 changed files with 43 additions and 30 deletions

View File

@ -2864,7 +2864,17 @@ static WC_INLINE void AddSuiteHashSigAlgo(byte* hashSigAlgo, byte macAlgo,
} }
} }
void InitSuitesHashSigAlgo(byte* hashSigAlgo, int haveECDSAsig, int haveRSAsig, void InitSuitesHashSigAlgo(Suites* suites, int haveECDSAsig,
int haveRSAsig, int haveFalconSig,
int haveDilithiumSig, int haveAnon,
int tls1_2, int keySz)
{
InitSuitesHashSigAlgo_ex(suites->hashSigAlgo, haveECDSAsig, haveRSAsig,
haveFalconSig, haveDilithiumSig, haveAnon, tls1_2, keySz,
&suites->hashSigAlgoSz);
}
void InitSuitesHashSigAlgo_ex(byte* hashSigAlgo, int haveECDSAsig, int haveRSAsig,
int haveFalconSig, int haveDilithiumSig, int haveFalconSig, int haveDilithiumSig,
int haveAnon, int tls1_2, int keySz, word16* len) int haveAnon, int tls1_2, int keySz, word16* len)
{ {
@ -2986,7 +2996,7 @@ int AllocateSuites(WOLFSSL* ssl)
DYNAMIC_TYPE_SUITES); DYNAMIC_TYPE_SUITES);
if (ssl->suites == NULL) { if (ssl->suites == NULL) {
WOLFSSL_MSG("Suites Memory error"); WOLFSSL_MSG("Suites Memory error");
return MEMORY_E; return MEMORY_ERROR;
} }
if (ssl->ctx != NULL && ssl->ctx->suites != NULL) if (ssl->ctx != NULL && ssl->ctx->suites != NULL)
XMEMCPY(ssl->suites, ssl->ctx->suites, sizeof(Suites)); XMEMCPY(ssl->suites, ssl->ctx->suites, sizeof(Suites));
@ -3959,10 +3969,9 @@ void InitSuites(Suites* suites, ProtocolVersion pv, int keySz, word16 haveRSA,
suites->suiteSz = idx; suites->suiteSz = idx;
if (suites->hashSigAlgoSz == 0) { if (suites->hashSigAlgoSz == 0) {
InitSuitesHashSigAlgo(suites->hashSigAlgo, haveECDSAsig | haveECC, InitSuitesHashSigAlgo(suites, haveECDSAsig | haveECC,
haveRSAsig | haveRSA, haveFalconSig, haveRSAsig | haveRSA, haveFalconSig,
haveDilithiumSig, 0, tls1_2, keySz, haveDilithiumSig, 0, tls1_2, keySz);
&suites->hashSigAlgoSz);
} }
} }
@ -24624,9 +24633,9 @@ int SetCipherList(WOLFSSL_CTX* ctx, Suites* suites, const char* list)
#endif #endif
{ {
suites->suiteSz = (word16)idx; suites->suiteSz = (word16)idx;
InitSuitesHashSigAlgo(suites->hashSigAlgo, haveECDSAsig, haveRSAsig, InitSuitesHashSigAlgo(suites, haveECDSAsig, haveRSAsig,
haveFalconSig, haveDilithiumSig, haveAnon, haveFalconSig, haveDilithiumSig, haveAnon,
1, keySz, &suites->hashSigAlgoSz); 1, keySz);
} }
suites->setSuites = 1; suites->setSuites = 1;
} }
@ -24750,9 +24759,9 @@ int SetCipherListFromBytes(WOLFSSL_CTX* ctx, Suites* suites, const byte* list,
keySz = ctx->privateKeySz; keySz = ctx->privateKeySz;
#endif #endif
suites->suiteSz = (word16)idx; suites->suiteSz = (word16)idx;
InitSuitesHashSigAlgo(suites->hashSigAlgo, haveECDSAsig, haveRSAsig, InitSuitesHashSigAlgo(suites, haveECDSAsig, haveRSAsig,
haveFalconSig, haveDilithiumSig, haveAnon, 1, haveFalconSig, haveDilithiumSig, haveAnon, 1,
keySz, &suites->hashSigAlgoSz); keySz);
suites->setSuites = 1; suites->setSuites = 1;
} }

View File

@ -6632,12 +6632,12 @@ static int SendTls13CertificateRequest(WOLFSSL* ssl, byte* reqCtx,
return SIDE_ERROR; return SIDE_ERROR;
/* Get the length of the hashSigAlgo buffer */ /* Get the length of the hashSigAlgo buffer */
InitSuitesHashSigAlgo(NULL, 1, 1, 1, 1, 0, 1, ssl->buffers.keySz, InitSuitesHashSigAlgo_ex(NULL, 1, 1, 1, 1, 0, 1, ssl->buffers.keySz,
&hashSigAlgoSz); &hashSigAlgoSz);
sa = TLSX_SignatureAlgorithms_New(ssl, hashSigAlgoSz, ssl->heap); sa = TLSX_SignatureAlgorithms_New(ssl, hashSigAlgoSz, ssl->heap);
if (sa == NULL) if (sa == NULL)
return MEMORY_ERROR; return MEMORY_ERROR;
InitSuitesHashSigAlgo(sa->hashSigAlgo, 1, 1, 1, 1, 0, 1, ssl->buffers.keySz, InitSuitesHashSigAlgo_ex(sa->hashSigAlgo, 1, 1, 1, 1, 0, 1, ssl->buffers.keySz,
&sa->hashSigAlgoSz); &sa->hashSigAlgoSz);
ret = TLSX_Push(&ssl->extensions, TLSX_SIGNATURE_ALGORITHMS, sa, ssl->heap); ret = TLSX_Push(&ssl->extensions, TLSX_SIGNATURE_ALGORITHMS, sa, ssl->heap);
if (ret != 0) { if (ret != 0) {

View File

@ -2121,7 +2121,11 @@ struct Suites {
byte setSuites; /* user set suites from default */ byte setSuites; /* user set suites from default */
}; };
WOLFSSL_LOCAL void InitSuitesHashSigAlgo(byte* hashSigAlgo, int haveECDSAsig, WOLFSSL_LOCAL void InitSuitesHashSigAlgo(Suites* suites, int haveECDSAsig,
int haveRSAsig, int haveFalconSig,
int haveDilithiumSig, int haveAnon,
int tls1_2, int keySz);
WOLFSSL_LOCAL void InitSuitesHashSigAlgo_ex(byte* hashSigAlgo, int haveECDSAsig,
int haveRSAsig, int haveFalconSig, int haveRSAsig, int haveFalconSig,
int haveDilithiumSig, int haveAnon, int haveDilithiumSig, int haveAnon,
int tls1_2, int keySz, word16* len); int tls1_2, int keySz, word16* len);