[dpdk-dev v1] examples/fips_validation: fix dangling pt.val after MCT test
Kai Ji
kai.ji at intel.com
Fri Mar 6 13:37:12 CET 2026
After fips_mct_sha_test() and fips_mct_shake_test() complete,
vec.pt.val is freed but left as a non-NULL dangling pointer.
Since vec is a file-scope global, the next SHA algorithm's AFT
test calls parse_uint8_hex_str(&vec.pt), which checks val->val
and calls rte_free() on the stale pointer, producing:
EAL: Error: Invalid memory
Fix by setting vec.pt.val to NULL after rte_free() at the end
of both MCT functions so the subsequent rte_free() guard in
parse_uint8_hex_str() skips the already-freed pointer.
Signed-off-by: Kai Ji <kai.ji at intel.com>
---
examples/fips_validation/main.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/examples/fips_validation/main.c b/examples/fips_validation/main.c
index daf273bc85..cfb5f0124c 100644
--- a/examples/fips_validation/main.c
+++ b/examples/fips_validation/main.c
@@ -2610,6 +2610,7 @@ fips_mct_sha_test(void)
rte_free(md[i].val);
rte_free(vec.pt.val);
+ vec.pt.val = NULL;
rte_free(val.val);
return 0;
@@ -2698,6 +2699,7 @@ fips_mct_shake_test(void)
rte_free(md.val);
rte_free(vec.pt.val);
+ vec.pt.val = NULL;
rte_free(val.val);
return 0;
}
--
2.43.0
More information about the dev
mailing list