 |
Bitcoin Core
22.99.0
P2P Digital Currency
|
Go to the documentation of this file.
48 argsman.
AddArg(
"-avoidpartialspends",
strprintf(
"Group outputs by address, selecting many (possibly all) or none, instead of selecting on a per-output basis. Privacy is improved as addresses are mostly swept with fewer transactions and outputs are aggregated in clean change addresses. It may result in higher fees due to less optimal coin selection caused by this added limitation and possibly a larger-than-necessary number of inputs being used. Always enabled for wallets with \"avoid_reuse\" enabled, otherwise default: %u.",
DEFAULT_AVOIDPARTIALSPENDS),
ArgsManager::ALLOW_ANY,
OptionsCategory::WALLET);
49 argsman.
AddArg(
"-changetype",
50 "What type of change to use (\"legacy\", \"p2sh-segwit\", \"bech32\", or \"bech32m\"). Default is \"legacy\" when "
51 "-addresstype=legacy, else it is an implementation detail.",
55 argsman.
AddArg(
"-discardfee=<amt>",
strprintf(
"The fee rate (in %s/kvB) that indicates your tolerance for discarding change by adding it to the fee (default: %s). "
56 "Note: An output is discarded if it is dust at this rate, but we will always discard up to the dust relay fee and a discard fee above that is limited by the fee estimate for the longest target",
59 argsman.
AddArg(
"-fallbackfee=<amt>",
strprintf(
"A fee rate (in %s/kvB) that will be used when fee estimation has insufficient data. 0 to entirely disable the fallbackfee feature. (default: %s)",
63 argsman.
AddArg(
"-maxtxfee=<amt>",
strprintf(
"Maximum total fees (in %s) to use in a single wallet transaction; setting this too low may abort large transactions (default: %s)",
65 argsman.
AddArg(
"-mintxfee=<amt>",
strprintf(
"Fee rates (in %s/kvB) smaller than this are considered zero fee for transaction creation (default: %s)",
67 argsman.
AddArg(
"-paytxfee=<amt>",
strprintf(
"Fee rate (in %s/kvB) to add to transactions you send (default: %s)",
69 #ifdef ENABLE_EXTERNAL_SIGNER
74 argsman.
AddArg(
"-wallet=<path>",
"Specify wallet path to load at startup. Can be used multiple times to load multiple wallets. Path is to a directory containing wallet data and log files. If the path is not absolute, it is interpreted relative to <walletdir>. This only loads existing wallets and does not create new ones. For backwards compatibility this also accepts names of existing top-level data files in <walletdir>.",
ArgsManager::ALLOW_ANY |
ArgsManager::NETWORK_ONLY,
OptionsCategory::WALLET);
78 argsman.
AddArg(
"-walletnotify=<cmd>",
"Execute command when a wallet transaction changes. %s in cmd is replaced by TxID, %w is replaced by wallet name, %b is replaced by the hash of the block including the transaction (set to 'unconfirmed' if the transaction is not included) and %h is replaced by the block height (-1 if not included). %w is not currently implemented on windows. On systems where %w is supported, it should NOT be quoted because this would break shell escaping used to invoke the command.",
ArgsManager::ALLOW_ANY,
OptionsCategory::WALLET);
87 argsman.
AddHiddenArgs({
"-dblogsize",
"-flushwallet",
"-privdb"});
105 return InitError(
Untranslated(
"A version conflict was detected between the run-time BerkeleyDB library and the one used during compilation."));
110 LogPrintf(
"%s: parameter interaction: -disablewallet -> ignoring -wallet=%s\n", __func__,
wallet);
117 LogPrintf(
"%s: parameter interaction: -blocksonly=1 -> setting -walletbroadcast=0\n", __func__);
121 return InitError(
Untranslated(
"-zapwallettxes has been removed. If you are attempting to remove a stuck transaction from your wallet, please use abandontransaction instead."));
125 return InitError(
Untranslated(
"-sysperms is not allowed in combination with enabled wallet functionality"));
137 auto wallet_loader =
node.init->makeWalletLoader(*
node.chain);
138 node.wallet_loader = wallet_loader.get();
139 node.chain_clients.emplace_back(std::move(wallet_loader));
static const bool DEFAULT_WALLETBROADCAST
static const bool DEFAULT_WALLET_PRIVDB
static const CAmount DEFAULT_MAX_AVOIDPARTIALSPEND_FEE
maximum fee increase allowed to do partial spend avoidance, even for nodes with this feature disabled...
const WalletInitInterface & g_wallet_init_interface
bool GetBoolArg(const std::string &strArg, bool fDefault) const
Return boolean argument or default value.
void AddHiddenArgs(const std::vector< std::string > &args)
Add many hidden arguments.
static const unsigned int DEFAULT_WALLET_DBLOGSIZE
const std::string & FormatOutputType(OutputType type)
bool SoftSetBoolArg(const std::string &strArg, bool fValue)
Set a boolean argument if it doesn't already have a value.
static const CAmount DEFAULT_FALLBACK_FEE
-fallbackfee default
@ ALLOW_ANY
disable validation
bool IsArgSet(const std::string &strArg) const
Return true if the given argument has been manually set.
NodeContext struct containing references to chain state and connection state.
bool HasWalletSupport() const override
Was the wallet component compiled in.
static const unsigned int DEFAULT_TX_CONFIRM_TARGET
-txconfirmtarget default
static const CAmount DEFAULT_CONSOLIDATE_FEERATE
-consolidatefeerate default
static const CAmount DEFAULT_DISCARD_FEE
-discardfee default
#define Assert(val)
Identity function.
Fee rate in satoshis per kilobyte: CAmount / kB.
static const CAmount DEFAULT_TRANSACTION_MINFEE
-mintxfee default
constexpr OutputType DEFAULT_ADDRESS_TYPE
Default for -addresstype.
const std::string CURRENCY_UNIT
bool ParameterInteraction() const override
Wallets parameter interaction.
bilingual_str Untranslated(std::string original)
Mark a bilingual_str as untranslated.
constexpr CAmount DEFAULT_TRANSACTION_MAXFEE
-maxtxfee default
bool InitError(const bilingual_str &str)
Show error message.
void AddArg(const std::string &name, const std::string &help, unsigned int flags, const OptionsCategory &cat)
Add argument.
static const unsigned int DEFAULT_KEYPOOL_SIZE
Default for -keypool.
static const bool DEFAULT_WALLET_REJECT_LONG_CHAINS
Default for -walletrejectlongchains.
constexpr CAmount DEFAULT_PAY_TX_FEE
-paytxfee default
static const bool DEFAULT_FLUSHWALLET
Overview of wallet database classes:
bool BerkeleyDatabaseSanityCheck()
Perform sanity check of runtime BDB version versus linked BDB version.
static const bool DEFAULT_WALLET_RBF
-walletrbf default
void Construct(NodeContext &node) const override
Add wallets that should be opened to list of chain clients.
static const bool DEFAULT_DISABLE_WALLET
static const bool DEFAULT_SPEND_ZEROCONF_CHANGE
Default for -spendzeroconfchange.
std::vector< std::string > GetArgs(const std::string &strArg) const
Return a vector of strings of the given argument.
static const bool DEFAULT_BLOCKSONLY
Default for blocks only.
static constexpr bool DEFAULT_AVOIDPARTIALSPENDS
Default for -avoidpartialspends.
std::string FormatMoney(const CAmount n)
Money parsing/formatting utilities.
void AddWalletOptions(ArgsManager &argsman) const override
Return the wallets help message.