[PATCH] examples/ipsec-secgw: fix uninitialized memory access
Volodymyr Fialko
vfialko at marvell.com
Fri Mar 25 12:29:42 CET 2022
rte_flow_validate and rte_flow_create not always initialize flow error.
Using error.message in some error cases will cause read from
uninitialized memory.
Fixes: 6738c0a9569 ("examples/ipsec-secgw: support flow director")
Signed-off-by: Volodymyr Fialko <vfialko at marvell.com>
---
examples/ipsec-secgw/flow.c | 2 +-
examples/ipsec-secgw/ipsec.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/examples/ipsec-secgw/flow.c b/examples/ipsec-secgw/flow.c
index 1a1ec7861c..c217b9e475 100644
--- a/examples/ipsec-secgw/flow.c
+++ b/examples/ipsec-secgw/flow.c
@@ -214,7 +214,7 @@ flow_init_single(struct flow_rule_entry *rule)
struct rte_flow_item pattern[MAX_RTE_FLOW_PATTERN] = {};
struct rte_flow_action action[MAX_RTE_FLOW_ACTIONS] = {};
struct rte_flow_attr attr = {};
- struct rte_flow_error err;
+ struct rte_flow_error err = {};
int ret;
attr.egress = 0;
diff --git a/examples/ipsec-secgw/ipsec.c b/examples/ipsec-secgw/ipsec.c
index 2d4a26c962..b66ff2b650 100644
--- a/examples/ipsec-secgw/ipsec.c
+++ b/examples/ipsec-secgw/ipsec.c
@@ -496,7 +496,7 @@ int
create_ipsec_esp_flow(struct ipsec_sa *sa)
{
int ret = 0;
- struct rte_flow_error err;
+ struct rte_flow_error err = {};
if (sa->direction == RTE_SECURITY_IPSEC_SA_DIR_EGRESS) {
RTE_LOG(ERR, IPSEC,
"No Flow director rule for Egress traffic\n");
--
2.25.1
More information about the dev
mailing list