New config module for string tables. This can be used to add new
[openssl.git] / crypto / conf / conf_mall.c
index 7ecc1aee61f99c957d7863a402fe992fa181a648..ee05d85de63680969aa3f5a7e55cdc6ff693902d 100644 (file)
@@ -1,5 +1,5 @@
 /* conf_mall.c */
-/* Written by Stephen Henson (shenson@bigfoot.com) for the OpenSSL
+/* Written by Stephen Henson (steve@openssl.org) for the OpenSSL
  * project 2001.
  */
 /* ====================================================================
 #include <openssl/dso.h>
 #include <openssl/x509.h>
 #include <openssl/asn1.h>
+#ifndef OPENSSL_NO_ENGINE
+#include <openssl/engine.h>
+#endif
+
+/* Load all OpenSSL builtin modules */
 
 void OPENSSL_load_builtin_modules(void)
        {
        /* Add builtin modules here */
        ASN1_add_oid_module();
-       }
-
-/* This is the automatic configuration loader: it is called automatically by
- * OpenSSL when any of a number of standard initialisation functions are called,
- * unless this is overridden by calling OPENSSL_no_config()
- */
-
-static int openssl_configured = 0;
-
-void OPENSSL_config(void)
-       {
-       char *file, config_name[256];
-       if (openssl_configured)
-               return;
-
-       OPENSSL_load_builtin_modules();
-
-       file = getenv("OPENSSL_CONF");
-       if (!file)
-                {
-               strcpy(config_name,X509_get_default_cert_area());
-#ifndef OPENSSL_SYS_VMS
-               strcat(config_name,"/");
+       ASN1_add_stable_module();
+#ifndef OPENSSL_NO_ENGINE
+       ENGINE_add_conf_module();
 #endif
-               strcat(config_name,OPENSSL_CONF);
-               file=config_name;
-                }
-
-       if(CONF_modules_load_file(file, "openssl_config", 0) <= 0)
-               {
-               BIO *bio_err;
-
-               ERR_load_crypto_strings();
-               if ((bio_err=BIO_new(BIO_s_file())) != NULL)
-                       {
-                       BIO_set_fp(bio_err,stderr,BIO_NOCLOSE|BIO_FP_TEXT);
-                       BIO_printf(bio_err,"Auto configuration failed\n");
-                       ERR_print_errors(bio_err);
-                       }
-               exit(1);
-               }
-
-       return;
-
+       EVP_add_alg_module();
        }
 
-void OPENSSL_no_config()
-       {
-       openssl_configured = 1;
-       }