Fix openssl ca, to correctly make output file binary when using -spkac On Unix, this doesn't matter, but on other platforms, it may. Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/6050)
diff --git a/apps/ca.c b/apps/ca.c index 1c053b5..ea774ad 100644 --- a/apps/ca.c +++ b/apps/ca.c
@@ -722,8 +722,12 @@ /*****************************************************************/ if (req || gencrl) { - /* FIXME: Is it really always text? */ - Sout = bio_open_default(outfile, 'w', FORMAT_TEXT); + if (spkac_file != NULL) { + output_der = 1; + batch = 1; + } + Sout = bio_open_default(outfile, 'w', + output_der ? FORMAT_ASN1 : FORMAT_TEXT); if (Sout == NULL) goto end; } @@ -877,10 +881,6 @@ BIO_printf(bio_err, "Memory allocation failure\n"); goto end; } - if (outfile) { - output_der = 1; - batch = 1; - } } } if (ss_cert_file != NULL) {