Commit de2d97cd authored by Tim Hudson's avatar Tim Hudson Committed by Dr. Stephen Henson
Browse files

Add option to generate old hash format.

New -hash_old to generate CRL hashes using old
(before OpenSSL 1.0.0) algorithm.
parent 10378fb5
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
@@ -81,6 +81,9 @@ static const char *crl_usage[]={
" -in arg         - input file - default stdin\n",
" -out arg        - output file - default stdout\n",
" -hash           - print hash value\n",
#ifndef OPENSSL_NO_MD5
" -hash_old       - print old-style (MD5) hash value\n",
#endif
" -fingerprint    - print the crl fingerprint\n",
" -issuer         - print issuer DN\n",
" -lastupdate     - lastUpdate field\n",
@@ -107,6 +110,9 @@ int MAIN(int argc, char **argv)
	int informat,outformat, keyformat;
	char *infile=NULL,*outfile=NULL, *crldiff = NULL, *keyfile = NULL;
	int hash=0,issuer=0,lastupdate=0,nextupdate=0,noout=0,text=0;
#ifndef OPENSSL_NO_MD5
       int hash_old=0;
#endif
	int fingerprint = 0, crlnumber = 0;
	const char **pp;
	X509_STORE *store = NULL;
@@ -207,6 +213,10 @@ int MAIN(int argc, char **argv)
			text = 1;
		else if (strcmp(*argv,"-hash") == 0)
			hash= ++num;
#ifndef OPENSSL_NO_MD5
		else if (strcmp(*argv,"-hash_old") == 0)
			hash_old= ++num;
#endif
		else if (strcmp(*argv,"-nameopt") == 0)
			{
			if (--argc < 1) goto bad;
@@ -354,6 +364,14 @@ bad:
				BIO_printf(bio_out,"%08lx\n",
					X509_NAME_hash(X509_CRL_get_issuer(x)));
				}
#ifndef OPENSSL_NO_MD5
			if (hash_old == i)
				{
				BIO_printf(bio_out,"%08lx\n",
					X509_NAME_hash_old(
						X509_CRL_get_issuer(x)));
				}
#endif
			if (lastupdate == i)
				{
				BIO_printf(bio_out,"lastUpdate=");