[dpdk-dev] app/testpmd: fix potential out of bounds read
Commit Message
After the last enabled port has been seen, and the last time we
evaluate the loop condition, there is an out of bounds read in
ports[p].enabled because p is equal to size, which is the length of
ports.
Signed-off-by: Julien Cretin <julien.cretin@trust-in-soft.com>
---
app/test-pmd/testpmd.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Comments
> After the last enabled port has been seen, and the last time we
> evaluate the loop condition, there is an out of bounds read in
> ports[p].enabled because p is equal to size, which is the length of
> ports.
>
> Signed-off-by: Julien Cretin <julien.cretin@trust-in-soft.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Applied, thanks
@@ -333,7 +333,7 @@ find_next_port(portid_t p, struct rte_port *ports, int size)
if (ports == NULL)
rte_exit(-EINVAL, "failed to find a next port id\n");
- while ((ports[p].enabled == 0) && (p < size))
+ while ((p < size) && (ports[p].enabled == 0))
p++;
return p;
}