X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=utilities%2Fovs-dpctl.c;h=0516d1b27968c7cb34d433a5b12839ee862d2cf8;hb=b0fb94a346e52f36aeef238dd5f9bef9a10c14ef;hp=2389942ef1b7e56b11bcada924ec7174c302a362;hpb=10a89ef04df5669c5cdd02f786150a7ab8454e01;p=sliver-openvswitch.git diff --git a/utilities/ovs-dpctl.c b/utilities/ovs-dpctl.c index 2389942ef..0516d1b27 100644 --- a/utilities/ovs-dpctl.c +++ b/utilities/ovs-dpctl.c @@ -66,7 +66,7 @@ static bool may_create; * the option itself. */ static int verbosity; -static const struct command all_commands[]; +static const struct command *get_all_commands(void); static void usage(void) NO_RETURN; static void parse_options(int argc, char *argv[]); @@ -77,7 +77,7 @@ main(int argc, char *argv[]) set_program_name(argv[0]); parse_options(argc, argv); signal(SIGPIPE, SIG_IGN); - run_command(argc - optind, argv + optind, all_commands); + run_command(argc - optind, argv + optind, get_all_commands()); return 0; } @@ -182,6 +182,8 @@ usage(void) vlog_usage(); printf("\nOptions for show and mod-flow:\n" " -s, --statistics print statistics for port or flow\n" + "\nOptions for dump-flows:\n" + " -m, --more increase verbosity of output\n" "\nOptions for mod-flow:\n" " --may-create create flow if it doesn't exist\n" " --clear reset existing stats to zero\n" @@ -761,7 +763,7 @@ dpctl_dump_flows(int argc, char *argv[]) &mask, &mask_len, &actions, &actions_len, &stats)) { ds_clear(&ds); - odp_flow_format(key, key_len, mask, mask_len, &ds); + odp_flow_format(key, key_len, mask, mask_len, &ds, verbosity); ds_put_cstr(&ds, ", "); dpif_flow_stats_format(stats, &ds); @@ -997,7 +999,8 @@ sort_output_actions(struct nlattr *actions, size_t length) } if (first_output) { uint8_t *end = (uint8_t *) actions + length; - sort_output_actions__(first_output, (struct nlattr *) end); + sort_output_actions__(first_output, + ALIGNED_CAST(struct nlattr *, end)); } } @@ -1049,7 +1052,7 @@ dpctl_normalize_actions(int argc, char *argv[]) "odp_flow_key_from_string"); ds_clear(&s); - odp_flow_format(keybuf.data, keybuf.size, NULL, 0, &s); + odp_flow_format(keybuf.data, keybuf.size, NULL, 0, &s, verbosity); printf("input flow: %s\n", ds_cstr(&s)); run(odp_flow_key_to_flow(keybuf.data, keybuf.size, &flow), @@ -1146,3 +1149,8 @@ static const struct command all_commands[] = { { NULL, 0, 0, NULL }, }; + +static const struct command *get_all_commands(void) +{ + return all_commands; +}