netdev-dpdk: fix mbuf leaks
[cascardo/ovs.git] / lib / ofp-version-opt.c
1 #include <config.h>
2 #include "dynamic-string.h"
3 #include "ofp-util.h"
4 #include "ofp-version-opt.h"
5 #include "ovs-thread.h"
6
7 static uint32_t allowed_versions = 0;
8
9 uint32_t
10 get_allowed_ofp_versions(void)
11 {
12     return allowed_versions ? allowed_versions : OFPUTIL_DEFAULT_VERSIONS;
13 }
14
15 void
16 set_allowed_ofp_versions(const char *string)
17 {
18     assert_single_threaded();
19     allowed_versions = ofputil_versions_from_string(string);
20 }
21
22 void
23 mask_allowed_ofp_versions(uint32_t bitmap)
24 {
25     assert_single_threaded();
26     allowed_versions &= bitmap;
27 }
28
29 void
30 add_allowed_ofp_versions(uint32_t bitmap)
31 {
32     assert_single_threaded();
33     allowed_versions |= bitmap;
34 }
35
36 void
37 ofp_version_usage(void)
38 {
39     struct ds msg = DS_EMPTY_INITIALIZER;
40
41     ofputil_format_version_bitmap_names(&msg, OFPUTIL_DEFAULT_VERSIONS);
42     printf(
43         "\nOpenFlow version options:\n"
44         "  -V, --version           display version information\n"
45         "  -O, --protocols         set allowed OpenFlow versions\n"
46         "                          (default: %s)\n",
47         ds_cstr(&msg));
48     ds_destroy(&msg);
49 }