summaryrefslogtreecommitdiffstats
path: root/crypto/dsa/dsa_pmeth.c
diff options
context:
space:
mode:
authorShane Lontis <shane.lontis@oracle.com>2020-02-06 22:28:36 +1000
committerShane Lontis <shane.lontis@oracle.com>2020-02-06 22:28:36 +1000
commitf11f86f6ec7fb31bde1da2810ac975c032205321 (patch)
treed263614f6dfee9162499a01d14336bb36d543e3f /crypto/dsa/dsa_pmeth.c
parent104a733df65dfd8c3dd110de9bd56f6ebfc8f2f6 (diff)
Add FFC param/key generation
Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/10909)
Diffstat (limited to 'crypto/dsa/dsa_pmeth.c')
-rw-r--r--crypto/dsa/dsa_pmeth.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/crypto/dsa/dsa_pmeth.c b/crypto/dsa/dsa_pmeth.c
index 24d5dbd3fd..0ab5372bac 100644
--- a/crypto/dsa/dsa_pmeth.c
+++ b/crypto/dsa/dsa_pmeth.c
@@ -197,7 +197,7 @@ static int pkey_dsa_paramgen(EVP_PKEY_CTX *ctx, EVP_PKEY *pkey)
DSA *dsa = NULL;
DSA_PKEY_CTX *dctx = ctx->data;
BN_GENCB *pcb;
- int ret;
+ int ret, res;
if (ctx->pkey_gencb) {
pcb = BN_GENCB_new();
@@ -211,8 +211,9 @@ static int pkey_dsa_paramgen(EVP_PKEY_CTX *ctx, EVP_PKEY *pkey)
BN_GENCB_free(pcb);
return 0;
}
- ret = dsa_builtin_paramgen(dsa, dctx->nbits, dctx->qbits, dctx->pmd,
- NULL, 0, NULL, NULL, NULL, pcb);
+ ret = ffc_params_FIPS186_4_generate(NULL, &dsa->params, FFC_PARAM_TYPE_DSA,
+ dctx->nbits, dctx->qbits, dctx->pmd,
+ &res, pcb);
BN_GENCB_free(pcb);
if (ret)
EVP_PKEY_assign_DSA(pkey, dsa);