2004-03-02 09:01:11 +08:00
|
|
|
=pod
|
|
|
|
|
|
|
|
=head1 NAME
|
|
|
|
|
2004-03-02 21:31:32 +08:00
|
|
|
OPENSSL_config, OPENSSL_no_config - simple OpenSSL configuration functions
|
2004-03-02 09:01:11 +08:00
|
|
|
|
|
|
|
=head1 SYNOPSIS
|
|
|
|
|
|
|
|
#include <openssl/conf.h>
|
|
|
|
|
2016-06-13 09:49:40 +08:00
|
|
|
#if OPENSSL_API_COMPAT < 0x10100000L
|
|
|
|
void OPENSSL_config(const char *appname);
|
2004-03-02 09:01:11 +08:00
|
|
|
void OPENSSL_no_config(void);
|
2016-06-13 09:49:40 +08:00
|
|
|
#endif
|
2004-03-02 09:01:11 +08:00
|
|
|
|
|
|
|
=head1 DESCRIPTION
|
|
|
|
|
2016-06-13 09:49:40 +08:00
|
|
|
OPENSSL_config() configures OpenSSL using the standard B<openssl.cnf> and
|
|
|
|
reads from the application section B<appname>. If B<appname> is NULL then
|
|
|
|
the default section, B<openssl_conf>, will be used.
|
2015-01-26 10:07:20 +08:00
|
|
|
Errors are silently ignored.
|
2014-09-10 01:45:49 +08:00
|
|
|
Multiple calls have no effect.
|
2004-03-02 09:01:11 +08:00
|
|
|
|
|
|
|
OPENSSL_no_config() disables configuration. If called before OPENSSL_config()
|
|
|
|
no configuration takes place.
|
|
|
|
|
2014-09-10 01:45:49 +08:00
|
|
|
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.
|
2004-03-02 09:01:11 +08:00
|
|
|
|
2014-09-10 01:45:49 +08:00
|
|
|
=head1 NOTES
|
2004-03-02 09:01:11 +08:00
|
|
|
|
2014-09-10 01:45:49 +08:00
|
|
|
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
|
2015-01-26 10:07:20 +08:00
|
|
|
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
|
2014-09-10 01:45:49 +08:00
|
|
|
initialization (that is before starting any threads).
|
2004-03-02 09:01:11 +08:00
|
|
|
|
|
|
|
There are several reasons why calling the OpenSSL configuration routines is
|
2015-10-28 01:40:11 +08:00
|
|
|
advisable. For example, to load dynamic ENGINEs from shared libraries (DSOs).
|
2004-03-02 09:01:11 +08:00
|
|
|
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
|
|
|
|
|
2016-11-11 16:33:09 +08:00
|
|
|
L<config(5)>,
|
2016-04-05 00:00:04 +08:00
|
|
|
L<CONF_modules_load_file(3)>
|
2004-03-02 09:01:11 +08:00
|
|
|
|
2016-02-10 00:52:40 +08:00
|
|
|
=head1 HISTORY
|
|
|
|
|
|
|
|
The OPENSSL_no_config() and OPENSSL_config() functions were
|
|
|
|
deprecated in OpenSSL 1.1.0 by OPENSSL_init_crypto().
|
|
|
|
|
2016-05-18 23:44:05 +08:00
|
|
|
=head1 COPYRIGHT
|
|
|
|
|
|
|
|
Copyright 2004-2016 The OpenSSL Project Authors. All Rights Reserved.
|
|
|
|
|
|
|
|
Licensed under the OpenSSL license (the "License"). You may not use
|
|
|
|
this file except in compliance with the License. You can obtain a copy
|
|
|
|
in the file LICENSE in the source distribution or at
|
|
|
|
L<https://www.openssl.org/source/license.html>.
|
|
|
|
|
|
|
|
=cut
|