[bitcoin/bitcoin] Add createwallet “disableprivatekeys” option: a sane mode for watchonly-wallets (#9662)

Sjors commented on this pull request.

> InitError(_(“Unable to generate initial keys”) += “n”);
return nullptr;
}

walletInstance->ChainStateFlushed(chainActive.GetLocator());
+ } else if ((wallet_creation_flags & WALLET_FLAG_DISABLE_PRIVATE_KEYS)) {
+ // Make it impossible to disable private keys after creation
+ InitError(strprintf(_(“Error loading %s: Private keys can only be disabled during creation”), walletFile));
+ return NULL;
+ } else if (walletInstance->IsWalletFlagSet(WALLET_FLAG_DISABLE_PRIVATE_KEYS)) {
+ LOCK(walletInstance->cs_wallet);
+ if (!walletInstance->mapKeys.empty() || !walletInstance->mapCryptedKeys.empty()) {
+ InitError(strprintf(_(“Error loading %s: Private keys detected in wallet with disabled private keys”), walletFile));

Sounds like that should be a warning, not an error.

This post was last modified on June 14, 2018, 8:36 pm