#include <ctype.h>
#include <openssl/crypto.h>
#include "internal/cryptlib.h"
-#include <openssl/conf.h>
+#include "internal/conf.h"
#include "internal/dso.h"
#include <openssl/x509.h>
return 0;
}
-void CONF_modules_free(void)
+void conf_modules_free_intern(void)
{
CONF_modules_finish();
CONF_modules_unload(1);
fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: "
"rand_cleanup_intern()\n");
fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: "
- "CONF_modules_free()\n");
+ "conf_modules_free_intern()\n");
#ifndef OPENSSL_NO_ENGINE
fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: "
"engine_cleanup_intern()\n");
* must be called before engine_cleanup_intern()
* - ENGINEs use CRYPTO_EX_DATA and therefore, must be cleaned up
* before the ex data handlers are wiped in CRYPTO_cleanup_all_ex_data().
- * - CONF_modules_free() can end up in ENGINE code so must be called before
- * engine_cleanup_intern()
+ * - conf_modules_free_intern() can end up in ENGINE code so must be called
+ * before engine_cleanup_intern()
*/
rand_cleanup_intern();
- CONF_modules_free();
+ conf_modules_free_intern();
#ifndef OPENSSL_NO_ENGINE
engine_cleanup_intern();
#endif
#include <openssl/conf.h>
- void CONF_modules_free(void);
void CONF_modules_finish(void);
void CONF_modules_unload(int all);
+Deprecated:
+
+ #if OPENSSL_API_COMPAT < 0x10100000L
+ # define CONF_modules_free()
+ #endif
+
=head1 DESCRIPTION
CONF_modules_free() closes down and frees up all memory allocated by all
=head1 NOTES
-Normally applications will only call CONF_modules_free() at application to
-tidy up any configuration performed.
+Normally in versions of OpenSSL prior to 1.1.0 applications will only call
+CONF_modules_free() at application to tidy up any configuration performed. From
+1.1.0 CONF_modules_free() is deprecated an no explicit CONF cleanup as required
+at all. For more information see L<OPENSSL_init_crypto(3)>.
=head1 RETURN VALUE
L<conf(5)>, L<OPENSSL_config(3)>,
L<CONF_modules_load_file(3)>
+=head1 HISTORY
+
+CONF_modules_free() was deprecated in OpenSSL 1.1.0.
+
=cut
OPENSSL_no_config() disables configuration. If called before OPENSSL_config()
no configuration takes place.
-Applications should free up configuration at application closedown by calling
-CONF_modules_free().
-
If the application is built with B<OPENSSL_LOAD_CONF> defined, then a
call to OpenSSL_add_all_algorithms() will implicitly call OPENSSL_config()
first.
=head1 SEE ALSO
L<conf(5)>,
-L<CONF_modules_load_file(3)>,
-L<CONF_modules_free(3)>
+L<CONF_modules_load_file(3)>
=head1 HISTORY
void openssl_config_internal(const char *config_name);
void openssl_no_config_internal(void);
+void conf_modules_free_intern(void);
#ifdef __cplusplus
}
unsigned long flags);
void CONF_modules_unload(int all);
void CONF_modules_finish(void);
-void CONF_modules_free(void);
+#if OPENSSL_API_COMPAT < 0x10100000L
+# define CONF_modules_free()
+#endif
int CONF_module_add(const char *name, conf_init_func *ifunc,
conf_finish_func *ffunc);