Zero the premaster secret after deriving the master secret in DH
[openssl.git] / ssl / ssl_algs.c
index 36b03335bb61d69aa7957ceb6d872af766d70240..dde8918fe0e3d992a13a7dc9210beafe18a5baab 100644 (file)
@@ -1,5 +1,5 @@
 /* ssl/ssl_algs.c */
-/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com)
+/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
  * This package is an SSL implementation written
  */
 
 #include <stdio.h>
-#include "objects.h"
-#include "lhash.h"
+#include <openssl/objects.h>
+#include <openssl/lhash.h>
 #include "ssl_locl.h"
 
-void SSLeay_add_ssl_algorithms()
+int SSL_library_init(void)
        {
 #ifndef NO_DES
        EVP_add_cipher(EVP_des_cbc());
@@ -71,23 +71,30 @@ void SSLeay_add_ssl_algorithms()
        EVP_add_cipher(EVP_idea_cbc());
 #endif
 #ifndef NO_RC4
-        EVP_add_cipher(EVP_rc4());
+       EVP_add_cipher(EVP_rc4());
 #endif  
 #ifndef NO_RC2
-        EVP_add_cipher(EVP_rc2_cbc());
+       EVP_add_cipher(EVP_rc2_cbc());
 #endif  
 
 #ifndef NO_MD2
-        EVP_add_digest(EVP_md2());
+       EVP_add_digest(EVP_md2());
 #endif
 #ifndef NO_MD5
        EVP_add_digest(EVP_md5());
+       EVP_add_digest_alias(SN_md5,"ssl2-md5");
+       EVP_add_digest_alias(SN_md5,"ssl3-md5");
 #endif
-#ifndef NO_SHA1
+#ifndef NO_SHA
        EVP_add_digest(EVP_sha1()); /* RSA with sha1 */
+       EVP_add_digest_alias(SN_sha1,"ssl3-sha1");
+       EVP_add_digest_alias(SN_sha1WithRSAEncryption,SN_sha1WithRSA);
 #endif
-#if !defined(NO_SHA1) && !defined(NO_DSA)
+#if !defined(NO_SHA) && !defined(NO_DSA)
        EVP_add_digest(EVP_dss1()); /* DSA with sha1 */
+       EVP_add_digest_alias(SN_dsaWithSHA1,SN_dsaWithSHA1_2);
+       EVP_add_digest_alias(SN_dsaWithSHA1,"DSS1");
+       EVP_add_digest_alias(SN_dsaWithSHA1,"dss1");
 #endif
 
        /* If you want support for phased out ciphers, add the following */
@@ -95,5 +102,6 @@ void SSLeay_add_ssl_algorithms()
        EVP_add_digest(EVP_sha());
        EVP_add_digest(EVP_dss());
 #endif
+       return(1);
        }