diff options
author | Nathan Dorfman <ndorf@rtfm.net> | 2019-10-24 15:53:12 -0600 |
---|---|---|
committer | Nathan Dorfman <ndorf@rtfm.net> | 2019-11-12 17:57:36 -0700 |
commit | 32937809928ae2204f9eaf1f4995fb1681bd52fd (patch) | |
tree | 3d37987634835cdea13251fc38f04c83d623866c /src/daemon/rpc_command_executor.cpp | |
parent | Merge pull request #6097 (diff) | |
download | monero-32937809928ae2204f9eaf1f4995fb1681bd52fd.tar.xz |
daemon: Use rpc for "version" command
Diffstat (limited to '')
-rw-r--r-- | src/daemon/rpc_command_executor.cpp | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/daemon/rpc_command_executor.cpp b/src/daemon/rpc_command_executor.cpp index ed614a89b..f4a43d3d6 100644 --- a/src/daemon/rpc_command_executor.cpp +++ b/src/daemon/rpc_command_executor.cpp @@ -2442,4 +2442,39 @@ bool t_rpc_command_executor::rpc_payments() return true; } +bool t_rpc_command_executor::version() +{ + cryptonote::COMMAND_RPC_GET_INFO::request req; + cryptonote::COMMAND_RPC_GET_INFO::response res; + + const char *fail_message = "Problem fetching info"; + + if (m_is_rpc) + { + if (!m_rpc_client->rpc_request(req, res, "/getinfo", fail_message)) + { + return true; + } + } + else + { + if (!m_rpc_server->on_get_info(req, res) || res.status != CORE_RPC_STATUS_OK) + { + tools::fail_msg_writer() << make_error(fail_message, res.status); + return true; + } + } + + if (res.version.empty()) + { + tools::fail_msg_writer() << "The daemon software version is not available."; + } + else + { + tools::success_msg_writer() << res.version; + } + + return true; +} + }// namespace daemonize |