Make it possible to remove methods by the provider that provides them
[openssl.git] / crypto / evp / evp_fetch.c
index 5fe9c7e930d27c38510b33f44a2b190f98734ec3..e3c43f419e00d38931071b3413668a1d77f3d38a 100644 (file)
@@ -418,6 +418,16 @@ int evp_method_store_cache_flush(OSSL_LIB_CTX *libctx)
     return 1;
 }
 
+int evp_method_store_remove_all_provided(const OSSL_PROVIDER *prov)
+{
+    OSSL_LIB_CTX *libctx = ossl_provider_libctx(prov);
+    OSSL_METHOD_STORE *store = get_evp_method_store(libctx);
+
+    if (store != NULL)
+        return ossl_method_store_remove_all_provided(store, prov);
+    return 1;
+}
+
 static int evp_set_parsed_default_properties(OSSL_LIB_CTX *libctx,
                                              OSSL_PROPERTY_LIST *def_prop,
                                              int loadconfig,