examples/fips_validation: fix null pointer dereferences

Message ID 1569393094-26761-1-git-send-email-tallurix.chaitanya.babu@intel.com (mailing list archive)
State Accepted, archived
Delegated to: akhil goyal
Headers
Series examples/fips_validation: fix null pointer dereferences |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-dpdk_compile success Compile Testing PASS
ci/iol-dpdk_compile_ovs success Compile Testing PASS
ci/iol-dpdk_compile_spdk success Compile Testing PASS

Commit Message

Chaitanya Babu, TalluriX Sept. 25, 2019, 6:31 a.m. UTC
  One issue caught by Coverity 343408
*deref_parm: Directly dereferencing parameter val->val.

In writeback_tdes_hex_str(), tmp_val is initialised to null.
tmp_val.val is updated only if keys are found.
If keys are not found,it doesn't fails but continues
to invoke writeback_hex_str(),where val->val is accessed
without null check.

The fix is to return the error,
if keys are not found in writeback_tdes_hex_str().

Coverity issue: 343408
Fixes: 527cbf3d5e ("examples/fips_validation: support TDES parsing")
Cc: stable@dpdk.org

Signed-off-by: Chaitanya Babu Talluri <tallurix.chaitanya.babu@intel.com>
---
 examples/fips_validation/fips_validation_tdes.c | 2 ++
 1 file changed, 2 insertions(+)
  

Comments

Akhil Goyal Sept. 30, 2019, 8:21 p.m. UTC | #1
> 
> One issue caught by Coverity 343408
> *deref_parm: Directly dereferencing parameter val->val.
> 
> In writeback_tdes_hex_str(), tmp_val is initialised to null.
> tmp_val.val is updated only if keys are found.
> If keys are not found,it doesn't fails but continues
> to invoke writeback_hex_str(),where val->val is accessed
> without null check.
> 
> The fix is to return the error,
> if keys are not found in writeback_tdes_hex_str().
> 
> Coverity issue: 343408
> Fixes: 527cbf3d5e ("examples/fips_validation: support TDES parsing")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Chaitanya Babu Talluri <tallurix.chaitanya.babu@intel.com>
> ---
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>

Applied to dpdk-next-crypto

Thanks.
  

Patch

diff --git a/examples/fips_validation/fips_validation_tdes.c b/examples/fips_validation/fips_validation_tdes.c
index 15ee434e1..2b262c9a0 100644
--- a/examples/fips_validation/fips_validation_tdes.c
+++ b/examples/fips_validation/fips_validation_tdes.c
@@ -212,6 +212,8 @@  writeback_tdes_hex_str(const char *key, char *dst, struct fips_val *val)
 		tmp_val.val = val->val + 8;
 	else if (strstr(key, KEY3_STR))
 		tmp_val.val = val->val + 16;
+	else
+		return -EINVAL;
 
 	return writeback_hex_str(key, dst, &tmp_val);
 }