aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/pki_crypto.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/pki_crypto.c b/src/pki_crypto.c
index 2a8e46ec..e34f197f 100644
--- a/src/pki_crypto.c
+++ b/src/pki_crypto.c
@@ -455,7 +455,7 @@ int pki_key_generate_dss(ssh_key key, int parameter){
int rc;
#if OPENSSL_VERSION_NUMBER > 0x10100000L
key->dsa = DSA_new();
- if (!key->dsa) {
+ if (key->dsa == NULL) {
return SSH_ERROR;
}
rc = DSA_generate_parameters_ex(key->dsa,
@@ -466,6 +466,8 @@ int pki_key_generate_dss(ssh_key key, int parameter){
NULL, /* h_ret */
NULL); /* cb */
if (rc != 1) {
+ DSA_free(key->dsa);
+ key->dsa = NULL;
return SSH_ERROR;
}
#else