aboutsummaryrefslogtreecommitdiff
path: root/gost_ec_keyx.c
diff options
context:
space:
mode:
authorDmitry Belyavskiy <beldmit@gmail.com>2015-08-15 14:29:47 +0300
committerDmitry Belyavskiy <beldmit@gmail.com>2015-08-15 14:29:47 +0300
commit57d07eb0dc22bee10aebb0bd37cbdf2258413564 (patch)
treeb2884d55439cee09a5259facd0a182e4789b998d /gost_ec_keyx.c
parentcba16944bff9d8c5dcf37be641822cd3de6d2ec1 (diff)
parent02f99b2e3b46f4ff44fd5420487551d5a447c2ad (diff)
downloadgost-engine-57d07eb0dc22bee10aebb0bd37cbdf2258413564.zip
gost-engine-57d07eb0dc22bee10aebb0bd37cbdf2258413564.tar.gz
gost-engine-57d07eb0dc22bee10aebb0bd37cbdf2258413564.tar.bz2
Merge branch 'no_gost94_sig' into gost12_algs
Conflicts: Makefile e_gost_err.c e_gost_err.h gost2001.c gost94_keyx.c gost_ameth.c gost_asn1.c gost_eng.c gost_lcl.h gost_params.c gost_params.h gost_pmeth.c gost_sign.c
Diffstat (limited to 'gost_ec_keyx.c')
-rw-r--r--gost_ec_keyx.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/gost_ec_keyx.c b/gost_ec_keyx.c
index 2dd0d3a..7a80d23 100644
--- a/gost_ec_keyx.c
+++ b/gost_ec_keyx.c
@@ -229,7 +229,7 @@ int pkey_GOST_ECcp_encrypt(EVP_PKEY_CTX *pctx, unsigned char *out,
}
ASN1_OBJECT_free(gkt->key_agreement_info->cipher);
gkt->key_agreement_info->cipher = OBJ_nid2obj(param->nid);
- if (key_is_ephemeral && sec_key)
+ if (key_is_ephemeral)
EVP_PKEY_free(sec_key);
if (!key_is_ephemeral) {
/* Set control "public key from client certificate used" */
@@ -244,7 +244,7 @@ int pkey_GOST_ECcp_encrypt(EVP_PKEY_CTX *pctx, unsigned char *out,
GOST_KEY_TRANSPORT_free(gkt);
return ret;
err:
- if (key_is_ephemeral && sec_key)
+ if (key_is_ephemeral)
EVP_PKEY_free(sec_key);
GOST_KEY_TRANSPORT_free(gkt);
return -1;
@@ -331,9 +331,7 @@ int pkey_GOST_ECcp_decrypt(EVP_PKEY_CTX *pctx, unsigned char *key,
ret = 1;
err:
- if (eph_key)
- EVP_PKEY_free(eph_key);
- if (gkt)
- GOST_KEY_TRANSPORT_free(gkt);
+ EVP_PKEY_free(eph_key);
+ GOST_KEY_TRANSPORT_free(gkt);
return ret;
}