[dpdk-dev] [PATCH] examples/l2fwd: check if user portmask is valid

Vipin Varghese vipin.varghese at intel.com
Thu Feb 1 19:51:21 CET 2018


User can pass portmask with any value, even invalid mask. The code
checks against actual portmask.

Signed-off-by: Vipin Varghese <vipin.varghese at intel.com>
---
 examples/l2fwd/main.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/examples/l2fwd/main.c b/examples/l2fwd/main.c
index 6c07ed4..1c02c1b 100644
--- a/examples/l2fwd/main.c
+++ b/examples/l2fwd/main.c
@@ -549,6 +549,11 @@ enum {
 	if (nb_ports == 0)
 		rte_exit(EXIT_FAILURE, "No Ethernet ports - bye\n");
 
+	/* icheck port mask to possible port mask */
+	if (l2fwd_enabled_port_mask & ~((1 << nb_ports) - 1))
+		rte_exit(EXIT_FAILURE, "Invalid portmask; possible (0x%x)\n",
+			(1 << nb_ports) - 1);
+
 	/* reset l2fwd_dst_ports */
 	for (portid = 0; portid < RTE_MAX_ETHPORTS; portid++)
 		l2fwd_dst_ports[portid] = 0;
-- 
1.9.1



More information about the dev mailing list