diff options
author | Ben Laurie <ben@openssl.org> | 2001-07-30 23:57:25 +0000 |
---|---|---|
committer | Ben Laurie <ben@openssl.org> | 2001-07-30 23:57:25 +0000 |
commit | dbad169019598981174ff46c7a9bf58373b0e53a (patch) | |
tree | ce8ca1188d5614648f24b03967785543f1edc8f5 /crypto/rand | |
parent | 3ba5d1cf2eb6ef28ac5f6d9f3d28020d00c5be50 (diff) |
Really add the EVP and all of the DES changes.
Diffstat (limited to 'crypto/rand')
-rw-r--r-- | crypto/rand/Makefile.ssl | 102 | ||||
-rw-r--r-- | crypto/rand/md_rand.c | 12 | ||||
-rw-r--r-- | crypto/rand/rand_lcl.h | 5 |
3 files changed, 43 insertions, 76 deletions
diff --git a/crypto/rand/Makefile.ssl b/crypto/rand/Makefile.ssl index 448a453613..3dc3eeb0ca 100644 --- a/crypto/rand/Makefile.ssl +++ b/crypto/rand/Makefile.ssl @@ -82,115 +82,77 @@ clean: # DO NOT DELETE THIS LINE -- make depend depends on it. md_rand.o: ../../e_os.h ../../include/openssl/asn1.h -md_rand.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h -md_rand.o: ../../include/openssl/bn.h ../../include/openssl/cast.h -md_rand.o: ../../include/openssl/crypto.h ../../include/openssl/des.h -md_rand.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h -md_rand.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h -md_rand.o: ../../include/openssl/evp.h ../../include/openssl/idea.h -md_rand.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h -md_rand.o: ../../include/openssl/md4.h ../../include/openssl/md5.h -md_rand.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h +md_rand.o: ../../include/openssl/bio.h ../../include/openssl/bn.h +md_rand.o: ../../include/openssl/crypto.h ../../include/openssl/dh.h +md_rand.o: ../../include/openssl/dsa.h ../../include/openssl/e_os2.h +md_rand.o: ../../include/openssl/err.h ../../include/openssl/evp.h +md_rand.o: ../../include/openssl/lhash.h ../../include/openssl/obj_mac.h md_rand.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h md_rand.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h -md_rand.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h -md_rand.o: ../../include/openssl/rc5.h ../../include/openssl/rd_fst.h -md_rand.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h md_rand.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h md_rand.o: ../../include/openssl/sha.h ../../include/openssl/stack.h -md_rand.o: ../../include/openssl/symhacks.h md_rand.c rand_lcl.h +md_rand.o: ../../include/openssl/symhacks.h rand_lcl.h rand_egd.o: ../../include/openssl/e_os2.h ../../include/openssl/opensslconf.h -rand_egd.o: ../../include/openssl/rand.h rand_egd.c +rand_egd.o: ../../include/openssl/rand.h rand_err.o: ../../include/openssl/bio.h ../../include/openssl/crypto.h rand_err.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h rand_err.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h rand_err.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h rand_err.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h -rand_err.o: ../../include/openssl/symhacks.h rand_err.c +rand_err.o: ../../include/openssl/symhacks.h rand_lib.o: ../../e_os.h ../../include/openssl/asn1.h -rand_lib.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h -rand_lib.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h -rand_lib.o: ../../include/openssl/cast.h ../../include/openssl/crypto.h -rand_lib.o: ../../include/openssl/des.h ../../include/openssl/dh.h -rand_lib.o: ../../include/openssl/dsa.h ../../include/openssl/e_os2.h -rand_lib.o: ../../include/openssl/engine.h ../../include/openssl/err.h -rand_lib.o: ../../include/openssl/evp.h ../../include/openssl/idea.h -rand_lib.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h -rand_lib.o: ../../include/openssl/md4.h ../../include/openssl/md5.h -rand_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h +rand_lib.o: ../../include/openssl/bio.h ../../include/openssl/bn.h +rand_lib.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h +rand_lib.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h +rand_lib.o: ../../include/openssl/e_os2.h ../../include/openssl/engine.h +rand_lib.o: ../../include/openssl/err.h ../../include/openssl/evp.h +rand_lib.o: ../../include/openssl/lhash.h ../../include/openssl/obj_mac.h rand_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h rand_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h rand_lib.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h -rand_lib.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h -rand_lib.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h -rand_lib.o: ../../include/openssl/rd_fst.h ../../include/openssl/rijndael.h -rand_lib.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h +rand_lib.o: ../../include/openssl/rand.h ../../include/openssl/rsa.h rand_lib.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h rand_lib.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h rand_lib.o: ../../include/openssl/ui.h ../../include/openssl/x509.h -rand_lib.o: ../../include/openssl/x509_vfy.h ../cryptlib.h rand_lib.c +rand_lib.o: ../../include/openssl/x509_vfy.h ../cryptlib.h rand_os2.o: ../../e_os.h ../../include/openssl/asn1.h -rand_os2.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h -rand_os2.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h -rand_os2.o: ../../include/openssl/cast.h ../../include/openssl/crypto.h -rand_os2.o: ../../include/openssl/des.h ../../include/openssl/dh.h -rand_os2.o: ../../include/openssl/dsa.h ../../include/openssl/e_os2.h -rand_os2.o: ../../include/openssl/err.h ../../include/openssl/evp.h -rand_os2.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h -rand_os2.o: ../../include/openssl/md2.h ../../include/openssl/md4.h -rand_os2.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h +rand_os2.o: ../../include/openssl/bio.h ../../include/openssl/bn.h +rand_os2.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h +rand_os2.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h +rand_os2.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h +rand_os2.o: ../../include/openssl/evp.h ../../include/openssl/lhash.h rand_os2.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h rand_os2.o: ../../include/openssl/opensslconf.h rand_os2.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h -rand_os2.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h -rand_os2.o: ../../include/openssl/rc5.h ../../include/openssl/rd_fst.h -rand_os2.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h rand_os2.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h rand_os2.o: ../../include/openssl/sha.h ../../include/openssl/stack.h rand_os2.o: ../../include/openssl/symhacks.h ../cryptlib.h rand_lcl.h -rand_os2.o: rand_os2.c rand_unix.o: ../../e_os.h ../../include/openssl/asn1.h -rand_unix.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h -rand_unix.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h -rand_unix.o: ../../include/openssl/cast.h ../../include/openssl/crypto.h -rand_unix.o: ../../include/openssl/des.h ../../include/openssl/dh.h -rand_unix.o: ../../include/openssl/dsa.h ../../include/openssl/e_os2.h -rand_unix.o: ../../include/openssl/err.h ../../include/openssl/evp.h -rand_unix.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h -rand_unix.o: ../../include/openssl/md2.h ../../include/openssl/md4.h -rand_unix.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h +rand_unix.o: ../../include/openssl/bio.h ../../include/openssl/bn.h +rand_unix.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h +rand_unix.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h +rand_unix.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h +rand_unix.o: ../../include/openssl/evp.h ../../include/openssl/lhash.h rand_unix.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h rand_unix.o: ../../include/openssl/opensslconf.h rand_unix.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h -rand_unix.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h -rand_unix.o: ../../include/openssl/rc5.h ../../include/openssl/rd_fst.h -rand_unix.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h rand_unix.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h rand_unix.o: ../../include/openssl/sha.h ../../include/openssl/stack.h rand_unix.o: ../../include/openssl/symhacks.h ../cryptlib.h rand_lcl.h -rand_unix.o: rand_unix.c rand_win.o: ../../e_os.h ../../include/openssl/asn1.h -rand_win.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h -rand_win.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h -rand_win.o: ../../include/openssl/cast.h ../../include/openssl/crypto.h -rand_win.o: ../../include/openssl/des.h ../../include/openssl/dh.h -rand_win.o: ../../include/openssl/dsa.h ../../include/openssl/e_os2.h -rand_win.o: ../../include/openssl/err.h ../../include/openssl/evp.h -rand_win.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h -rand_win.o: ../../include/openssl/md2.h ../../include/openssl/md4.h -rand_win.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h +rand_win.o: ../../include/openssl/bio.h ../../include/openssl/bn.h +rand_win.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h +rand_win.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h +rand_win.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h +rand_win.o: ../../include/openssl/evp.h ../../include/openssl/lhash.h rand_win.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h rand_win.o: ../../include/openssl/opensslconf.h rand_win.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h -rand_win.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h -rand_win.o: ../../include/openssl/rc5.h ../../include/openssl/rd_fst.h -rand_win.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h rand_win.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h rand_win.o: ../../include/openssl/sha.h ../../include/openssl/stack.h rand_win.o: ../../include/openssl/symhacks.h ../cryptlib.h rand_lcl.h -rand_win.o: rand_win.c randfile.o: ../../e_os.h ../../include/openssl/crypto.h randfile.o: ../../include/openssl/e_os2.h ../../include/openssl/opensslconf.h randfile.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h randfile.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h -randfile.o: ../../include/openssl/symhacks.h randfile.c +randfile.o: ../../include/openssl/symhacks.h diff --git a/crypto/rand/md_rand.c b/crypto/rand/md_rand.c index 6d7f37e15e..841631d3ca 100644 --- a/crypto/rand/md_rand.c +++ b/crypto/rand/md_rand.c @@ -192,7 +192,7 @@ static void ssleay_rand_add(const void *buf, int num, double add) int i,j,k,st_idx; long md_c[2]; unsigned char local_md[MD_DIGEST_LENGTH]; - MD_CTX m; + EVP_MD_CTX m; int do_not_lock; /* @@ -254,6 +254,7 @@ static void ssleay_rand_add(const void *buf, int num, double add) if (!do_not_lock) CRYPTO_w_unlock(CRYPTO_LOCK_RAND); + EVP_MD_CTX_init(&m); for (i=0; i<num; i+=MD_DIGEST_LENGTH) { j=(num-i); @@ -292,7 +293,7 @@ static void ssleay_rand_add(const void *buf, int num, double add) st_idx=0; } } - memset((char *)&m,0,sizeof(m)); + EVP_MD_CTX_cleanup(&m); if (!do_not_lock) CRYPTO_w_lock(CRYPTO_LOCK_RAND); /* Don't just copy back local_md into md -- this could mean that @@ -325,7 +326,7 @@ static int ssleay_rand_bytes(unsigned char *buf, int num) int ok; long md_c[2]; unsigned char local_md[MD_DIGEST_LENGTH]; - MD_CTX m; + EVP_MD_CTX m; #ifndef GETPID_IS_MEANINGLESS pid_t curr_pid = getpid(); #endif @@ -344,7 +345,8 @@ static int ssleay_rand_bytes(unsigned char *buf, int num) if (num <= 0) return 1; - + + EVP_MD_CTX_init(&m); /* round upwards to multiple of MD_DIGEST_LENGTH/2 */ num_ceil = (1 + (num-1)/(MD_DIGEST_LENGTH/2)) * (MD_DIGEST_LENGTH/2); @@ -493,7 +495,7 @@ static int ssleay_rand_bytes(unsigned char *buf, int num) MD_Final(&m,md); CRYPTO_w_unlock(CRYPTO_LOCK_RAND); - memset(&m,0,sizeof(m)); + EVP_MD_CTX_cleanup(&m); if (ok) return(1); else diff --git a/crypto/rand/rand_lcl.h b/crypto/rand/rand_lcl.h index f81291b6dc..cc95112c8c 100644 --- a/crypto/rand/rand_lcl.h +++ b/crypto/rand/rand_lcl.h @@ -130,22 +130,25 @@ #endif #include <openssl/evp.h> -#define MD_CTX EVP_MD_CTX #define MD_Update(a,b,c) EVP_DigestUpdate(a,b,c) #define MD_Final(a,b) EVP_DigestFinal(a,b,NULL) #if defined(USE_MD5_RAND) +#include <openssl/md5.h> #define MD_DIGEST_LENGTH MD5_DIGEST_LENGTH #define MD_Init(a) EVP_DigestInit(a,EVP_md5()) #define MD(a,b,c) EVP_Digest(a,b,c,NULL,EVP_md5()) #elif defined(USE_SHA1_RAND) +#include <openssl/sha.h> #define MD_DIGEST_LENGTH SHA_DIGEST_LENGTH #define MD_Init(a) EVP_DigestInit(a,EVP_sha1()) #define MD(a,b,c) EVP_Digest(a,b,c,NULL,EVP_sha1()) #elif defined(USE_MDC2_RAND) +#include <openssl/mdc2.h> #define MD_DIGEST_LENGTH MDC2_DIGEST_LENGTH #define MD_Init(a) EVP_DigestInit(a,EVP_mdc2()) #define MD(a,b,c) EVP_Digest(a,b,c,NULL,EVP_mdc2()) #elif defined(USE_MD2_RAND) +#include <openssl/md2.h> #define MD_DIGEST_LENGTH MD2_DIGEST_LENGTH #define MD_Init(a) EVP_DigestInit(a,EVP_md2()) #define MD(a,b,c) EVP_Digest(a,b,c,NULL,EVP_md2()) |