diff options
author | Sri Krishna chowdary <schowdary@nvidia.com> | 2012-10-08 11:38:52 +0530 |
---|---|---|
committer | Simone Willett <swillett@nvidia.com> | 2012-10-16 12:23:32 -0700 |
commit | adbe71fe7f47d88e7b39b2d30cfd9a1ec88a9dd7 (patch) | |
tree | 2df94261c220fff5b44e393962cd5741bcbd9ecc /drivers/crypto | |
parent | d355fb2c653ac53f49a95728129b4f016ed5e225 (diff) |
crypto: tegra-se: fix coverity issue
Dereference after NULL check.
Bug 1046331
Change-Id: I9438cf4aba92bec2c0aaccb5e272368a1bd99693
Signed-off-by: Sri Krishna chowdary <schowdary@nvidia.com>
Reviewed-on: http://git-master/r/142204
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
Diffstat (limited to 'drivers/crypto')
-rw-r--r-- | drivers/crypto/tegra-se.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/drivers/crypto/tegra-se.c b/drivers/crypto/tegra-se.c index 82c6d8a1c6b8..3e9fd80d73c1 100644 --- a/drivers/crypto/tegra-se.c +++ b/drivers/crypto/tegra-se.c @@ -1949,8 +1949,8 @@ static void tegra_se_read_rsa_result(struct tegra_se_dev *se_dev, int tegra_se_rsa_digest(struct ahash_request *req) { - struct crypto_ahash *tfm = crypto_ahash_reqtfm(req); - struct tegra_se_aes_rsa_context *rsa_ctx = crypto_ahash_ctx(tfm); + struct crypto_ahash *tfm = NULL; + struct tegra_se_aes_rsa_context *rsa_ctx = NULL; struct tegra_se_dev *se_dev = sg_tegra_se_dev; struct scatterlist *src_sg; struct tegra_se_ll *src_ll; @@ -1961,6 +1961,16 @@ int tegra_se_rsa_digest(struct ahash_request *req) if (!req) return -EINVAL; + tfm = crypto_ahash_reqtfm(req); + + if (!tfm) + return -EINVAL; + + rsa_ctx = crypto_ahash_ctx(tfm); + + if (!rsa_ctx || !rsa_ctx->slot) + return -EINVAL; + if (!req->nbytes) return -EINVAL; |