summaryrefslogtreecommitdiffstats
path: root/apps/dsaparam.c
diff options
context:
space:
mode:
authorRich Salz <rsalz@akamai.com>2020-11-28 16:12:58 -0500
committerTomas Mraz <tmraz@fedoraproject.org>2020-12-15 11:47:17 +0100
commit021410ea3fc3876538830839d16b67e610d12785 (patch)
tree7178c87097f1083bc285a77f8ec179ceba343464 /apps/dsaparam.c
parentc678f68a19638c1e2bbfee6a7a1d8d728976ce66 (diff)
Check non-option arguments
Make sure all commands check to see if there are any "extra" arguments after the options, and print an error if so. Made all error messages consistent (which is to say, minimal). Fixes: #13527 Reviewed-by: Shane Lontis <shane.lontis@oracle.com> Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/13563)
Diffstat (limited to 'apps/dsaparam.c')
-rw-r--r--apps/dsaparam.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/apps/dsaparam.c b/apps/dsaparam.c
index 8bbd65700d..f09318f54b 100644
--- a/apps/dsaparam.c
+++ b/apps/dsaparam.c
@@ -125,15 +125,19 @@ int dsaparam_main(int argc, char **argv)
break;
}
}
+
+ /* Optional arg is bitsize. */
argc = opt_num_rest();
argv = opt_rest();
-
if (argc == 1) {
if (!opt_int(argv[0], &num) || num < 0)
- goto end;
- /* generate a key */
- numbits = num;
+ goto opthelp;
+ } else if (argc != 0) {
+ goto opthelp;
}
+
+ /* generate a key */
+ numbits = num;
private = genkey ? 1 : 0;
out = bio_open_owner(outfile, outformat, private);