
From: lizhi <lizhi206@huawei.com> Add null check for eops and driver before accessing its members, and remove unused members. Signed-off-by: lizhi <lizhi206@huawei.com> Signed-off-by: Qi Tao <taoqi10@huawei.com> --- wd_agg.c | 11 ++++++----- wd_cipher.c | 1 - wd_ecc.c | 10 ++++++---- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/wd_agg.c b/wd_agg.c index ca81afb3..8869ab84 100644 --- a/wd_agg.c +++ b/wd_agg.c @@ -57,7 +57,6 @@ struct wd_agg_sess_agg_conf { struct wd_agg_sess { const char *alg_name; wd_dev_mask_t *dev_mask; - struct wd_alg_agg *drv; void *priv; void *sched_key; enum wd_agg_sess_state state; @@ -415,10 +414,12 @@ handle_t wd_agg_alloc_sess(struct wd_agg_sess_setup *setup) goto free_sess; } - ret = wd_agg_setting.driver->get_extend_ops(&sess->ops); - if (ret) { - WD_ERR("failed to get agg extend ops!\n"); - goto free_key; + if (wd_agg_setting.driver->get_extend_ops) { + ret = wd_agg_setting.driver->get_extend_ops(&sess->ops); + if (ret) { + WD_ERR("failed to get agg extend ops!\n"); + goto free_key; + } } ret = wd_agg_init_sess_priv(sess, setup); diff --git a/wd_cipher.c b/wd_cipher.c index 6910628e..95d6eb67 100644 --- a/wd_cipher.c +++ b/wd_cipher.c @@ -62,7 +62,6 @@ struct wd_cipher_sess { enum wd_cipher_alg alg; enum wd_cipher_mode mode; wd_dev_mask_t *dev_mask; - struct wd_alg_cipher *drv; void *priv; unsigned char key[MAX_CIPHER_KEY_SIZE]; __u32 key_bytes; diff --git a/wd_ecc.c b/wd_ecc.c index d9ae6734..58bc1848 100644 --- a/wd_ecc.c +++ b/wd_ecc.c @@ -1226,10 +1226,12 @@ handle_t wd_ecc_alloc_sess(struct wd_ecc_sess_setup *setup) memcpy(&sess->setup, setup, sizeof(*setup)); sess->key_size = BITS_TO_BYTES(setup->key_bits); - ret = wd_ecc_setting.driver->get_extend_ops(&sess->eops); - if (ret) { - WD_ERR("failed to get ecc sess extend ops!\n"); - goto sess_err; + if (wd_ecc_setting.driver->get_extend_ops) { + ret = wd_ecc_setting.driver->get_extend_ops(&sess->eops); + if (ret) { + WD_ERR("failed to get ecc sess extend ops!\n"); + goto sess_err; + } } ret = wd_ecc_sess_eops_init(sess); -- 2.33.0