diff options
Diffstat (limited to 'example/switch/odp_switch.c')
-rw-r--r-- | example/switch/odp_switch.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/example/switch/odp_switch.c b/example/switch/odp_switch.c index 9358c2c29..0c9b2575e 100644 --- a/example/switch/odp_switch.c +++ b/example/switch/odp_switch.c @@ -748,7 +748,7 @@ static void parse_args(int argc, char *argv[], appl_args_t *appl_args) char *token; size_t len; unsigned i; - static struct option longopts[] = { + static const struct option longopts[] = { {"count", required_argument, NULL, 'c'}, {"time", required_argument, NULL, 't'}, {"accuracy", required_argument, NULL, 'a'}, @@ -757,12 +757,18 @@ static void parse_args(int argc, char *argv[], appl_args_t *appl_args) {NULL, 0, NULL, 0} }; + static const char *shortopts = "+c:+t:+a:i:h"; + + /* let helper collect its own arguments (e.g. --odph_proc) */ + odph_parse_options(argc, argv, shortopts, longopts); + appl_args->time = 0; /* loop forever if time to run is 0 */ appl_args->accuracy = 10; /* get and print pps stats second */ + opterr = 0; /* do not issue errors on helper options */ + while (1) { - opt = getopt_long(argc, argv, "+c:+t:+a:i:h", - longopts, &long_index); + opt = getopt_long(argc, argv, shortopts, longopts, &long_index); if (opt == -1) break; /* No more options */ |