Commit 25e44338 authored by Gary R Hook's avatar Gary R Hook Committed by Herbert Xu

crypto: ccp - Fix oops by properly managing allocated structures

A plaintext or ciphertext length of 0 is allowed in AES, in which case
no encryption occurs. Ensure that we don't clean up data structures
that were never allocated.

Fixes: 36cf515b ("crypto: ccp - Enable support for AES GCM on v5 CCPs")
Cc: <stable@vger.kernel.org>
Signed-off-by: default avatarGary R Hook <gary.hook@amd.com>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent cf144f81
...@@ -859,11 +859,11 @@ static int ccp_run_aes_gcm_cmd(struct ccp_cmd_queue *cmd_q, ...@@ -859,11 +859,11 @@ static int ccp_run_aes_gcm_cmd(struct ccp_cmd_queue *cmd_q,
ccp_dm_free(&final_wa); ccp_dm_free(&final_wa);
e_dst: e_dst:
if (aes->src_len && !in_place) if (ilen > 0 && !in_place)
ccp_free_data(&dst, cmd_q); ccp_free_data(&dst, cmd_q);
e_src: e_src:
if (aes->src_len) if (ilen > 0)
ccp_free_data(&src, cmd_q); ccp_free_data(&src, cmd_q);
e_aad: e_aad:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment