mirror of https://gitee.com/openkylin/linux.git
stating: ccree: revert "staging: ccree: fix leak of import() after init()"
This reverts commitc5f39d0786
("staging: ccree: fix leak of import() after init()") and commitaece090244
("staging: ccree: Uninitialized return in ssi_ahash_import()"). This is the wrong solution and ends up relying on uninitialized memory, although it was not obvious to me at the time. Cc: stable@vger.kernel.org Signed-off-by: Gilad Ben-Yossef <gilad@benyossef.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
7345b14dea
commit
293edc27f8
|
@ -1673,7 +1673,7 @@ static int cc_hash_import(struct ahash_request *req, const void *in)
|
|||
struct device *dev = drvdata_to_dev(ctx->drvdata);
|
||||
struct ahash_req_ctx *state = ahash_request_ctx(req);
|
||||
u32 tmp;
|
||||
int rc = 0;
|
||||
int rc;
|
||||
|
||||
memcpy(&tmp, in, sizeof(u32));
|
||||
if (tmp != CC_EXPORT_MAGIC) {
|
||||
|
@ -1682,12 +1682,9 @@ static int cc_hash_import(struct ahash_request *req, const void *in)
|
|||
}
|
||||
in += sizeof(u32);
|
||||
|
||||
/* call init() to allocate bufs if the user hasn't */
|
||||
if (!state->digest_buff) {
|
||||
rc = cc_hash_init(req);
|
||||
if (rc)
|
||||
goto out;
|
||||
}
|
||||
rc = cc_hash_init(req);
|
||||
if (rc)
|
||||
goto out;
|
||||
|
||||
dma_sync_single_for_cpu(dev, state->digest_buff_dma_addr,
|
||||
ctx->inter_digestsize, DMA_BIDIRECTIONAL);
|
||||
|
|
Loading…
Reference in New Issue