Blame doc/man3/OPENSSL_config.pod

Packit c4476c
=pod
Packit c4476c
Packit c4476c
=head1 NAME
Packit c4476c
Packit c4476c
OPENSSL_config, OPENSSL_no_config - simple OpenSSL configuration functions
Packit c4476c
Packit c4476c
=head1 SYNOPSIS
Packit c4476c
Packit c4476c
 #include <openssl/conf.h>
Packit c4476c
Packit c4476c
 #if OPENSSL_API_COMPAT < 0x10100000L
Packit c4476c
 void OPENSSL_config(const char *appname);
Packit c4476c
 void OPENSSL_no_config(void);
Packit c4476c
 #endif
Packit c4476c
Packit c4476c
=head1 DESCRIPTION
Packit c4476c
Packit c4476c
OPENSSL_config() configures OpenSSL using the standard B<openssl.cnf> and
Packit c4476c
reads from the application section B<appname>. If B<appname> is NULL then
Packit c4476c
the default section, B<openssl_conf>, will be used.
Packit c4476c
Errors are silently ignored.
Packit c4476c
Multiple calls have no effect.
Packit c4476c
Packit c4476c
OPENSSL_no_config() disables configuration. If called before OPENSSL_config()
Packit c4476c
no configuration takes place.
Packit c4476c
Packit c4476c
If the application is built with B<OPENSSL_LOAD_CONF> defined, then a
Packit c4476c
call to OpenSSL_add_all_algorithms() will implicitly call OPENSSL_config()
Packit c4476c
first.
Packit c4476c
Packit c4476c
=head1 NOTES
Packit c4476c
Packit c4476c
The OPENSSL_config() function is designed to be a very simple "call it and
Packit c4476c
forget it" function.
Packit c4476c
It is however B<much> better than nothing. Applications which need finer
Packit c4476c
control over their configuration functionality should use the configuration
Packit c4476c
functions such as CONF_modules_load() directly. This function is deprecated
Packit c4476c
and its use should be avoided.
Packit c4476c
Applications should instead call CONF_modules_load() during
Packit c4476c
initialization (that is before starting any threads).
Packit c4476c
Packit c4476c
There are several reasons why calling the OpenSSL configuration routines is
Packit c4476c
advisable. For example, to load dynamic ENGINEs from shared libraries (DSOs).
Packit c4476c
However very few applications currently support the control interface and so
Packit c4476c
very few can load and use dynamic ENGINEs. Equally in future more sophisticated
Packit c4476c
ENGINEs will require certain control operations to customize them. If an
Packit c4476c
application calls OPENSSL_config() it doesn't need to know or care about
Packit c4476c
ENGINE control operations because they can be performed by editing a
Packit c4476c
configuration file.
Packit c4476c
Packit c4476c
=head1 ENVIRONMENT
Packit c4476c
Packit c4476c
=over 4
Packit c4476c
Packit c4476c
=item B<OPENSSL_CONF>
Packit c4476c
Packit c4476c
The path to the config file.
Packit c4476c
Ignored in set-user-ID and set-group-ID programs.
Packit c4476c
Packit c4476c
=back
Packit c4476c
Packit c4476c
=head1 RETURN VALUES
Packit c4476c
Packit c4476c
Neither OPENSSL_config() nor OPENSSL_no_config() return a value.
Packit c4476c
Packit c4476c
=head1 SEE ALSO
Packit c4476c
Packit c4476c
L<config(5)>,
Packit c4476c
L<CONF_modules_load_file(3)>
Packit c4476c
Packit c4476c
=head1 HISTORY
Packit c4476c
Packit c4476c
The OPENSSL_no_config() and OPENSSL_config() functions were
Packit c4476c
deprecated in OpenSSL 1.1.0 by OPENSSL_init_crypto().
Packit c4476c
Packit c4476c
=head1 COPYRIGHT
Packit c4476c
Packit c4476c
Copyright 2004-2018 The OpenSSL Project Authors. All Rights Reserved.
Packit c4476c
Packit c4476c
Licensed under the OpenSSL license (the "License").  You may not use
Packit c4476c
this file except in compliance with the License.  You can obtain a copy
Packit c4476c
in the file LICENSE in the source distribution or at
Packit c4476c
L<https://www.openssl.org/source/license.html>.
Packit c4476c
Packit c4476c
=cut