// Copyright (c) 2018-2020 The Bitcoin Core developers // Distributed under the MIT software license, see the accompanying // file COPYING or http://www.opensource.org/licenses/mit-license.php. #include #include #include class CWallet; namespace interfaces { class Chain; class Handler; class Wallet; } class DummyWalletInit : public WalletInitInterface { public: bool HasWalletSupport() const override {return false;} void AddWalletOptions(ArgsManager& argsman) const override; bool ParameterInteraction() const override {return true;} void Construct(NodeContext& node) const override {LogPrintf("No wallet support compiled in!\n");} // Dash Specific WalletInitInterface InitCoinJoinSettings void AutoLockMasternodeCollaterals() const override {} void InitCoinJoinSettings(const CoinJoinWalletManager& cjwalletman) const override {} bool InitAutoBackup() const override {return true;} }; void DummyWalletInit::AddWalletOptions(ArgsManager& argsman) const { argsman.AddHiddenArgs({ "-avoidpartialspends", "-createwalletbackups=", "-disablewallet", "-instantsendnotify=", "-keypool=", "-maxapsfee=", "-maxtxfee=", "-rescan=", "-salvagewallet", "-spendzeroconfchange", "-wallet=", "-walletbackupsdir=", "-walletbroadcast", "-walletdir=", "-walletnotify=", "-discardfee=", "-fallbackfee=", "-mintxfee=", "-paytxfee=", "-txconfirmtarget=", "-hdseed=", "-mnemonic=", "-mnemonicpassphrase=", "-usehd", "-enablecoinjoin", "-coinjoinamount=", "-coinjoinautostart", "-coinjoindenomsgoal=", "-coinjoindenomshardcap=", "-coinjoinmultisession", "-coinjoinrounds=", "-coinjoinsessions=", "-dblogsize=", "-flushwallet", "-privdb", "-walletrejectlongchains", "-unsafesqlitesync" }); } const WalletInitInterface& g_wallet_init_interface = DummyWalletInit(); namespace interfaces { std::unique_ptr MakeWallet(const std::shared_ptr& wallet, const CoinJoinWalletManager& cjwalletman) { throw std::logic_error("Wallet function called in non-wallet build."); } } // namespace interfaces