1EVP_SET_DEFAULT_PROPERTIES(3ossl) OpenSSL EVP_SET_DEFAULT_PROPERTIES(3ossl)
2
3
4
6 EVP_set_default_properties, EVP_default_properties_enable_fips,
7 EVP_default_properties_is_fips_enabled - Set default properties for
8 future algorithm fetches
9
11 #include <openssl/evp.h>
12
13 int EVP_set_default_properties(OSSL_LIB_CTX *libctx, const char *propq);
14 int EVP_default_properties_enable_fips(OSSL_LIB_CTX *libctx, int enable);
15 int EVP_default_properties_is_fips_enabled(OSSL_LIB_CTX *libctx);
16
18 EVP_set_default_properties() sets the default properties for all future
19 EVP algorithm fetches, implicit as well as explicit. See "ALGORITHM
20 FETCHING" in crypto(7) for information about implicit and explicit
21 fetching.
22
23 EVP_set_default_properties stores the properties given with the string
24 propq among the EVP data that's been stored in the library context
25 given with libctx (NULL signifies the default library context).
26
27 Any previous default property for the specified library context will be
28 dropped.
29
30 EVP_default_properties_enable_fips() sets the 'fips=yes' to be a
31 default property if enable is non zero, otherwise it clears 'fips' from
32 the default property query for the given libctx. It merges the fips
33 default property query with any existing query strings that have been
34 set via EVP_set_default_properties().
35
36 EVP_default_properties_is_fips_enabled() indicates if 'fips=yes' is a
37 default property for the given libctx.
38
40 EVP_set_default_properties() and EVP_default_properties_enable_fips()
41 are not thread safe. They are intended to be called only during the
42 initialisation phase of a libctx.
43
45 EVP_set_default_properties() and EVP_default_properties_enable_fips()
46 return 1 on success, or 0 on failure. An error is placed on the error
47 stack if a failure occurs.
48
49 EVP_default_properties_is_fips_enabled() returns 1 if the 'fips=yes'
50 default property is set for the given libctx, otherwise it returns 0.
51
53 EVP_MD_fetch(3)
54
56 The functions described here were added in OpenSSL 3.0.
57
59 Copyright 2019-2022 The OpenSSL Project Authors. All Rights Reserved.
60
61 Licensed under the Apache License 2.0 (the "License"). You may not use
62 this file except in compliance with the License. You can obtain a copy
63 in the file LICENSE in the source distribution or at
64 <https://www.openssl.org/source/license.html>.
65
66
67
683.0.5 2022-11-01 EVP_SET_DEFAULT_PROPERTIES(3ossl)