From 0abde2e2cc0ec11c03b01d8edd01fcd7582d69e6 Mon Sep 17 00:00:00 2001 From: Jonathan Hui Date: Mon, 4 Jul 2016 10:12:25 -0700 Subject: [PATCH] Add version command. (#237) --- src/cli/README.md | 11 +++++++++++ src/cli/cli.cpp | 8 ++++++++ src/cli/cli.hpp | 1 + 3 files changed, 20 insertions(+) diff --git a/src/cli/README.md b/src/cli/README.md index 55f1cb60d..03e71ce8d 100644 --- a/src/cli/README.md +++ b/src/cli/README.md @@ -35,6 +35,7 @@ OpenThread test scripts use the CLI to execute test cases. * [start](#start) * [state](#state) * [stop](#stop) +* [version](#version) * [whitelist](#whitelist) ## OpenThread Command Details @@ -558,6 +559,16 @@ Disable OpenThread. Done ``` +### version + +Print the build version information. + +```bash +> version +OPENTHREAD/gf4f2f04; Jul 1 2016 17:00:09 +Done +``` + ### whitelist List the whitelist entries. diff --git a/src/cli/cli.cpp b/src/cli/cli.cpp index 4b53db210..c9d35f24f 100644 --- a/src/cli/cli.cpp +++ b/src/cli/cli.cpp @@ -36,6 +36,7 @@ #include #include +#include #include "cli.hpp" #include @@ -79,6 +80,7 @@ const struct Command Interpreter::sCommands[] = { "start", &ProcessStart }, { "state", &ProcessState }, { "stop", &ProcessStop }, + { "version", &ProcessVersion }, { "whitelist", &ProcessWhitelist }, }; @@ -1267,6 +1269,12 @@ exit: AppendResult(error); } +void Interpreter::ProcessVersion(int argc, char *argv[]) +{ + sServer->OutputFormat("%s\r\n", PACKAGE_NAME "/" PACKAGE_VERSION "; " __DATE__ " " __TIME__); + AppendResult(kThreadError_None); +} + void Interpreter::ProcessWhitelist(int argc, char *argv[]) { ThreadError error = kThreadError_None; diff --git a/src/cli/cli.hpp b/src/cli/cli.hpp index d4ea511f0..62894d3cd 100644 --- a/src/cli/cli.hpp +++ b/src/cli/cli.hpp @@ -123,6 +123,7 @@ private: static void ProcessStart(int argc, char *argv[]); static void ProcessState(int argc, char *argv[]); static void ProcessStop(int argc, char *argv[]); + static void ProcessVersion(int argc, char *argv[]); static void ProcessWhitelist(int argc, char *argv[]); static void HandleEchoResponse(void *aContext, Message &aMessage, const Ip6::MessageInfo &aMessageInfo);