diff options
author | Brad Spencer <bspencer@blackberry.com> | 2017-12-20 13:41:14 -0400 |
---|---|---|
committer | Ben Kaduk <kaduk@mit.edu> | 2018-03-01 09:05:42 -0600 |
commit | 178989b4a3ed714fa169cae5865c75f156ec9fdb (patch) | |
tree | f536407ccbbc6c327c457a8b0166e3227ba354ed /crypto/rsa | |
parent | e72bf967186a2ac26459926a20dbf03dc119eb5b (diff) |
Test the result of CMS_RecipientInfo_ktri_get0_algs() before using its output in rsa_cms_encrypt().
CLA: trivial
Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Ben Kaduk <kaduk@mit.edu>
(Merged from https://github.com/openssl/openssl/pull/4966)
Diffstat (limited to 'crypto/rsa')
-rw-r--r-- | crypto/rsa/rsa_ameth.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/crypto/rsa/rsa_ameth.c b/crypto/rsa/rsa_ameth.c index 98121b5e64..de9e3c1077 100644 --- a/crypto/rsa/rsa_ameth.c +++ b/crypto/rsa/rsa_ameth.c @@ -967,7 +967,8 @@ static int rsa_cms_encrypt(CMS_RecipientInfo *ri) int pad_mode = RSA_PKCS1_PADDING, rv = 0, labellen; unsigned char *label; - CMS_RecipientInfo_ktri_get0_algs(ri, NULL, NULL, &alg); + if (CMS_RecipientInfo_ktri_get0_algs(ri, NULL, NULL, &alg) <= 0) + return 0; if (pkctx) { if (EVP_PKEY_CTX_get_rsa_padding(pkctx, &pad_mode) <= 0) return 0; |