From 749691374ccf87418ca0e6664a9b9c831dcfe108 Mon Sep 17 00:00:00 2001 From: Richard Levitte Date: Wed, 20 Apr 2022 16:43:13 +0200 Subject: Drop ossl_provider_clear_all_operation_bits() and all uses of it This is a misused function, as it was called during query cache flush, when the provider operation bits were meant to record if methods for a certain operation has already been added to the method store. Fixes #18150 Reviewed-by: Tomas Mraz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/18151) (cherry picked from commit 20b6d85ab2b9cfa4cd29d2422d69c3e3f4db0a41) --- include/internal/provider.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'include/internal/provider.h') diff --git a/include/internal/provider.h b/include/internal/provider.h index d09829d05e..987e1a464d 100644 --- a/include/internal/provider.h +++ b/include/internal/provider.h @@ -95,11 +95,14 @@ void ossl_provider_unquery_operation(const OSSL_PROVIDER *prov, int operation_id, const OSSL_ALGORITHM *algs); -/* Cache of bits to see if we already queried an operation */ +/* + * Cache of bits to see if we already added methods for an operation in + * the "permanent" method store. + * They should never be called for temporary method stores! + */ int ossl_provider_set_operation_bit(OSSL_PROVIDER *provider, size_t bitnum); int ossl_provider_test_operation_bit(OSSL_PROVIDER *provider, size_t bitnum, int *result); -int ossl_provider_clear_all_operation_bits(OSSL_LIB_CTX *libctx); /* Configuration */ void ossl_provider_add_conf_module(void); -- cgit v1.2.3