123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- =pod
- =head1 NAME
- NCONF_new_ex, NCONF_new, NCONF_free, NCONF_default, NCONF_load,
- NCONF_get0_libctx, NCONF_get_section, NCONF_get_section_names
- - functionality to Load and parse configuration files manually
- =head1 SYNOPSIS
- #include <openssl/conf.h>
- typedef struct {
- char *section;
- char *name;
- char *value;
- } CONF_VALUE;
- CONF *NCONF_new_ex(OSSL_LIB_CTX *libctx, CONF_METHOD *meth);
- CONF *NCONF_new(CONF_METHOD *meth);
- void NCONF_free(CONF *conf);
- CONF_METHOD *NCONF_default(void);
- int NCONF_load(CONF *conf, const char *file, long *eline);
- OSSL_LIB_CTX *NCONF_get0_libctx(const CONF *conf);
- STACK_OF(CONF_VALUE) *NCONF_get_section(const CONF *conf, const char *name);
- STACK_OF(OPENSSL_CSTRING) *NCONF_get_section_names(const CONF *conf);
- =head1 DESCRIPTION
- NCONF_new_ex() creates a new CONF object in heap memory and assigns to
- it a context I<libctx> that can be used during loading. If the method table
- I<meth> is set to NULL then the default value of NCONF_default() is used.
- NCONF_new() is similar to NCONF_new_ex() but sets the I<libctx> to NULL.
- NCONF_free() frees the data associated with I<conf> and then frees the I<conf>
- object.
- NCONF_load() parses the file named I<filename> and adds the values found to
- I<conf>. If an error occurs I<file> and I<eline> list the file and line that
- the load failed on if they are not NULL.
- NCONF_default() gets the default method table for processing a configuration file.
- NCONF_get0_libctx() gets the library context associated with the I<conf>
- parameter.
- NCONF_get_section_names() gets the names of the sections associated with
- the I<conf> as B<STACK_OF(OPENSSL_CSTRING)> strings. The individual strings
- are associated with the I<conf> and will be invalid after I<conf> is
- freed. The returned stack must be freed with sk_OPENSSL_CSTRING_free().
- NCONF_get_section() gets the config values associated with the I<conf> from
- the config section I<name> as B<STACK_OF(CONF_VALUE)> structures. The returned
- stack is associated with the I<conf> and will be invalid after I<conf>
- is freed. It must not be freed by the caller.
- =head1 RETURN VALUES
- NCONF_load() returns 1 on success or 0 on error.
- NCONF_new_ex() and NCONF_new() return a newly created I<CONF> object
- or NULL if an error occurs.
- =head1 SEE ALSO
- L<CONF_modules_load_file(3)>,
- =head1 HISTORY
- NCONF_new_ex(), NCONF_get0_libctx(), and NCONF_get_section_names() were added
- in OpenSSL 3.0.
- =head1 COPYRIGHT
- Copyright 2020-2021 The OpenSSL Project Authors. All Rights Reserved.
- Licensed under the Apache License 2.0 (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
|