The fips_provider_version_* functions return true if the FIPS provider isn't
loaded. This is somewhat counterintuitive and the fix in #25327 neglected
this nuance resulting in not running the SM2 tests when the FIPS provider
wasn't being loaded.
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/25331)
}
/* FIPS(3.0.0): provider imports explicit params but they won't work #17998 */
- is_fips_3_0_0 = fips_provider_version_eq(testctx, 3, 0, 0);
- if (is_fips_3_0_0 < 0)
- return 0;
+ is_fips_3_0_0 = is_fips && fips_provider_version_eq(testctx, 3, 0, 0);
#ifdef STATIC_LEGACY
/*