commit: e26726: digest: fix codecheck warning Signed-off-by: Wenkai Lin <linwenkai6@hisilicon.com> (cherry picked from commit f6221f178fe43735fe56d45ae8d030dd949b3a23)
111 lines
3.4 KiB
Diff
111 lines
3.4 KiB
Diff
From fc023b87189ff488b4e760567d92afeca2635559 Mon Sep 17 00:00:00 2001
|
|
From: Zhiqi Song <songzhiqi1@huawei.com>
|
|
Date: Sat, 25 Dec 2021 01:35:03 +0000
|
|
Subject: [PATCH 10/18] rsa: cleanup about prime generation
|
|
|
|
Reduce parameter number of rsa_prime_mul_res(),
|
|
and add comments of BN_GENCB_call().
|
|
|
|
Signed-off-by: Zhiqi Song <songzhiqi1@huawei.com>
|
|
---
|
|
src/uadk_rsa.c | 28 +++++++++++++++++-----------
|
|
1 file changed, 17 insertions(+), 11 deletions(-)
|
|
|
|
diff --git a/src/uadk_rsa.c b/src/uadk_rsa.c
|
|
index c1609ca..2526af9 100644
|
|
--- a/src/uadk_rsa.c
|
|
+++ b/src/uadk_rsa.c
|
|
@@ -164,14 +164,17 @@ static int rsa_check_bit_useful(const int bits, int flen)
|
|
}
|
|
}
|
|
|
|
-static int rsa_prime_mul_res(int num, BIGNUM *rsa_p, BIGNUM *rsa_q, BIGNUM *r1,
|
|
+static int rsa_prime_mul_res(int num, struct rsa_prime_param *param,
|
|
BN_CTX *ctx, BN_GENCB *cb)
|
|
{
|
|
if (num == 1) {
|
|
- if (!BN_mul(r1, rsa_p, rsa_q, ctx))
|
|
+ if (!BN_mul(param->r1, param->rsa_p, param->rsa_q, ctx))
|
|
return BN_ERR;
|
|
} else {
|
|
- /* If num == 0, use number 3 to indicate do nothing */
|
|
+ /*
|
|
+ * Use the number 3 to indicate whether
|
|
+ * the generator has been found.
|
|
+ */
|
|
if (!BN_GENCB_call(cb, 3, num))
|
|
return BN_ERR;
|
|
return BN_CONTINUE;
|
|
@@ -189,8 +192,7 @@ static int check_rsa_prime_sufficient(int *num, const int *bitsr,
|
|
BN_ULONG bitst;
|
|
int ret;
|
|
|
|
- ret = rsa_prime_mul_res(*num, param->rsa_p, param->rsa_q,
|
|
- param->r1, ctx, cb);
|
|
+ ret = rsa_prime_mul_res(*num, param, ctx, cb);
|
|
if (ret)
|
|
return ret;
|
|
/*
|
|
@@ -224,7 +226,10 @@ static int check_rsa_prime_sufficient(int *num, const int *bitsr,
|
|
*bitse -= bitsr[*num];
|
|
else
|
|
return -1;
|
|
-
|
|
+ /*
|
|
+ * Use the number 2 to indicate whether
|
|
+ * a prime has been found.
|
|
+ */
|
|
ret = BN_GENCB_call(cb, 2, *n++);
|
|
if (!ret)
|
|
return -1;
|
|
@@ -237,7 +242,7 @@ static int check_rsa_prime_sufficient(int *num, const int *bitsr,
|
|
retries++;
|
|
return BN_REDO;
|
|
}
|
|
-
|
|
+ /* Use the number 3 to indicate whether the generator has been found. */
|
|
ret = BN_GENCB_call(cb, 3, *num);
|
|
if (!ret)
|
|
return BN_ERR;
|
|
@@ -314,6 +319,7 @@ static int check_rsa_prime_useful(const int *n, struct rsa_prime_param *param,
|
|
else
|
|
return BN_ERR;
|
|
|
|
+ /* Use the number 2 to indicate whether a prime has been found. */
|
|
if (!BN_GENCB_call(cb, 2, *n++))
|
|
return BN_ERR;
|
|
|
|
@@ -1094,7 +1100,7 @@ static int uadk_e_soft_rsa_keygen(RSA *rsa, int bits, BIGNUM *e, BN_GENCB *cb)
|
|
int ret;
|
|
|
|
if (!default_meth) {
|
|
- printf("failed to get soft method.\n");
|
|
+ fprintf(stderr, "failed to get soft method.\n");
|
|
return UADK_E_FAIL;
|
|
}
|
|
|
|
@@ -1121,7 +1127,7 @@ static int rsa_fill_keygen_data(struct uadk_rsa_sess *rsa_sess,
|
|
return UADK_E_FAIL;
|
|
|
|
keygen_param->wd_e->dsize = BN_bn2bin(bn_param->e,
|
|
- (unsigned char *)keygen_param->wd_e->data);
|
|
+ (unsigned char *)keygen_param->wd_e->data);
|
|
|
|
wd_rsa_get_prikey(rsa_sess->sess, &key_pair->prikey);
|
|
if (!key_pair->prikey)
|
|
@@ -1133,9 +1139,9 @@ static int rsa_fill_keygen_data(struct uadk_rsa_sess *rsa_sess,
|
|
return UADK_E_FAIL;
|
|
|
|
keygen_param->wd_q->dsize = BN_bn2bin(bn_param->q,
|
|
- (unsigned char *)keygen_param->wd_q->data);
|
|
+ (unsigned char *)keygen_param->wd_q->data);
|
|
keygen_param->wd_p->dsize = BN_bn2bin(bn_param->p,
|
|
- (unsigned char *)keygen_param->wd_p->data);
|
|
+ (unsigned char *)keygen_param->wd_p->data);
|
|
|
|
rsa_sess->req.src_bytes = rsa_sess->key_size;
|
|
rsa_sess->req.dst_bytes = rsa_sess->key_size;
|
|
--
|
|
2.24.4
|
|
|