aboutsummaryrefslogtreecommitdiff
path: root/src/daemon/rpc_command_executor.cpp
diff options
context:
space:
mode:
authorluigi1111 <luigi1111w@gmail.com>2019-09-08 19:46:03 -0500
committerluigi1111 <luigi1111w@gmail.com>2019-09-08 19:46:03 -0500
commit21290005d75501d692d06dfdd26676392949ba8a (patch)
treea089e2c1706409fb760be0a3beda595a623fb89e /src/daemon/rpc_command_executor.cpp
parentMerge pull request #5839 (diff)
parentdaemon: implement 'set_bootstrap_daemon' command (diff)
downloadmonero-21290005d75501d692d06dfdd26676392949ba8a.tar.xz
Merge pull request #5840
063eebb daemon: implement 'set_bootstrap_daemon' command (xiphon)
Diffstat (limited to 'src/daemon/rpc_command_executor.cpp')
-rw-r--r--src/daemon/rpc_command_executor.cpp36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/daemon/rpc_command_executor.cpp b/src/daemon/rpc_command_executor.cpp
index 670affd76..716dea204 100644
--- a/src/daemon/rpc_command_executor.cpp
+++ b/src/daemon/rpc_command_executor.cpp
@@ -2320,4 +2320,40 @@ bool t_rpc_command_executor::check_blockchain_pruning()
return true;
}
+bool t_rpc_command_executor::set_bootstrap_daemon(
+ const std::string &address,
+ const std::string &username,
+ const std::string &password)
+{
+ cryptonote::COMMAND_RPC_SET_BOOTSTRAP_DAEMON::request req;
+ cryptonote::COMMAND_RPC_SET_BOOTSTRAP_DAEMON::response res;
+ const std::string fail_message = "Unsuccessful";
+
+ req.address = address;
+ req.username = username;
+ req.password = password;
+
+ if (m_is_rpc)
+ {
+ if (!m_rpc_client->rpc_request(req, res, "/set_bootstrap_daemon", fail_message))
+ {
+ return true;
+ }
+ }
+ else
+ {
+ if (!m_rpc_server->on_set_bootstrap_daemon(req, res) || res.status != CORE_RPC_STATUS_OK)
+ {
+ tools::fail_msg_writer() << make_error(fail_message, res.status);
+ return true;
+ }
+ }
+
+ tools::success_msg_writer()
+ << "Successfully set bootstrap daemon address to "
+ << (!req.address.empty() ? req.address : "none");
+
+ return true;
+}
+
}// namespace daemonize