[dpdk-dev] [PATCH 1/5] app/testpmd: fix array bounds checks
Adrien Mazarguil
adrien.mazarguil at 6wind.com
Tue Jan 10 14:08:26 CET 2017
This commit addresses several obvious issues reported by Coverity (139596,
139597, 139598 and 139599) with array bounds checks in functions related to
the flow API.
Fixes: 938a184a1870 ("app/testpmd: implement basic support for flow API")
Signed-off-by: Adrien Mazarguil <adrien.mazarguil at 6wind.com>
---
app/test-pmd/config.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/app/test-pmd/config.c b/app/test-pmd/config.c
index 9716ce7..e1af064 100644
--- a/app/test-pmd/config.c
+++ b/app/test-pmd/config.c
@@ -884,7 +884,7 @@ port_flow_new(const struct rte_flow_attr *attr,
do {
struct rte_flow_item *dst = NULL;
- if ((unsigned int)item->type > RTE_DIM(flow_item) ||
+ if ((unsigned int)item->type >= RTE_DIM(flow_item) ||
!flow_item[item->type].name)
goto notsup;
if (pf)
@@ -918,7 +918,7 @@ port_flow_new(const struct rte_flow_attr *attr,
do {
struct rte_flow_action *dst = NULL;
- if ((unsigned int)action->type > RTE_DIM(flow_action) ||
+ if ((unsigned int)action->type >= RTE_DIM(flow_action) ||
!flow_action[action->type].name)
goto notsup;
if (pf)
@@ -977,7 +977,7 @@ port_flow_complain(struct rte_flow_error *error)
char buf[32];
int err = rte_errno;
- if ((unsigned int)error->type > RTE_DIM(errstrlist) ||
+ if ((unsigned int)error->type >= RTE_DIM(errstrlist) ||
!errstrlist[error->type])
errstr = "unknown type";
else
@@ -1146,7 +1146,7 @@ port_flow_query(portid_t port_id, uint32_t rule,
printf("Flow rule #%u not found\n", rule);
return -ENOENT;
}
- if ((unsigned int)action > RTE_DIM(flow_action) ||
+ if ((unsigned int)action >= RTE_DIM(flow_action) ||
!flow_action[action].name)
name = "unknown";
else
--
2.1.4
More information about the dev
mailing list