Fix OSSL_PROVIDER_get_capabilities()
authorMatt Caswell <matt@openssl.org>
Fri, 26 Jun 2020 19:40:11 +0000 (20:40 +0100)
committerMatt Caswell <matt@openssl.org>
Wed, 8 Jul 2020 07:55:56 +0000 (08:55 +0100)
It is not a failure to call OSSL_PROVIDER_get_capabilities() with a
provider loaded that has no capabilities.

Fixes #12286

Reviewed-by: Shane Lontis <shane.lontis@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/12292)

crypto/provider_core.c

index a2350bb88e24777ca13752dc44cd011dc90434f7..f68fd8f0f9770949fbb72fe9363427c73bd98b98 100644 (file)
@@ -831,7 +831,7 @@ int ossl_provider_get_capabilities(const OSSL_PROVIDER *prov,
                                    void *arg)
 {
     return prov->get_capabilities == NULL
-        ? 0 : prov->get_capabilities(prov->provctx, capability, cb, arg);
+        ? 1 : prov->get_capabilities(prov->provctx, capability, cb, arg);
 }