ok = dsa_keygen_pairwise_test(dsa, cb, cbarg)
&& dsa_keygen_knownanswer_test(dsa, ctx, cb, cbarg);
if (!ok) {
- ossl_set_error_state(OSSL_SELF_TEST_TYPE_PCT);
BN_free(dsa->pub_key);
BN_clear_free(dsa->priv_key);
dsa->pub_key = NULL;
err:
/* Step (9): If there is an error return an invalid keypair. */
if (!ok) {
- ossl_set_error_state(OSSL_SELF_TEST_TYPE_PCT);
BN_clear(eckey->priv_key);
if (eckey->pub_key != NULL)
EC_POINT_set_to_infinity(group, eckey->pub_key);
OSSL_SELF_TEST_get_callback(libctx, &stcb, &stcbarg);
ok = rsa_keygen_pairwise_test(rsa, stcb, stcbarg);
if (!ok) {
- ossl_set_error_state(OSSL_SELF_TEST_TYPE_PCT);
/* Clear intermediate results */
BN_clear_free(rsa->d);
BN_clear_free(rsa->p);
#ifdef FIPS_MODULE
if (!ossl_fips_self_testing()) {
ret = ossl_dh_check_pairwise(dh, 0);
- if (ret <= 0) {
- ossl_set_error_state(OSSL_SELF_TEST_TYPE_PCT);
+ if (ret <= 0)
goto end;
- }
}
#endif /* FIPS_MODULE */
}
ret = bnctx != NULL && ossl_ec_key_pairwise_check(ec, bnctx);
BN_CTX_free(bnctx);
- if (ret <= 0)
- ossl_set_error_state(OSSL_SELF_TEST_TYPE_PCT);
}
#endif /* FIPS_MODULE */
- if (ret)
+ if (ret > 0)
return ec;
err:
/* Something went wrong, throw the key away */
if (!key || ((gctx->selection & OSSL_KEYMGMT_SELECT_KEYPAIR) == 0))
return key;
if (ecd_fips140_pairwise_test(key, ECX_KEY_TYPE_ED25519, 1) != 1) {
- ossl_set_error_state(OSSL_SELF_TEST_TYPE_PCT);
ossl_ecx_key_free(key);
return NULL;
}
if (!key || ((gctx->selection & OSSL_KEYMGMT_SELECT_KEYPAIR) == 0))
return key;
if (ecd_fips140_pairwise_test(key, ECX_KEY_TYPE_ED448, 1) != 1) {
- ossl_set_error_state(OSSL_SELF_TEST_TYPE_PCT);
ossl_ecx_key_free(key);
return NULL;
}
#ifdef FIPS_MODULE
if (res > 0) {
res = ml_dsa_pairwise_test(key);
- if (!res) {
+ if (!res)
ossl_ml_dsa_key_reset(key);
- ossl_set_error_state(OSSL_SELF_TEST_TYPE_PCT_IMPORT);
- }
}
#endif /* FIPS_MODULE */
return res;
goto err;
}
#ifdef FIPS_MODULE
- if (!ml_dsa_pairwise_test(key)) {
- ossl_set_error_state(OSSL_SELF_TEST_TYPE_PCT);
+ if (!ml_dsa_pairwise_test(key))
goto err;
- }
#endif
return key;
err:
res = ml_kem_key_fromdata(key, params, include_private);
if (res > 0 && include_private
&& !ml_kem_pairwise_test(key, key->prov_flags)) {
-#ifdef FIPS_MODULE
- ossl_set_error_state(OSSL_SELF_TEST_TYPE_PCT_IMPORT);
-#endif
ossl_ml_kem_key_reset(key);
res = 0;
}
if (genok) {
#ifdef FIPS_MODULE
if (!ml_kem_pairwise_test(key, ML_KEM_KEY_FIXED_PCT)) {
- ossl_set_error_state(OSSL_SELF_TEST_TYPE_PCT);
ossl_ml_kem_key_free(key);
return NULL;
}
gctx->entropy, gctx->entropy_len))
goto err;
#ifdef FIPS_MODULE
- if (!slh_dsa_fips140_pairwise_test(key, ctx)) {
- ossl_set_error_state(OSSL_SELF_TEST_TYPE_PCT);
+ if (!slh_dsa_fips140_pairwise_test(key, ctx))
goto err;
- }
#endif /* FIPS_MODULE */
ossl_slh_dsa_hash_ctx_free(ctx);
return key;