summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2019-08-23 14:03:28 +0200
committerRichard Levitte <levitte@openssl.org>2019-09-03 10:36:49 +0200
commit3ca9d210c94b9b88b89b224797aa403dfe97ccce (patch)
tree6e365bd489d75e5d4a8ae814103edbfecc715715 /include
parent7964e3709af59675795ab1f4f69a935980379a66 (diff)
Refactor how KEYMGMT methods get associated with other methods
KEYMGMT methods were attached to other methods after those were fully created and registered, thereby creating a potential data race, if two threads tried to create the exact same method at the same time. Instead of this, we change the method creating function to take an extra data parameter, passed all the way from the public fetching function. In the case of EVP_KEYEXCH, we pass all the necessary data that evp_keyexch_from_dispatch() needs to be able to fetch the appropriate KEYMGMT method on the fly. Fixes #9592 Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9678)
Diffstat (limited to 'include')
-rw-r--r--include/openssl/evperr.h5
1 files changed, 1 insertions, 4 deletions
diff --git a/include/openssl/evperr.h b/include/openssl/evperr.h
index 34966f84cd..714f170bd9 100644
--- a/include/openssl/evperr.h
+++ b/include/openssl/evperr.h
@@ -41,10 +41,6 @@ int ERR_load_EVP_strings(void);
# define EVP_F_ARIA_GCM_INIT_KEY 0
# define EVP_F_ARIA_INIT_KEY 0
# define EVP_F_B64_NEW 0
-# define EVP_F_BLAKE2B_MAC_CTRL 0
-# define EVP_F_BLAKE2B_MAC_INIT 0
-# define EVP_F_BLAKE2S_MAC_CTRL 0
-# define EVP_F_BLAKE2S_MAC_INIT 0
# define EVP_F_CAMELLIA_INIT_KEY 0
# define EVP_F_CHACHA20_POLY1305_CTRL 0
# define EVP_F_CMLL_T4_INIT_KEY 0
@@ -218,6 +214,7 @@ int ERR_load_EVP_strings(void);
# define EVP_R_NO_CIPHER_SET 131
# define EVP_R_NO_DEFAULT_DIGEST 158
# define EVP_R_NO_DIGEST_SET 139
+# define EVP_R_NO_KEYMGMT_AVAILABLE 199
# define EVP_R_NO_KEYMGMT_PRESENT 196
# define EVP_R_NO_KEY_SET 154
# define EVP_R_NO_OPERATION_SET 149