From 9c54e18bf037aad58dd19346fe23866a444df05c Mon Sep 17 00:00:00 2001 From: "Dr. Stephen Henson" Date: Mon, 21 May 2007 15:53:30 +0000 Subject: [PATCH] Fixes for dgst tool. Initialize md_name, sig_name properly. Return error code on failure. Keep output format consistent with previous versions. Also flush stdout after printing ACCEPT in s_server. --- apps/dgst.c | 26 +++++++++++--------------- apps/s_server.c | 1 + 2 files changed, 12 insertions(+), 15 deletions(-) diff --git a/apps/dgst.c b/apps/dgst.c index 7e79868e7a..67bc8d382a 100644 --- a/apps/dgst.c +++ b/apps/dgst.c @@ -85,7 +85,7 @@ int MAIN(int argc, char **argv) { ENGINE *e = NULL; unsigned char *buf=NULL; - int i,err=0; + int i,err=1; const EVP_MD *md=NULL,*m; BIO *in=NULL,*inp; BIO *bmd=NULL; @@ -234,7 +234,6 @@ int MAIN(int argc, char **argv) if(do_verify && !sigfile) { BIO_printf(bio_err, "No signature to verify: use the -signature option\n"); - err = 1; goto end; } @@ -288,7 +287,6 @@ int MAIN(int argc, char **argv) SN_whirlpool,SN_whirlpool); #endif err=1; - goto end; } in=BIO_new(BIO_s_file()); @@ -313,8 +311,10 @@ int MAIN(int argc, char **argv) } if(out_bin == -1) { - if(keyfile) out_bin = 1; - else out_bin = 0; + if(keyfile) + out_bin = 1; + else + out_bin = 0; } if(randfile) @@ -494,13 +494,8 @@ int MAIN(int argc, char **argv) } else { - const char *md_name, *sig_name; - if(out_bin) - { - md_name = NULL; - sig_name = NULL; - } - else + const char *md_name = NULL, *sig_name = NULL; + if(!out_bin) { if (sigkey) { @@ -512,6 +507,7 @@ int MAIN(int argc, char **argv) } md_name = EVP_MD_name(md); } + err = 0; for (i=0; i