From: Dr. David von Oheimb Date: Fri, 26 Feb 2021 10:42:49 +0000 (+0100) Subject: apps/x509.c: Fix too eager call to X509_set_issuer_name() introduced recently X-Git-Tag: openssl-3.0.0-alpha13~101 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ed0a5ac9200466d876a847b82bf95694356cef99;p=thirdparty%2Fopenssl.git apps/x509.c: Fix too eager call to X509_set_issuer_name() introduced recently Reviewed-by: Paul Dale (Merged from https://github.com/openssl/openssl/pull/14340) --- diff --git a/apps/x509.c b/apps/x509.c index 67895c81691..562f28098d5 100644 --- a/apps/x509.c +++ b/apps/x509.c @@ -793,10 +793,6 @@ int x509_main(int argc, char **argv) X509_EXTENSION_free(X509_delete_ext(x, i)); } - if ((reqfile || newcert || signkey != NULL || CAfile != NULL) - && !preserve_dates && !set_cert_times(x, NULL, NULL, days)) - goto end; - issuer_cert = x; if (CAfile != NULL) { issuer_cert = xca; @@ -809,8 +805,12 @@ int x509_main(int argc, char **argv) if (sno != NULL && !X509_set_serialNumber(x, sno)) goto end; - if (!X509_set_issuer_name(x, X509_get_subject_name(issuer_cert))) - goto end; + if (reqfile || newcert || signkey != NULL || CAfile != NULL) { + if (!preserve_dates && !set_cert_times(x, NULL, NULL, days)) + goto end; + if (!X509_set_issuer_name(x, X509_get_subject_name(issuer_cert))) + goto end; + } X509V3_set_ctx(&ext_ctx, issuer_cert, x, req, NULL, X509V3_CTX_REPLACE); if (extconf != NULL) {