diff --git a/rai/node/node.cpp b/rai/node/node.cpp index 49e859c9..14309d0d 100644 --- a/rai/node/node.cpp +++ b/rai/node/node.cpp @@ -2040,7 +2040,10 @@ void rai::node::start () { bootstrap.start (); } - backup_wallet (); + if (!flags.disable_backup) + { + backup_wallet (); + } search_pending (); online_reps.recalculate_stake (); port_mapping.start (); diff --git a/rai/node/nodeconfig.cpp b/rai/node/nodeconfig.cpp index 688d0aa2..49d5ea16 100644 --- a/rai/node/nodeconfig.cpp +++ b/rai/node/nodeconfig.cpp @@ -327,6 +327,7 @@ rai::account rai::node_config::random_representative () } rai::node_flags::node_flags () : +disable_backup (false), disable_lazy_bootstrap (false), disable_legacy_bootstrap (false), disable_bootstrap_listener (false) diff --git a/rai/node/nodeconfig.hpp b/rai/node/nodeconfig.hpp index 48b7225b..3110ad8e 100644 --- a/rai/node/nodeconfig.hpp +++ b/rai/node/nodeconfig.hpp @@ -56,6 +56,7 @@ class node_flags { public: node_flags (); + bool disable_backup; bool disable_lazy_bootstrap; bool disable_legacy_bootstrap; bool disable_bootstrap_listener; diff --git a/rai/rai_node/entry.cpp b/rai/rai_node/entry.cpp index 60b11eda..021307fc 100644 --- a/rai/rai_node/entry.cpp +++ b/rai/rai_node/entry.cpp @@ -21,6 +21,7 @@ int main (int argc, char * const * argv) ("help", "Print out options") ("version", "Prints out version") ("daemon", "Start node daemon") + ("disable_backup", "Disable wallet automatic backups") ("disable_lazy_bootstrap", "Disables lazy bootstrap") ("disable_legacy_bootstrap", "Disables legacy bootstrap") ("disable_bootstrap_listener", "Disables bootstrap listener (incoming connections)") @@ -66,6 +67,7 @@ int main (int argc, char * const * argv) { rai_daemon::daemon daemon; rai::node_flags flags; + flags.disable_backup = (vm.count ("disable_backup") > 0); flags.disable_lazy_bootstrap = (vm.count ("disable_lazy_bootstrap") > 0); flags.disable_legacy_bootstrap = (vm.count ("disable_legacy_bootstrap") > 0); flags.disable_bootstrap_listener = (vm.count ("disable_bootstrap_listener") > 0); diff --git a/rai/rai_wallet/entry.cpp b/rai/rai_wallet/entry.cpp index a3c2ae7a..20de1830 100644 --- a/rai/rai_wallet/entry.cpp +++ b/rai/rai_wallet/entry.cpp @@ -189,7 +189,7 @@ bool update_config (qt_wallet_config & config_a, boost::filesystem::path const & } } -int run_wallet (QApplication & application, int argc, char * const * argv, boost::filesystem::path const & data_path) +int run_wallet (QApplication & application, int argc, char * const * argv, boost::filesystem::path const & data_path, rai::node_flags const & flags) { rai_qt::eventloop_processor processor; boost::system::error_code error_chmod; @@ -323,7 +323,12 @@ int main (int argc, char * const * argv) { data_path = rai::working_path (); } - result = run_wallet (application, argc, argv, data_path); + rai::node_flags flags; + flags.disable_backup = (vm.count ("disable_backup") > 0); + flags.disable_lazy_bootstrap = (vm.count ("disable_lazy_bootstrap") > 0); + flags.disable_legacy_bootstrap = (vm.count ("disable_legacy_bootstrap") > 0); + flags.disable_bootstrap_listener = (vm.count ("disable_bootstrap_listener") > 0); + result = run_wallet (application, argc, argv, data_path, flags); } catch (std::exception const & e) {