/* 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,"/");
+#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;
-
}
-void OPENSSL_no_config()
- {
- openssl_configured = 1;
- }