New config module for string tables. This can be used to add new
[openssl.git] / crypto / conf / conf_mall.c
index 01cff6946a44d8ddd347306c6d379a6446b75b63..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();
+       ASN1_add_stable_module();
+#ifndef OPENSSL_NO_ENGINE
        ENGINE_add_conf_module();
-       }
-
-#if 0 /* not yet */
-/* 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()
- */
 #endif
-
-static int openssl_configured = 0;
-
-void OPENSSL_config(void)
-       {
-       int err_exit = 0;
-       char *file;
-       if (openssl_configured)
-               return;
-
-       OPENSSL_load_builtin_modules();
-
-       file = CONF_get1_default_config_file();
-       if (!file)
-               return;
-
-       ERR_clear_error();
-       if (CONF_modules_load_file(file, "openssl_config", 0) <= 0)
-               {
-               if (ERR_GET_REASON(ERR_peek_last_error()) == CONF_R_NO_SUCH_FILE)
-                       ERR_clear_error();
-               else
-                       err_exit = 1;
-               }
-
-       OPENSSL_free(file);
-       if (err_exit)
-               {
-               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;
-       }