aboutsummaryrefslogtreecommitdiff
path: root/src/daemon/command_line_args.h
diff options
context:
space:
mode:
authorwhythat <whythat@protonmail.com>2018-01-22 03:49:51 +0200
committerwhythat <whythat@protonmail.com>2018-02-16 22:32:01 +0200
commitb3b2d4d20cc3c3cf3206468e66f2590c3aed948a (patch)
tree07973a209c847d78f6f574437bf69b058ddce241 /src/daemon/command_line_args.h
parentcommon: implement dynamic option dependencies mechanism (diff)
downloadmonero-b3b2d4d20cc3c3cf3206468e66f2590c3aed948a.tar.xz
options: add testnet option dependencies
Diffstat (limited to 'src/daemon/command_line_args.h')
-rw-r--r--src/daemon/command_line_args.h31
1 files changed, 25 insertions, 6 deletions
diff --git a/src/daemon/command_line_args.h b/src/daemon/command_line_args.h
index 90093b65e..efbae488c 100644
--- a/src/daemon/command_line_args.h
+++ b/src/daemon/command_line_args.h
@@ -31,20 +31,35 @@
#include "common/command_line.h"
#include "cryptonote_config.h"
+#include "daemonizer/daemonizer.h"
namespace daemon_args
{
std::string const WINDOWS_SERVICE_NAME = "Monero Daemon";
- const command_line::arg_descriptor<std::string> arg_config_file = {
+ const command_line::arg_descriptor<std::string, false, true> arg_config_file = {
"config-file"
, "Specify configuration file"
- , std::string(CRYPTONOTE_NAME ".conf")
+ , (daemonizer::get_default_data_dir() / std::string(CRYPTONOTE_NAME ".conf")).string()
+ , cryptonote::arg_testnet_on
+ , [](bool testnet, bool defaulted, std::string val) {
+ if (testnet && defaulted)
+ return (daemonizer::get_default_data_dir() / "testnet" /
+ std::string(CRYPTONOTE_NAME ".conf")).string();
+ return val;
+ }
};
- const command_line::arg_descriptor<std::string> arg_log_file = {
+ const command_line::arg_descriptor<std::string, false, true> arg_log_file = {
"log-file"
, "Specify log file"
- , ""
+ , (daemonizer::get_default_data_dir() / std::string(CRYPTONOTE_NAME ".log")).string()
+ , cryptonote::arg_testnet_on
+ , [](bool testnet, bool defaulted, std::string val) {
+ if (testnet && defaulted)
+ return (daemonizer::get_default_data_dir() / "testnet" /
+ std::string(CRYPTONOTE_NAME ".log")).string();
+ return val;
+ }
};
const command_line::arg_descriptor<std::size_t> arg_max_log_file_size = {
"max-log-file-size"
@@ -79,9 +94,13 @@ namespace daemon_args
const command_line::arg_descriptor<std::string, false, true> arg_zmq_rpc_bind_port = {
"zmq-rpc-bind-port"
, "Port for ZMQ RPC server to listen on"
- , cryptonote::arg_testnet_on
- , std::to_string(config::testnet::ZMQ_RPC_DEFAULT_PORT)
, std::to_string(config::ZMQ_RPC_DEFAULT_PORT)
+ , cryptonote::arg_testnet_on
+ , [](bool testnet, bool defaulted, std::string val) {
+ if (testnet && defaulted)
+ return std::to_string(config::testnet::ZMQ_RPC_DEFAULT_PORT);
+ return val;
+ }
};
} // namespace daemon_args