summaryrefslogtreecommitdiffstats
path: root/apps/ca.c
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2003-01-09 13:06:49 +0000
committerDr. Stephen Henson <steve@openssl.org>2003-01-09 13:06:49 +0000
commit5b7249f3021cb90bcdbd336c75c7699f8b8caf19 (patch)
tree56464036e4ec0282892c41273ceb3aca86636bac /apps/ca.c
parent699543e4a269da8ab82ce5e1db59114e1bc0837c (diff)
NULL tofree when it is freed to avoid double free.
Make sure key is not NULL before freeing it.
Diffstat (limited to 'apps/ca.c')
-rw-r--r--apps/ca.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/apps/ca.c b/apps/ca.c
index c413a0318f..0ef23ad79f 100644
--- a/apps/ca.c
+++ b/apps/ca.c
@@ -597,7 +597,10 @@ bad:
goto err;
}
if(tofree)
+ {
OPENSSL_free(tofree);
+ tofree = NULL;
+ }
if (!load_config(bio_err, conf))
goto err;
@@ -1642,7 +1645,7 @@ err:
if (ret) ERR_print_errors(bio_err);
app_RAND_write_file(randfile, bio_err);
- if (free_key)
+ if (free_key & key)
OPENSSL_free(key);
BN_free(serial);
TXT_DB_free(db);