Commit 9c54e18b authored by Dr. Stephen Henson's avatar Dr. Stephen Henson
Browse files

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.
parent 9aba74e5
Loading
Loading
Loading
Loading
+11 −15
Original line number Diff line number Diff line
@@ -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<argc; i++)
			{
			int r;
+1 −0
Original line number Diff line number Diff line
@@ -1447,6 +1447,7 @@ bad:
		}

	BIO_printf(bio_s_out,"ACCEPT\n");
	BIO_flush(bio_s_out);
	if (www)
		do_server(port,socket_type,&accept_socket,www_body, context);
	else