Rework ssl and ssl->arrays NULL checks, and add to SendTls13ClientHello as well.

This commit is contained in:
Kareem
2021-11-19 14:19:27 -07:00
parent 72d4dcce0f
commit fd6d479888
2 changed files with 15 additions and 4 deletions

View File

@ -22658,6 +22658,10 @@ exit_dpk:
int ret;
word16 extSz = 0;
if (ssl == NULL) {
return BAD_FUNC_ARG;
}
#ifdef WOLFSSL_TLS13
if (IsAtLeastTLSv1_3(ssl->version))
return SendTls13ClientHello(ssl);
@ -22666,10 +22670,6 @@ exit_dpk:
WOLFSSL_START(WC_FUNC_CLIENT_HELLO_SEND);
WOLFSSL_ENTER("SendClientHello");
if (ssl == NULL || ssl->arrays == NULL) {
return BAD_FUNC_ARG;
}
if (ssl->suites == NULL) {
WOLFSSL_MSG("Bad suites pointer in SendClientHello");
return SUITES_ERROR;
@ -22719,6 +22719,10 @@ exit_dpk:
#endif
sendSz = length + HANDSHAKE_HEADER_SZ + RECORD_HEADER_SZ;
if (ssl->arrays == NULL) {
return BAD_FUNC_ARG;
}
#ifdef WOLFSSL_DTLS
if (ssl->options.dtls) {
length += ENUM_LEN; /* cookie */

View File

@ -3014,6 +3014,10 @@ int SendTls13ClientHello(WOLFSSL* ssl)
WOLFSSL_START(WC_FUNC_CLIENT_HELLO_SEND);
WOLFSSL_ENTER("SendTls13ClientHello");
if (ssl == NULL) {
return BAD_FUNC_ARG;
}
#ifdef HAVE_SESSION_TICKET
if (ssl->options.resuming &&
(ssl->session.version.major != ssl->version.major ||
@ -3130,6 +3134,9 @@ int SendTls13ClientHello(WOLFSSL* ssl)
/* Keep for downgrade. */
ssl->chVersion = ssl->version;
if (ssl->arrays == NULL) {
return BAD_FUNC_ARG;
}
/* Client Random */
if (ssl->options.connectState == CONNECT_BEGIN) {
ret = wc_RNG_GenerateBlock(ssl->rng, args->output + args->idx, RAN_LEN);