summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/libssl/s3_clnt.c5
-rw-r--r--src/lib/libssl/src/ssl/s3_clnt.c5
-rw-r--r--src/lib/libssl/src/ssl/s3_enc.c4
-rw-r--r--src/lib/libssl/src/ssl/ssl_lib.c2
-rw-r--r--src/lib/libssl/ssl_lib.c2
5 files changed, 16 insertions, 2 deletions
diff --git a/src/lib/libssl/s3_clnt.c b/src/lib/libssl/s3_clnt.c
index ffbd83b060..602ab03fe1 100644
--- a/src/lib/libssl/s3_clnt.c
+++ b/src/lib/libssl/s3_clnt.c
@@ -2458,6 +2458,11 @@ ssl3_send_client_key_exchange(SSL *s)
2458 * context data 2458 * context data
2459 */ 2459 */
2460 ukm_hash = EVP_MD_CTX_create(); 2460 ukm_hash = EVP_MD_CTX_create();
2461 if (ukm_hash == NULL) {
2462 SSLerr(SSL_F_SSL3_SEND_CLIENT_KEY_EXCHANGE,
2463 ERR_R_MALLOC_FAILURE);
2464 goto err;
2465 }
2461 EVP_DigestInit(ukm_hash, 2466 EVP_DigestInit(ukm_hash,
2462 EVP_get_digestbynid(NID_id_GostR3411_94)); 2467 EVP_get_digestbynid(NID_id_GostR3411_94));
2463 EVP_DigestUpdate(ukm_hash, 2468 EVP_DigestUpdate(ukm_hash,
diff --git a/src/lib/libssl/src/ssl/s3_clnt.c b/src/lib/libssl/src/ssl/s3_clnt.c
index ffbd83b060..602ab03fe1 100644
--- a/src/lib/libssl/src/ssl/s3_clnt.c
+++ b/src/lib/libssl/src/ssl/s3_clnt.c
@@ -2458,6 +2458,11 @@ ssl3_send_client_key_exchange(SSL *s)
2458 * context data 2458 * context data
2459 */ 2459 */
2460 ukm_hash = EVP_MD_CTX_create(); 2460 ukm_hash = EVP_MD_CTX_create();
2461 if (ukm_hash == NULL) {
2462 SSLerr(SSL_F_SSL3_SEND_CLIENT_KEY_EXCHANGE,
2463 ERR_R_MALLOC_FAILURE);
2464 goto err;
2465 }
2461 EVP_DigestInit(ukm_hash, 2466 EVP_DigestInit(ukm_hash,
2462 EVP_get_digestbynid(NID_id_GostR3411_94)); 2467 EVP_get_digestbynid(NID_id_GostR3411_94));
2463 EVP_DigestUpdate(ukm_hash, 2468 EVP_DigestUpdate(ukm_hash,
diff --git a/src/lib/libssl/src/ssl/s3_enc.c b/src/lib/libssl/src/ssl/s3_enc.c
index c9284c395f..aa729860fe 100644
--- a/src/lib/libssl/src/ssl/s3_enc.c
+++ b/src/lib/libssl/src/ssl/s3_enc.c
@@ -593,6 +593,10 @@ ssl3_digest_cached_records(SSL *s)
593 for (i = 0; ssl_get_handshake_digest(i, &mask, &md); i++) { 593 for (i = 0; ssl_get_handshake_digest(i, &mask, &md); i++) {
594 if ((mask & ssl_get_algorithm2(s)) && md) { 594 if ((mask & ssl_get_algorithm2(s)) && md) {
595 s->s3->handshake_dgst[i] = EVP_MD_CTX_create(); 595 s->s3->handshake_dgst[i] = EVP_MD_CTX_create();
596 if (s->s3->handshake_dgst[i] == NULL) {
597 SSLerr(SSL_F_SSL3_DIGEST_CACHED_RECORDS,
598 ERR_R_MALLOC_FAILURE);
599 }
596 EVP_DigestInit_ex(s->s3->handshake_dgst[i], md, NULL); 600 EVP_DigestInit_ex(s->s3->handshake_dgst[i], md, NULL);
597 EVP_DigestUpdate(s->s3->handshake_dgst[i], hdata, hdatalen); 601 EVP_DigestUpdate(s->s3->handshake_dgst[i], hdata, hdatalen);
598 } else { 602 } else {
diff --git a/src/lib/libssl/src/ssl/ssl_lib.c b/src/lib/libssl/src/ssl/ssl_lib.c
index bf98354294..12d45ea025 100644
--- a/src/lib/libssl/src/ssl/ssl_lib.c
+++ b/src/lib/libssl/src/ssl/ssl_lib.c
@@ -3235,7 +3235,7 @@ ssl_replace_hash(EVP_MD_CTX **hash, const EVP_MD *md)
3235{ 3235{
3236 ssl_clear_hash_ctx(hash); 3236 ssl_clear_hash_ctx(hash);
3237 *hash = EVP_MD_CTX_create(); 3237 *hash = EVP_MD_CTX_create();
3238 if (md) 3238 if (*hash != NULL && md != NULL)
3239 EVP_DigestInit_ex(*hash, md, NULL); 3239 EVP_DigestInit_ex(*hash, md, NULL);
3240 return (*hash); 3240 return (*hash);
3241} 3241}
diff --git a/src/lib/libssl/ssl_lib.c b/src/lib/libssl/ssl_lib.c
index bf98354294..12d45ea025 100644
--- a/src/lib/libssl/ssl_lib.c
+++ b/src/lib/libssl/ssl_lib.c
@@ -3235,7 +3235,7 @@ ssl_replace_hash(EVP_MD_CTX **hash, const EVP_MD *md)
3235{ 3235{
3236 ssl_clear_hash_ctx(hash); 3236 ssl_clear_hash_ctx(hash);
3237 *hash = EVP_MD_CTX_create(); 3237 *hash = EVP_MD_CTX_create();
3238 if (md) 3238 if (*hash != NULL && md != NULL)
3239 EVP_DigestInit_ex(*hash, md, NULL); 3239 EVP_DigestInit_ex(*hash, md, NULL);
3240 return (*hash); 3240 return (*hash);
3241} 3241}