X-Git-Url: https://git.openssl.org/?a=blobdiff_plain;f=apps%2Frand.c;h=f99c91dbbf45b73375c6027d81cdfd16b690e4b4;hb=15b7175f558bf9eb057ec3266685486f727dd70f;hp=1ad6894597fcfcddd5b42275a6e719074d9335b9;hpb=33388b44b67145af2181b1e9528c381c8ea0d1b6;p=openssl.git diff --git a/apps/rand.c b/apps/rand.c index 1ad6894597..f99c91dbbf 100644 --- a/apps/rand.c +++ b/apps/rand.c @@ -1,5 +1,5 @@ /* - * Copyright 1998-2020 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1998-2021 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the Apache License 2.0 (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -19,7 +19,7 @@ #include typedef enum OPTION_choice { - OPT_ERR = -1, OPT_EOF = 0, OPT_HELP, + OPT_COMMON, OPT_OUT, OPT_ENGINE, OPT_BASE64, OPT_HEX, OPT_R_ENUM, OPT_PROV_ENUM } OPTION_CHOICE; @@ -88,16 +88,20 @@ int rand_main(int argc, char **argv) break; } } + + /* Optional argument is number of bytes to generate. */ argc = opt_num_rest(); argv = opt_rest(); if (argc == 1) { if (!opt_int(argv[0], &num) || num <= 0) - goto end; - } else if (argc > 0) { - BIO_printf(bio_err, "Extra arguments given.\n"); + goto opthelp; + } else if (!opt_check_rest_arg(NULL)) { goto opthelp; } + if (!app_RAND_load()) + goto end; + out = bio_open_default(outfile, 'w', format); if (out == NULL) goto end;