[dpdk-dev] [RFC 6/7] l2fwd: rework long options parsing
Olivier Matz
olivier.matz at 6wind.com
Mon Sep 19 15:42:46 CEST 2016
Signed-off-by: Olivier Matz <olivier.matz at 6wind.com>
---
examples/l2fwd/main.c | 26 ++++++++++++++++++--------
1 file changed, 18 insertions(+), 8 deletions(-)
diff --git a/examples/l2fwd/main.c b/examples/l2fwd/main.c
index 41ac1e1..028900b 100644
--- a/examples/l2fwd/main.c
+++ b/examples/l2fwd/main.c
@@ -376,6 +376,24 @@ l2fwd_parse_timer_period(const char *q_arg)
return n;
}
+static const char short_options[] =
+ "p:" /* portmask */
+ "q:" /* number of queues */
+ "T:" /* timer period */
+ ;
+
+enum {
+ /* long options mapped to a short option */
+
+ /* first long only option value must be >= 256, so that we won't
+ * conflict with short options */
+ CMD_LINE_OPT_MIN_NUM = 256,
+};
+
+static const struct option lgopts[] = {
+ {NULL, 0, 0, 0}
+};
+
/* Parse the argument given in the command line of the application */
static int
l2fwd_parse_args(int argc, char **argv)
@@ -384,9 +402,6 @@ l2fwd_parse_args(int argc, char **argv)
char **argvopt;
int option_index;
char *prgname = argv[0];
- static struct option lgopts[] = {
- {NULL, 0, 0, 0}
- };
argvopt = argv;
@@ -425,11 +440,6 @@ l2fwd_parse_args(int argc, char **argv)
timer_period = timer_secs;
break;
- /* long options */
- case 0:
- l2fwd_usage(prgname);
- return -1;
-
default:
l2fwd_usage(prgname);
return -1;
--
2.8.1
More information about the dev
mailing list