summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorinoguchi <>2021-08-30 12:25:54 +0000
committerinoguchi <>2021-08-30 12:25:54 +0000
commitf67f6c5abc22f26c9c18cf14ee457c12b67479ab (patch)
tree9ff3781adc5d3b6ca1e5595b3a51c100e98ad058
parent87fca0bfe6ce9ec1cbd4180c6de9af4be3820717 (diff)
downloadopenbsd-f67f6c5abc22f26c9c18cf14ee457c12b67479ab.tar.gz
openbsd-f67f6c5abc22f26c9c18cf14ee457c12b67479ab.tar.bz2
openbsd-f67f6c5abc22f26c9c18cf14ee457c12b67479ab.zip
Clean up end of do_body in openssl(1) ca
suggested from tb@
-rw-r--r--src/usr.bin/openssl/ca.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/usr.bin/openssl/ca.c b/src/usr.bin/openssl/ca.c
index b3c2b31663..1c383d40af 100644
--- a/src/usr.bin/openssl/ca.c
+++ b/src/usr.bin/openssl/ca.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ca.c,v 1.42 2021/08/30 12:12:11 inoguchi Exp $ */ 1/* $OpenBSD: ca.c,v 1.43 2021/08/30 12:25:54 inoguchi Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -1745,6 +1745,8 @@ do_body(X509 **xret, EVP_PKEY *pkey, X509 *x509, const EVP_MD *dgst,
1745 OPENSSL_STRING *irow = NULL; 1745 OPENSSL_STRING *irow = NULL;
1746 OPENSSL_STRING *rrow = NULL; 1746 OPENSSL_STRING *rrow = NULL;
1747 1747
1748 *xret = NULL;
1749
1748 tmptm = ASN1_UTCTIME_new(); 1750 tmptm = ASN1_UTCTIME_new();
1749 if (tmptm == NULL) { 1751 if (tmptm == NULL) {
1750 BIO_printf(bio_err, "malloc error\n"); 1752 BIO_printf(bio_err, "malloc error\n");
@@ -2275,7 +2277,11 @@ do_body(X509 **xret, EVP_PKEY *pkey, X509 *x509, const EVP_MD *dgst,
2275 BIO_printf(bio_err, "TXT_DB error number %ld\n", db->db->error); 2277 BIO_printf(bio_err, "TXT_DB error number %ld\n", db->db->error);
2276 goto err; 2278 goto err;
2277 } 2279 }
2280
2281 *xret = ret;
2282 ret = NULL;
2278 ok = 1; 2283 ok = 1;
2284
2279 err: 2285 err:
2280 for (i = 0; i < DB_NUMBER; i++) 2286 for (i = 0; i < DB_NUMBER; i++)
2281 free(row[i]); 2287 free(row[i]);
@@ -2285,11 +2291,7 @@ do_body(X509 **xret, EVP_PKEY *pkey, X509 *x509, const EVP_MD *dgst,
2285 if (!email_dn) 2291 if (!email_dn)
2286 X509_NAME_free(dn_subject); 2292 X509_NAME_free(dn_subject);
2287 ASN1_UTCTIME_free(tmptm); 2293 ASN1_UTCTIME_free(tmptm);
2288 if (ok <= 0) { 2294 X509_free(ret);
2289 X509_free(ret);
2290 ret = NULL;
2291 } else
2292 *xret = ret;
2293 2295
2294 return (ok); 2296 return (ok);
2295} 2297}