From: se-prok <81800148+se-prok@users.noreply.github.com> Date: Fri, 2 Apr 2021 07:51:28 +0000 (+0300) Subject: Update gost_ec_keyx.c X-Git-Tag: v3.0.0~27 X-Git-Url: http://wagner.pp.ru/gitweb/?a=commitdiff_plain;h=336c30e54ca42f54641ee06c9dce26ecd454b6ea;p=openssl-gost%2Fengine.git Update gost_ec_keyx.c It's not right to have segmentation faults. --- diff --git a/gost_ec_keyx.c b/gost_ec_keyx.c index eeb0122..40cad2b 100644 --- a/gost_ec_keyx.c +++ b/gost_ec_keyx.c @@ -672,6 +672,13 @@ static int pkey_gost2018_decrypt(EVP_PKEY_CTX *pctx, unsigned char *key, o q * Q_eph is not equal to zero point. */ + if (eph_key == NULL || priv == NULL || data == NULL) { + GOSTerr(GOST_F_PKEY_GOST2018_DECRYPT, + GOST_R_ERROR_COMPUTING_EXPORT_KEYS); + ret = 0; + goto err; + } + if (data->shared_ukm_size == 0 && pst->ukm != NULL) { if (EVP_PKEY_CTX_ctrl(pctx, -1, -1, EVP_PKEY_CTRL_SET_IV, ASN1_STRING_length(pst->ukm), (void *)ASN1_STRING_get0_data(pst->ukm)) < 0) {