Commit 888adbe0 authored by Tomas Mraz's avatar Tomas Mraz Committed by Richard Levitte
Browse files

Fix regression in openssl req -x509 behaviour.



Allow conversion of existing requests to certificates again.
Fixes the issue #3396

Reviewed-by: default avatarRich Salz <rsalz@openssl.org>
Reviewed-by: default avatarRichard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3437)
parent 3f970523
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -288,7 +288,6 @@ int req_main(int argc, char **argv)
            break;
        case OPT_X509:
            x509 = 1;
            newreq = 1;
            break;
        case OPT_DAYS:
            days = atoi(opt_arg());
@@ -331,6 +330,9 @@ int req_main(int argc, char **argv)
    if (argc != 0)
        goto opthelp;

    if (x509 && infile == NULL)
        newreq = 1;

    /* TODO: simplify this as pkey is still always NULL here */
    private = newreq && (pkey == NULL) ? 1 : 0;

@@ -582,7 +584,7 @@ int req_main(int argc, char **argv)
        }
    }

    if (newreq) {
    if (newreq || x509) {
        if (pkey == NULL) {
            BIO_printf(bio_err, "you need to specify a private key\n");
            goto end;
+3 −0
Original line number Diff line number Diff line
@@ -234,6 +234,9 @@ a self signed root CA. The extensions added to the certificate
using the B<set_serial> option, a large random number will be used for
the serial number.

If existing request is specified with the B<-in> option, it is converted
to the self signed certificate otherwise new request is created.

=item B<-days n>

When the B<-x509> option is being used this specifies the number of