diff options
author | Nicola Tuveri <nic.tuv@gmail.com> | 2020-06-27 00:42:49 +0200 |
---|---|---|
committer | Nicola Tuveri <nic.tuv@gmail.com> | 2020-07-06 18:15:36 +0200 |
commit | 466d30c0d7fa861a5fcbaebd2e2010a8c2aea322 (patch) | |
tree | 3d120f1c001c78140c74e0bde4a11a2aa7d4340b /apps/genpkey.c | |
parent | [EC][ASN1] Detect missing OID when serializing EC parameters and keys (diff) | |
download | openssl-466d30c0d7fa861a5fcbaebd2e2010a8c2aea322.tar.xz openssl-466d30c0d7fa861a5fcbaebd2e2010a8c2aea322.zip |
[apps/genpkey] exit status should not be 0 on output errors
If the key is to be serialized or printed as text and the framework
returns an error, the app should signal the failure to the user using
a non-zero exit status.
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/12305)
Diffstat (limited to 'apps/genpkey.c')
-rw-r--r-- | apps/genpkey.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/apps/genpkey.c b/apps/genpkey.c index 8954ef19c7..4a4a83fd40 100644 --- a/apps/genpkey.c +++ b/apps/genpkey.c @@ -189,9 +189,12 @@ int genpkey_main(int argc, char **argv) goto end; } + ret = 0; + if (rv <= 0) { BIO_puts(bio_err, "Error writing key\n"); ERR_print_errors(bio_err); + ret = 1; } if (text) { @@ -203,11 +206,10 @@ int genpkey_main(int argc, char **argv) if (rv <= 0) { BIO_puts(bio_err, "Error printing key\n"); ERR_print_errors(bio_err); + ret = 1; } } - ret = 0; - end: EVP_PKEY_free(pkey); EVP_PKEY_CTX_free(ctx); |