From 2b2a83bf5f77922a23e03ab8e500f4e7c6dee5f0 Mon Sep 17 00:00:00 2001 From: Jason Li Date: Wed, 14 Dec 2022 02:23:43 +0800 Subject: [PATCH] misc: mods: optee: Fix cert-c issues Previously we had a change to fix the cert-c issues, but it didn't properly eliminate the INT31-C warning. This change correctly eliminates the following two cert-c warnings: CID 556497 CID 556498 Bug 3745813 Change-Id: I03ac2b2edc5633c80b4a8285a08605398a35d35f Signed-off-by: Jason Li (SW-TEGRA) Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2827247 Reviewed-by: svc_kernel_abi Reviewed-by: Sachin Nikam GVS: Gerrit_Virtual_Submit --- drivers/misc/mods/mods_optee.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/misc/mods/mods_optee.c b/drivers/misc/mods/mods_optee.c index b7ffacbe..753c69fe 100644 --- a/drivers/misc/mods/mods_optee.c +++ b/drivers/misc/mods/mods_optee.c @@ -106,11 +106,13 @@ int esc_mods_invoke_optee_ta(struct mods_client *client, if (params[1].u.value.a > U32_MAX || params[1].u.value.b > U32_MAX) { ret = EOVERFLOW; goto out_shm; + } else { + p->out_a = (__u32)params[1].u.value.a; + p->out_b = (__u32)params[1].u.value.b; } + memmove(p->buf, temp_buf, p->buf_size); p->tee_ret = invoke_arg.ret; - p->out_a = params[1].u.value.a; - p->out_b = params[1].u.value.b; out_shm: tee_shm_free(shm);