summaryrefslogtreecommitdiff
path: root/crypto/evp/digest.c
diff options
context:
space:
mode:
authorMatt Caswell <matt@openssl.org>2019-10-15 13:27:21 +0100
committerMatt Caswell <matt@openssl.org>2019-10-16 08:28:48 +0100
commitc3885102f59dd7313597d1405babd06f75a94f8c (patch)
treee475acbb3e9f81c25df07d4a36c6fc87e8456b0e /crypto/evp/digest.c
parent3d5a7578e09a984c6475b1c008f5c76f850328cb (diff)
downloadopenssl-new-c3885102f59dd7313597d1405babd06f75a94f8c.tar.gz
Correctly handle SSL3 Master Secret when calling providers
We need to pass the SSL3 Master Secret down to the provider code in order for SSLv3 to work correctly. Fixes #10182 Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/10186)
Diffstat (limited to 'crypto/evp/digest.c')
-rw-r--r--crypto/evp/digest.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/crypto/evp/digest.c b/crypto/evp/digest.c
index 5ff43fdd64..c2a6e83ad5 100644
--- a/crypto/evp/digest.c
+++ b/crypto/evp/digest.c
@@ -675,6 +675,10 @@ int EVP_MD_CTX_ctrl(EVP_MD_CTX *ctx, int cmd, int p1, void *p2)
params[0] = OSSL_PARAM_construct_utf8_string(OSSL_DIGEST_PARAM_MICALG,
p2, p1 ? p1 : 9999);
break;
+ case EVP_CTRL_SSL3_MASTER_SECRET:
+ params[0] = OSSL_PARAM_construct_octet_string(OSSL_DIGEST_PARAM_SSL3_MS,
+ p2, p1);
+ break;
default:
return EVP_CTRL_RET_UNSUPPORTED;
}