summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiloslav Trmač <mitr@redhat.com>2010-07-24 01:51:43 +0200
committerMiloslav Trmač <mitr@redhat.com>2010-07-24 04:21:44 +0200
commit442669bac9acde432d01d423a3fd1dd2c7a27fd7 (patch)
tree29bdcfa7df5191bbd2d210c5ea48b5b6a63bb920
parent25b214ce62127133c2bca50df073475d754a81cd (diff)
downloadcryptodev-linux-442669bac9acde432d01d423a3fd1dd2c7a27fd7.tar.gz
cryptodev-linux-442669bac9acde432d01d423a3fd1dd2c7a27fd7.tar.xz
cryptodev-linux-442669bac9acde432d01d423a3fd1dd2c7a27fd7.zip
Use algo_properties_st in ncr_pk_generate
-rw-r--r--ncr-key.c2
-rw-r--r--ncr-pk.c9
-rw-r--r--ncr-pk.h2
3 files changed, 6 insertions, 7 deletions
diff --git a/ncr-key.c b/ncr-key.c
index 82a3818..db5d458 100644
--- a/ncr-key.c
+++ b/ncr-key.c
@@ -544,7 +544,7 @@ int ret;
public->flags |= (NCR_KEY_FLAG_EXPORTABLE|NCR_KEY_FLAG_WRAPPABLE);
if (public->type == NCR_KEY_TYPE_PUBLIC) {
- ret = ncr_pk_generate(gen.params.algorithm, &gen.params, private, public);
+ ret = ncr_pk_generate(public->algorithm, &gen.params, private, public);
if (ret < 0) {
err();
goto fail;
diff --git a/ncr-pk.c b/ncr-pk.c
index 50ab0ab..9ab5732 100644
--- a/ncr-pk.c
+++ b/ncr-pk.c
@@ -199,7 +199,7 @@ struct keygen_st {
struct work_struct pk_gen;
struct completion completed;
int ret;
- ncr_algorithm_t algo;
+ const struct algo_properties_st *algo;
struct key_item_st* private;
struct key_item_st* public;
struct ncr_key_generate_params_st * params;
@@ -212,7 +212,7 @@ static void keygen_handler(struct work_struct *instance)
struct keygen_st *st =
container_of(instance, struct keygen_st, pk_gen);
- switch(st->algo) {
+ switch(st->algo->algo) {
case NCR_ALG_RSA:
e = st->params->params.rsa.e;
@@ -248,15 +248,14 @@ static void keygen_handler(struct work_struct *instance)
}
-int ncr_pk_generate(ncr_algorithm_t algo,
+int ncr_pk_generate(const struct algo_properties_st *algo,
struct ncr_key_generate_params_st * params,
struct key_item_st* private, struct key_item_st* public)
{
int ret;
struct keygen_st st;
- private->algorithm = public->algorithm = _ncr_algo_to_properties(algo);
- BUG_ON(private->algorithm == NULL);
+ private->algorithm = public->algorithm = algo;
st.algo = algo;
st.private = private;
diff --git a/ncr-pk.h b/ncr-pk.h
index f873255..76b8d36 100644
--- a/ncr-pk.h
+++ b/ncr-pk.h
@@ -19,7 +19,7 @@ struct ncr_pk_ctx {
/* PK */
void ncr_pk_clear(struct key_item_st* key);
-int ncr_pk_generate(ncr_algorithm_t algo,
+int ncr_pk_generate(const struct algo_properties_st *algo,
struct ncr_key_generate_params_st * params,
struct key_item_st* private, struct key_item_st* public);
int ncr_pk_pack( const struct key_item_st * key, uint8_t * packed, uint32_t * packed_size);