12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- =pod
- =head1 NAME
- EVP_set_default_properties, EVP_default_properties_enable_fips,
- EVP_default_properties_is_fips_enabled
- - Set default properties for future algorithm fetches
- =head1 SYNOPSIS
- #include <openssl/evp.h>
- int EVP_set_default_properties(OPENSSL_CTX *libctx, const char *propq);
- int EVP_default_properties_enable_fips(OPENSSL_CTX *libctx, int enable);
- int EVP_default_properties_is_fips_enabled(OPENSSL_CTX *libctx);
- =head1 DESCRIPTION
- EVP_set_default_properties() sets the default properties for all
- future EVP algorithm fetches, implicit as well as explicit.
- =for comment TODO(3.0) We should consider having an EVP document in
- section 7 that details everything about implicit vs explicit fetches
- and how they relate to properties.
- EVP_set_default_properties stores the properties given with the string
- I<propq> among the EVP data that's been stored in the library context
- given with I<libctx> (NULL signifies the default library context).
- Any previous default property for the specified library context will
- be dropped.
- EVP_default_properties_enable_fips() sets the 'fips=yes' to be a default property
- if I<enable> is non zero, otherwise it clears 'fips' from the default property
- query for the given I<libctx>. It merges the fips default property query with any
- existing query strings that have been set via EVP_set_default_properties().
- EVP_default_properties_is_fips_enabled() indicates if 'fips=yes' is a default
- property for the given I<libctx>.
- =head1 RETURN VALUES
- EVP_set_default_properties() and EVP_default_properties_enable_fips() return 1
- on success, or 0 on failure. An error is placed on the error stack if a
- failure occurs.
- EVP_default_properties_is_fips_enabled() returns 1 if the 'fips=yes' default
- property is set for the given I<libctx>, otherwise it returns 0.
- =head1 SEE ALSO
- L<EVP_MD_fetch(3)>
- =head1 HISTORY
- The functions described here were added in OpenSSL 3.0.
- =head1 COPYRIGHT
- Copyright 2019-2020 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
|