summaryrefslogtreecommitdiffstats
path: root/apps/gendsa.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/gendsa.c')
-rw-r--r--apps/gendsa.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/apps/gendsa.c b/apps/gendsa.c
index 272cbb17a5..c9563a74f7 100644
--- a/apps/gendsa.c
+++ b/apps/gendsa.c
@@ -46,6 +46,7 @@ const OPTIONS gendsa_options[] = {
int gendsa_main(int argc, char **argv)
{
+ ENGINE *e = NULL;
BIO *out = NULL, *in = NULL;
DSA *dsa = NULL;
const EVP_CIPHER *enc = NULL;
@@ -74,7 +75,7 @@ int gendsa_main(int argc, char **argv)
passoutarg = opt_arg();
break;
case OPT_ENGINE:
- (void)setup_engine(opt_arg(), 0);
+ e = setup_engine(opt_arg(), 0);
break;
case OPT_RAND:
inrand = opt_arg();
@@ -139,6 +140,7 @@ int gendsa_main(int argc, char **argv)
BIO_free(in);
BIO_free_all(out);
DSA_free(dsa);
+ release_engine(e);
OPENSSL_free(passout);
return (ret);
}