summaryrefslogtreecommitdiff
path: root/lib/ofp-version-opt.c
diff options
context:
space:
mode:
authorSimon Horman <horms@verge.net.au>2012-11-27 10:12:26 -0800
committerBen Pfaff <blp@nicira.com>2012-11-27 10:13:16 -0800
commit020c93874e22c1c7492c30fe76a8e496571ede13 (patch)
treea28f1caba9ad98367ec943ff8ca969ed9db28582 /lib/ofp-version-opt.c
parent2e1ae2005ed347d2dfebd23fff40c54a1a2a6716 (diff)
downloadopenvswitch-020c93874e22c1c7492c30fe76a8e496571ede13.tar.gz
lib: Add helpers for OpenFlow version command line options
Signed-off-by: Simon Horman <horms@verge.net.au> [blp@nicira.com renamed some functions and options and revised the documentation] Signed-off-by: Ben Pfaff <blp@nicira.com>
Diffstat (limited to 'lib/ofp-version-opt.c')
-rw-r--r--lib/ofp-version-opt.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/lib/ofp-version-opt.c b/lib/ofp-version-opt.c
new file mode 100644
index 000000000..1801e9f78
--- /dev/null
+++ b/lib/ofp-version-opt.c
@@ -0,0 +1,36 @@
+#include <config.h>
+#include "ofp-util.h"
+#include "ofp-version-opt.h"
+#include "vlog.h"
+#include "dynamic-string.h"
+
+VLOG_DEFINE_THIS_MODULE(ofp_version);
+
+static uint32_t allowed_versions = 0;
+
+uint32_t
+get_allowed_ofp_versions(void)
+{
+ return allowed_versions ? allowed_versions : OFPUTIL_DEFAULT_VERSIONS;
+}
+
+void
+set_allowed_ofp_versions(const char *string)
+{
+ allowed_versions = ofputil_versions_from_string(string);
+}
+
+void
+ofp_version_usage(void)
+{
+ struct ds msg = DS_EMPTY_INITIALIZER;
+
+ ofputil_format_version_bitmap_names(&msg, OFPUTIL_DEFAULT_VERSIONS);
+ printf(
+ "\nOpen Flow Version options:\n"
+ " -V, --version display version information\n"
+ " --allowed-ofp-versions list of allowed Open Flow versions\n"
+ " (default: %s)\n",
+ ds_cstr(&msg));
+ ds_destroy(&msg);
+}