Skip to content

Commit

Permalink
Fix regression in openssl req -x509 behaviour.
Browse files Browse the repository at this point in the history
Allow conversion of existing requests to certificates again.
Fixes the issue #3396

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from #3437)
  • Loading branch information
t8m authored and levitte committed May 11, 2017
1 parent 3f97052 commit 888adbe
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 2 deletions.
6 changes: 4 additions & 2 deletions apps/req.c
Expand Up @@ -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());
Expand Down Expand Up @@ -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;

Expand Down Expand Up @@ -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;
Expand Down
3 changes: 3 additions & 0 deletions doc/man1/req.pod
Expand Up @@ -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
Expand Down

0 comments on commit 888adbe

Please sign in to comment.