X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=apps%2Fgendh.c;h=e0c7889a31e119a680f16cc112cdb071245bbf6c;hb=2006dd12d693499ecbf532748ecbb819868f6951;hp=5ad55dae5998142655db91476cf54f552c3981af;hpb=20d242b0dee75830b104109c6fd5955a4ce35840;p=oweals%2Fopenssl.git diff --git a/apps/gendh.c b/apps/gendh.c index 5ad55dae59..e0c7889a31 100644 --- a/apps/gendh.c +++ b/apps/gendh.c @@ -85,7 +85,7 @@ int MAIN(int argc, char **argv) int ret=1,num=DEFBITS; int g=2; char *outfile=NULL; - char *inrand=NULL,*inegd=NULL; + char *inrand=NULL; BIO *out=NULL; apps_startup(); @@ -115,11 +115,6 @@ int MAIN(int argc, char **argv) if (--argc < 1) goto bad; inrand= *(++argv); } - else if (strcmp(*argv,"-egd") == 0) - { - if (--argc < 1) goto bad; - inegd= *(++argv); - } else break; argv++; @@ -130,13 +125,12 @@ int MAIN(int argc, char **argv) bad: BIO_printf(bio_err,"usage: gendh [args] [numbits]\n"); BIO_printf(bio_err," -out file - output the key to 'file\n"); - BIO_printf(bio_err," -2 - use 2 as the generator value\n"); - /* BIO_printf(bio_err," -3 - use 3 as the generator value\n"); */ - BIO_printf(bio_err," -5 - use 5 as the generator value\n"); + BIO_printf(bio_err," -2 use 2 as the generator value\n"); + /* BIO_printf(bio_err," -3 use 3 as the generator value\n"); */ + BIO_printf(bio_err," -5 use 5 as the generator value\n"); BIO_printf(bio_err," -rand file%cfile%c...\n", LIST_SEPARATOR_CHAR, LIST_SEPARATOR_CHAR); BIO_printf(bio_err," - load the file (or the files in the directory) into\n"); BIO_printf(bio_err," the random number generator\n"); - BIO_printf(bio_err," -egd file - load random seed from EGD socket\n"); goto end; } @@ -148,7 +142,15 @@ bad: } if (outfile == NULL) + { BIO_set_fp(out,stdout,BIO_NOCLOSE); +#ifdef VMS + { + BIO *tmpbio = BIO_new(BIO_f_linebuffer()); + out = BIO_push(tmpbio, out); + } +#endif + } else { if (BIO_write_filename(out,outfile) <= 0) @@ -158,16 +160,13 @@ bad: } } - if (!app_RAND_load_file(NULL, bio_err, 1) && inrand == NULL && inegd == NULL) + if (!app_RAND_load_file(NULL, bio_err, 1) && inrand == NULL) { BIO_printf(bio_err,"warning, not much extra random data, consider using the -rand option\n"); } if (inrand != NULL) BIO_printf(bio_err,"%ld semi-random bytes loaded\n", app_RAND_load_files(inrand)); - if (inegd != NULL) - BIO_printf(bio_err,"%ld egd bytes loaded\n", - RAND_egd(inegd)); BIO_printf(bio_err,"Generating DH parameters, %d bit long safe prime, generator %d\n",num,g); BIO_printf(bio_err,"This is going to take a long time\n"); @@ -183,7 +182,7 @@ bad: end: if (ret != 0) ERR_print_errors(bio_err); - if (out != NULL) BIO_free(out); + if (out != NULL) BIO_free_all(out); if (dh != NULL) DH_free(dh); EXIT(ret); }