From bbbe38a6d59ccdda25917712701e629d0b10af6f Mon Sep 17 00:00:00 2001 From: Chenglian Sun Date: Tue, 22 Jun 2021 10:47:05 +0800 Subject: [PATCH] examples/l2fwd: fix [no-]mac-updating options For l2fwd, --no-mac-updating and --mac-updating are treated as invalid arguments. Rework long options parsing to let --no-mac-updating and --mac-updating options work well. Fixes: fa19eb20d212 ("examples/l2fwd: add forwarding port mapping option") Cc: stable@dpdk.org Signed-off-by: Chenglian Sun Reviewed-by: David Marchand --- examples/l2fwd/main.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/examples/l2fwd/main.c b/examples/l2fwd/main.c index 32d405e65a..ca4db6014b 100644 --- a/examples/l2fwd/main.c +++ b/examples/l2fwd/main.c @@ -433,13 +433,16 @@ enum { /* first long only option value must be >= 256, so that we won't * conflict with short options */ - CMD_LINE_OPT_MIN_NUM = 256, + CMD_LINE_OPT_MAC_UPDATING_NUM = 256, + CMD_LINE_OPT_NO_MAC_UPDATING_NUM, CMD_LINE_OPT_PORTMAP_NUM, }; static const struct option lgopts[] = { - { CMD_LINE_OPT_MAC_UPDATING, no_argument, &mac_updating, 1}, - { CMD_LINE_OPT_NO_MAC_UPDATING, no_argument, &mac_updating, 0}, + { CMD_LINE_OPT_MAC_UPDATING, no_argument, 0, + CMD_LINE_OPT_MAC_UPDATING_NUM}, + { CMD_LINE_OPT_NO_MAC_UPDATING, no_argument, 0, + CMD_LINE_OPT_NO_MAC_UPDATING_NUM}, { CMD_LINE_OPT_PORTMAP_CONFIG, 1, 0, CMD_LINE_OPT_PORTMAP_NUM}, {NULL, 0, 0, 0} }; @@ -501,6 +504,14 @@ l2fwd_parse_args(int argc, char **argv) } break; + case CMD_LINE_OPT_MAC_UPDATING_NUM: + mac_updating = 1; + break; + + case CMD_LINE_OPT_NO_MAC_UPDATING_NUM: + mac_updating = 0; + break; + default: l2fwd_usage(prgname); return -1; -- 2.20.1