diff options
author | inoguchi <> | 2021-08-30 12:25:54 +0000 |
---|---|---|
committer | inoguchi <> | 2021-08-30 12:25:54 +0000 |
commit | f67f6c5abc22f26c9c18cf14ee457c12b67479ab (patch) | |
tree | 9ff3781adc5d3b6ca1e5595b3a51c100e98ad058 | |
parent | 87fca0bfe6ce9ec1cbd4180c6de9af4be3820717 (diff) | |
download | openbsd-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.c | 14 |
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 | } |