Skip to content

Commit

Permalink
Require -experimentalmode for wallet encryption
Browse files Browse the repository at this point in the history
  • Loading branch information
str4d committed Feb 9, 2017
1 parent 1f015f6 commit b8eb377
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 3 deletions.
2 changes: 1 addition & 1 deletion qa/rpc-tests/keypool.py
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ def main():
os.makedirs(options.tmpdir)
initialize_chain(options.tmpdir)

nodes = start_nodes(1, options.tmpdir, extra_args=[['-developerencryptwallet']])
nodes = start_nodes(1, options.tmpdir, extra_args=[['-experimentalfeatures', '-developerencryptwallet']])

run_test(nodes, options.tmpdir)

Expand Down
2 changes: 1 addition & 1 deletion qa/rpc-tests/wallet_nullifiers.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ class WalletNullifiersTest (BitcoinTestFramework):

def setup_nodes(self):
return start_nodes(4, self.options.tmpdir,
extra_args=[['-developerencryptwallet']] * 4)
extra_args=[['-experimentalfeatures', '-developerencryptwallet']] * 4)

def run_test (self):
# add zaddr to node 0
Expand Down
7 changes: 7 additions & 0 deletions src/init.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -754,6 +754,13 @@ bool AppInit2(boost::thread_group& threadGroup, CScheduler& scheduler)
// Set this early so that experimental features are correctly enabled/disabled
fExperimentalMode = GetBoolArg("-experimentalfeatures", false);

// Fail early if user has set experimental options without the global flag
if (!fExperimentalMode) {
if (mapArgs.count("-developerencryptwallet")) {
return InitError(_("Wallet encryption requires -experimentalfeatures."));
}
}

// Set this early so that parameter interactions go to console
fPrintToConsole = GetBoolArg("-printtoconsole", false);
fLogTimestamps = GetBoolArg("-logtimestamps", true);
Expand Down
2 changes: 1 addition & 1 deletion src/wallet/rpcwallet.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2002,7 +2002,7 @@ Value encryptwallet(const Array& params, bool fHelp)
if (!EnsureWalletIsAvailable(fHelp))
return Value::null;

auto fEnableWalletEncryption = GetBoolArg("-developerencryptwallet", false);
auto fEnableWalletEncryption = fExperimentalMode && GetBoolArg("-developerencryptwallet", false);

std::string strWalletEncryptionDisabledMsg = "";
if (!fEnableWalletEncryption) {
Expand Down

0 comments on commit b8eb377

Please sign in to comment.