summaryrefslogtreecommitdiffstats
path: root/crypto/rand
diff options
context:
space:
mode:
authorBen Laurie <ben@openssl.org>2001-07-30 23:57:25 +0000
committerBen Laurie <ben@openssl.org>2001-07-30 23:57:25 +0000
commitdbad169019598981174ff46c7a9bf58373b0e53a (patch)
treece8ca1188d5614648f24b03967785543f1edc8f5 /crypto/rand
parent3ba5d1cf2eb6ef28ac5f6d9f3d28020d00c5be50 (diff)
Really add the EVP and all of the DES changes.
Diffstat (limited to 'crypto/rand')
-rw-r--r--crypto/rand/Makefile.ssl102
-rw-r--r--crypto/rand/md_rand.c12
-rw-r--r--crypto/rand/rand_lcl.h5
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())