diff options
author | inoguchi <> | 2021-08-28 04:02:20 +0000 |
---|---|---|
committer | inoguchi <> | 2021-08-28 04:02:20 +0000 |
commit | 3ba7efbed9520ab7baa261ea2ba20a724f9b3654 (patch) | |
tree | 27c80a5c8bf8282601b6a58cc018d7b6ef076438 /src | |
parent | 9416a2c8b05fc6a1d9f7126abd4445a38827159c (diff) | |
download | openbsd-3ba7efbed9520ab7baa261ea2ba20a724f9b3654.tar.gz openbsd-3ba7efbed9520ab7baa261ea2ba20a724f9b3654.tar.bz2 openbsd-3ba7efbed9520ab7baa261ea2ba20a724f9b3654.zip |
Remove ASN1_TIME_new and use NULL for X509_gmtime_adj, free tmptm in err path
comments from tb@
Diffstat (limited to 'src')
-rw-r--r-- | src/usr.bin/openssl/ca.c | 22 |
1 files changed, 7 insertions, 15 deletions
diff --git a/src/usr.bin/openssl/ca.c b/src/usr.bin/openssl/ca.c index e0ffe1e6a8..b04a93b065 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.38 2021/08/28 02:40:17 inoguchi Exp $ */ | 1 | /* $OpenBSD: ca.c,v 1.39 2021/08/28 04:02:20 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 | * |
@@ -673,7 +673,7 @@ ca_main(int argc, char **argv) | |||
673 | CA_DB *db = NULL; | 673 | CA_DB *db = NULL; |
674 | X509_CRL *crl = NULL; | 674 | X509_CRL *crl = NULL; |
675 | X509_REVOKED *r = NULL; | 675 | X509_REVOKED *r = NULL; |
676 | ASN1_TIME *tmptm; | 676 | ASN1_TIME *tmptm = NULL; |
677 | ASN1_INTEGER *tmpserial; | 677 | ASN1_INTEGER *tmpserial; |
678 | char *f; | 678 | char *f; |
679 | const char *p; | 679 | const char *p; |
@@ -1425,29 +1425,20 @@ ca_main(int argc, char **argv) | |||
1425 | if (!X509_CRL_set_issuer_name(crl, X509_get_subject_name(x509))) | 1425 | if (!X509_CRL_set_issuer_name(crl, X509_get_subject_name(x509))) |
1426 | goto err; | 1426 | goto err; |
1427 | 1427 | ||
1428 | tmptm = ASN1_TIME_new(); | 1428 | if ((tmptm = X509_gmtime_adj(NULL, 0)) == NULL) |
1429 | if (tmptm == NULL) | ||
1430 | goto err; | 1429 | goto err; |
1431 | if (X509_gmtime_adj(tmptm, 0) == NULL) { | 1430 | if (!X509_CRL_set_lastUpdate(crl, tmptm)) |
1432 | ASN1_TIME_free(tmptm); | ||
1433 | goto err; | 1431 | goto err; |
1434 | } | ||
1435 | if (!X509_CRL_set_lastUpdate(crl, tmptm)) { | ||
1436 | ASN1_TIME_free(tmptm); | ||
1437 | goto err; | ||
1438 | } | ||
1439 | if (X509_time_adj_ex(tmptm, ca_config.crldays, | 1432 | if (X509_time_adj_ex(tmptm, ca_config.crldays, |
1440 | ca_config.crlhours * 60 * 60 + ca_config.crlsec, NULL) == | 1433 | ca_config.crlhours * 60 * 60 + ca_config.crlsec, NULL) == |
1441 | NULL) { | 1434 | NULL) { |
1442 | BIO_puts(bio_err, "error setting CRL nextUpdate\n"); | 1435 | BIO_puts(bio_err, "error setting CRL nextUpdate\n"); |
1443 | ASN1_TIME_free(tmptm); | ||
1444 | goto err; | 1436 | goto err; |
1445 | } | 1437 | } |
1446 | if (!X509_CRL_set_nextUpdate(crl, tmptm)) { | 1438 | if (!X509_CRL_set_nextUpdate(crl, tmptm)) |
1447 | ASN1_TIME_free(tmptm); | ||
1448 | goto err; | 1439 | goto err; |
1449 | } | ||
1450 | ASN1_TIME_free(tmptm); | 1440 | ASN1_TIME_free(tmptm); |
1441 | tmptm = NULL; | ||
1451 | 1442 | ||
1452 | for (i = 0; i < sk_OPENSSL_PSTRING_num(db->db->data); i++) { | 1443 | for (i = 0; i < sk_OPENSSL_PSTRING_num(db->db->data); i++) { |
1453 | pp = sk_OPENSSL_PSTRING_value(db->db->data, i); | 1444 | pp = sk_OPENSSL_PSTRING_value(db->db->data, i); |
@@ -1591,6 +1582,7 @@ ca_main(int argc, char **argv) | |||
1591 | X509_free(x509); | 1582 | X509_free(x509); |
1592 | X509_CRL_free(crl); | 1583 | X509_CRL_free(crl); |
1593 | X509_REVOKED_free(r); | 1584 | X509_REVOKED_free(r); |
1585 | ASN1_TIME_free(tmptm); | ||
1594 | NCONF_free(conf); | 1586 | NCONF_free(conf); |
1595 | NCONF_free(extconf); | 1587 | NCONF_free(extconf); |
1596 | OBJ_cleanup(); | 1588 | OBJ_cleanup(); |