| =pod |
| |
| =head1 NAME |
| |
| OPENSSL_config, OPENSSL_no_config - simple OpenSSL configuration functions |
| |
| =head1 SYNOPSIS |
| |
| #include <openssl/conf.h> |
| |
| void OPENSSL_config(const char *config_name); |
| void OPENSSL_no_config(void); |
| |
| =head1 DESCRIPTION |
| |
| OPENSSL_config() configures OpenSSL using the standard B<openssl.cnf> |
| configuration file name using B<config_name>. If B<config_name> is NULL then |
| the file specified in the environment variable B<OPENSSL_CONF> will be used, |
| and if that is not set then a system default location is used. |
| Errors are silently ignored. |
| Multiple calls have no effect. |
| |
| 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 NOTES |
| |
| The OPENSSL_config() function is designed to be a very simple "call it and |
| forget it" function. |
| It is however B<much> better than nothing. Applications which need finer |
| control over their configuration functionality should use the configuration |
| functions such as CONF_modules_load() directly. This function is deprecated |
| and its use should be avoided. |
| Applications should instead call CONF_modules_load() during |
| initialization (that is before starting any threads). |
| |
| There are several reasons why calling the OpenSSL configuration routines is |
| advisable. For example new ENGINE functionality was added to OpenSSL 0.9.7. |
| In OpenSSL 0.9.7 control functions can be supported by ENGINEs, this can be |
| used (among other things) to load dynamic ENGINEs from shared libraries (DSOs). |
| However very few applications currently support the control interface and so |
| very few can load and use dynamic ENGINEs. Equally in future more sophisticated |
| ENGINEs will require certain control operations to customize them. If an |
| application calls OPENSSL_config() it doesn't need to know or care about |
| ENGINE control operations because they can be performed by editing a |
| configuration file. |
| |
| =head1 RETURN VALUES |
| |
| Neither OPENSSL_config() nor OPENSSL_no_config() return a value. |
| |
| =head1 SEE ALSO |
| |
| L<conf(5)|conf(5)>, |
| L<CONF_modules_load_file(3)|CONF_modules_load_file(3)>, |
| L<CONF_modules_free(3)|CONF_modules_free(3)> |
| |
| =head1 HISTORY |
| |
| OPENSSL_config() and OPENSSL_no_config() first appeared in OpenSSL 0.9.7 |
| |
| =cut |