Changeset View
Changeset View
Standalone View
Standalone View
src/init.cpp
Show First 20 Lines • Show All 333 Lines • ▼ Show 20 Lines | void SetupServerArgs() { | ||||
const auto testnetChainParams = | const auto testnetChainParams = | ||||
CreateChainParams(CBaseChainParams::TESTNET); | CreateChainParams(CBaseChainParams::TESTNET); | ||||
// Set all of the args and their help | // Set all of the args and their help | ||||
// When adding new options to the categories, please keep and ensure | // When adding new options to the categories, please keep and ensure | ||||
// alphabetical ordering. Do not translate _(...) -help-debug options, Many | // alphabetical ordering. Do not translate _(...) -help-debug options, Many | ||||
// technical terms, and only a very small audience, so is unnecessary stress | // technical terms, and only a very small audience, so is unnecessary stress | ||||
// to translators. | // to translators. | ||||
gArgs.AddArg("-?", _("Print this help message and exit"), false, | gArgs.AddArg("-?", "Print this help message and exit", false, | ||||
OptionsCategory::OPTIONS); | OptionsCategory::OPTIONS); | ||||
gArgs.AddArg("-version", _("Print version and exit"), false, | gArgs.AddArg("-version", "Print version and exit", false, | ||||
OptionsCategory::OPTIONS); | OptionsCategory::OPTIONS); | ||||
gArgs.AddArg("-alertnotify=<cmd>", | gArgs.AddArg("-alertnotify=<cmd>", | ||||
_("Execute command when a relevant alert is received or we " | "Execute command when a relevant alert is received or we see " | ||||
"see a really long fork (%s in cmd is replaced by message)"), | "a really long fork (%s in cmd is replaced by message)", | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-assumevalid=<hex>", | "-assumevalid=<hex>", | ||||
strprintf( | strprintf( | ||||
_("If this block is in the chain assume that it and its ancestors " | "If this block is in the chain assume that it and its ancestors " | ||||
"are valid and potentially skip their script verification (0 to " | "are valid and potentially skip their script verification (0 to " | ||||
"verify all, default: %s, testnet: %s)"), | "verify all, default: %s, testnet: %s)", | ||||
defaultChainParams->GetConsensus().defaultAssumeValid.GetHex(), | defaultChainParams->GetConsensus().defaultAssumeValid.GetHex(), | ||||
testnetChainParams->GetConsensus().defaultAssumeValid.GetHex()), | testnetChainParams->GetConsensus().defaultAssumeValid.GetHex()), | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg("-blocksdir=<dir>", | gArgs.AddArg("-blocksdir=<dir>", | ||||
_("Specify directory to hold blocks subdirectory for *.dat " | "Specify directory to hold blocks subdirectory for *.dat " | ||||
"files (default: <datadir>)"), | "files (default: <datadir>)", | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg("-blocknotify=<cmd>", | gArgs.AddArg("-blocknotify=<cmd>", | ||||
_("Execute command when the best block changes (%s in cmd is " | "Execute command when the best block changes (%s in cmd is " | ||||
"replaced by block hash)"), | "replaced by block hash)", | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg( | gArgs.AddArg("-blockreconstructionextratxn=<n>", | ||||
"-blockreconstructionextratxn=<n>", | strprintf("Extra transactions to keep in memory for compact " | ||||
strprintf(_("Extra transactions to keep in memory for compact block " | "block reconstructions (default: %u)", | ||||
"reconstructions (default: %u)"), | |||||
DEFAULT_BLOCK_RECONSTRUCTION_EXTRA_TXN), | DEFAULT_BLOCK_RECONSTRUCTION_EXTRA_TXN), | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-blocksonly", | "-blocksonly", | ||||
strprintf(_("Whether to operate in a blocks only mode (default: %d)"), | strprintf("Whether to operate in a blocks only mode (default: %d)", | ||||
DEFAULT_BLOCKSONLY), | DEFAULT_BLOCKSONLY), | ||||
true, OptionsCategory::OPTIONS); | true, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg("-conf=<file>", | gArgs.AddArg("-conf=<file>", | ||||
strprintf(_("Specify configuration file. Relative paths will " | strprintf("Specify configuration file. Relative paths will be " | ||||
"be prefixed by datadir location. (default: %s)"), | "prefixed by datadir location. (default: %s)", | ||||
BITCOIN_CONF_FILENAME), | BITCOIN_CONF_FILENAME), | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg("-datadir=<dir>", _("Specify data directory"), false, | gArgs.AddArg("-datadir=<dir>", "Specify data directory", false, | ||||
OptionsCategory::OPTIONS); | OptionsCategory::OPTIONS); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-dbbatchsize", | "-dbbatchsize", | ||||
strprintf("Maximum database write batch size in bytes (default: %u)", | strprintf("Maximum database write batch size in bytes (default: %u)", | ||||
nDefaultDbBatchSize), | nDefaultDbBatchSize), | ||||
true, OptionsCategory::OPTIONS); | true, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-dbcache=<n>", | "-dbcache=<n>", | ||||
strprintf( | strprintf( | ||||
_("Set database cache size in megabytes (%d to %d, default: %d)"), | "Set database cache size in megabytes (%d to %d, default: %d)", | ||||
nMinDbCache, nMaxDbCache, nDefaultDbCache), | nMinDbCache, nMaxDbCache, nDefaultDbCache), | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-debuglogfile=<file>", | "-debuglogfile=<file>", | ||||
strprintf( | strprintf("Specify location of debug log file. Relative paths will be " | ||||
_("Specify location of debug log file. Relative paths will be " | "prefixed by a net-specific datadir location. (default: %s)", | ||||
"prefixed by a net-specific datadir location. (default: %s)"), | |||||
DEFAULT_DEBUGLOGFILE), | DEFAULT_DEBUGLOGFILE), | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg("-feefilter", | gArgs.AddArg("-feefilter", | ||||
strprintf("Tell other nodes to filter invs to us by " | strprintf("Tell other nodes to filter invs to us by our " | ||||
"our mempool min fee (default: %d)", | "mempool min fee (default: %d)", | ||||
DEFAULT_FEEFILTER), | DEFAULT_FEEFILTER), | ||||
true, OptionsCategory::OPTIONS); | true, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg("-finalizationdelay=<n>", | gArgs.AddArg("-finalizationdelay=<n>", | ||||
strprintf("Set the minimum amount of time to wait between a " | strprintf("Set the minimum amount of time to wait between a " | ||||
"block header reception and the block finalization. " | "block header reception and the block finalization. " | ||||
"Unit is seconds (default: %d)", | "Unit is seconds (default: %d)", | ||||
DEFAULT_MIN_FINALIZATION_DELAY), | DEFAULT_MIN_FINALIZATION_DELAY), | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-includeconf=<file>", | "-includeconf=<file>", | ||||
_("Specify additional configuration file, relative to the -datadir " | "Specify additional configuration file, relative to the -datadir path " | ||||
"path (only useable from configuration file, not command line)"), | "(only useable from configuration file, not command line)", | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg( | gArgs.AddArg("-maxreorgdepth=<n>", | ||||
"-maxreorgdepth=<n>", | strprintf("Configure at what depth blocks are considered " | ||||
strprintf("Configure at what depth blocks are considered final " | "final (default: %d). Use -1 to disable.", | ||||
"(default: %d). Use -1 to disable.", | |||||
DEFAULT_MAX_REORG_DEPTH), | DEFAULT_MAX_REORG_DEPTH), | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg("-loadblock=<file>", | gArgs.AddArg("-loadblock=<file>", | ||||
_("Imports blocks from external blk000??.dat file on startup"), | "Imports blocks from external blk000??.dat file on startup", | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg("-maxmempool=<n>", | gArgs.AddArg("-maxmempool=<n>", | ||||
strprintf(_("Keep the transaction memory pool " | strprintf("Keep the transaction memory pool below <n> " | ||||
"below <n> megabytes (default: %u)"), | "megabytes (default: %u)", | ||||
DEFAULT_MAX_MEMPOOL_SIZE), | DEFAULT_MAX_MEMPOOL_SIZE), | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg("-maxorphantx=<n>", | gArgs.AddArg("-maxorphantx=<n>", | ||||
strprintf(_("Keep at most <n> unconnectable " | strprintf("Keep at most <n> unconnectable transactions in " | ||||
"transactions in memory (default: %u)"), | "memory (default: %u)", | ||||
DEFAULT_MAX_ORPHAN_TRANSACTIONS), | DEFAULT_MAX_ORPHAN_TRANSACTIONS), | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg("-mempoolexpiry=<n>", | gArgs.AddArg("-mempoolexpiry=<n>", | ||||
strprintf(_("Do not keep transactions in the mempool " | strprintf("Do not keep transactions in the mempool longer " | ||||
"longer than <n> hours (default: %u)"), | "than <n> hours (default: %u)", | ||||
DEFAULT_MEMPOOL_EXPIRY), | DEFAULT_MEMPOOL_EXPIRY), | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-minimumchainwork=<hex>", | "-minimumchainwork=<hex>", | ||||
strprintf( | strprintf( | ||||
"Minimum work assumed to exist on a valid chain in hex " | "Minimum work assumed to exist on a valid chain in hex " | ||||
"(default: %s, testnet: %s)", | "(default: %s, testnet: %s)", | ||||
defaultChainParams->GetConsensus().nMinimumChainWork.GetHex(), | defaultChainParams->GetConsensus().nMinimumChainWork.GetHex(), | ||||
testnetChainParams->GetConsensus().nMinimumChainWork.GetHex()), | testnetChainParams->GetConsensus().nMinimumChainWork.GetHex()), | ||||
true, OptionsCategory::OPTIONS); | true, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-par=<n>", | "-par=<n>", | ||||
strprintf(_("Set the number of script verification threads (%u to %d, " | strprintf("Set the number of script verification threads (%u to %d, 0 " | ||||
"0 = auto, <0 = leave that many cores free, default: %d)"), | "= auto, <0 = leave that many cores free, default: %d)", | ||||
-GetNumCores(), MAX_SCRIPTCHECK_THREADS, | -GetNumCores(), MAX_SCRIPTCHECK_THREADS, | ||||
DEFAULT_SCRIPTCHECK_THREADS), | DEFAULT_SCRIPTCHECK_THREADS), | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg("-persistmempool", | gArgs.AddArg("-persistmempool", | ||||
strprintf(_("Whether to save the mempool on shutdown " | strprintf("Whether to save the mempool on shutdown and load " | ||||
"and load on restart (default: %u)"), | "on restart (default: %u)", | ||||
DEFAULT_PERSIST_MEMPOOL), | DEFAULT_PERSIST_MEMPOOL), | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
#ifndef WIN32 | #ifndef WIN32 | ||||
gArgs.AddArg( | gArgs.AddArg("-pid=<file>", | ||||
"-pid=<file>", | strprintf("Specify pid file. Relative paths will be prefixed " | ||||
strprintf(_("Specify pid file. Relative paths will be prefixed by a " | "by a net-specific datadir location. (default: %s)", | ||||
"net-specific datadir location. (default: %s)"), | |||||
BITCOIN_PID_FILENAME), | BITCOIN_PID_FILENAME), | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
#endif | #endif | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-prune=<n>", | "-prune=<n>", | ||||
strprintf( | strprintf("Reduce storage requirements by enabling pruning (deleting) " | ||||
_("Reduce storage requirements by enabling pruning (deleting) of " | "of old blocks. This allows the pruneblockchain RPC to be " | ||||
"old blocks. This allows the pruneblockchain RPC to be called to " | "called to delete specific blocks, and enables automatic " | ||||
"delete specific blocks, and enables automatic pruning of old " | "pruning of old blocks if a target size in MiB is provided. " | ||||
"blocks if a target size in MiB is provided. This mode is " | "This mode is incompatible with -txindex and -rescan. " | ||||
"incompatible with -txindex and -rescan. " | |||||
"Warning: Reverting this setting requires re-downloading the " | "Warning: Reverting this setting requires re-downloading the " | ||||
"entire blockchain. " | "entire blockchain. (default: 0 = disable pruning blocks, 1 " | ||||
"(default: 0 = disable pruning blocks, 1 = allow manual pruning " | "= allow manual pruning via RPC, >%u = automatically prune " | ||||
"via RPC, >%u = automatically prune block files to stay under " | "block files to stay under the specified target size in MiB)", | ||||
"the specified target size in MiB)"), | |||||
MIN_DISK_SPACE_FOR_BLOCK_FILES / 1024 / 1024), | MIN_DISK_SPACE_FOR_BLOCK_FILES / 1024 / 1024), | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg("-reindex-chainstate", | gArgs.AddArg("-reindex-chainstate", | ||||
_("Rebuild chain state from the currently indexed blocks"), | "Rebuild chain state from the currently indexed blocks", false, | ||||
false, OptionsCategory::OPTIONS); | OptionsCategory::OPTIONS); | ||||
gArgs.AddArg("-reindex", | gArgs.AddArg( | ||||
_("Rebuild chain state and block index from the blk*.dat " | "-reindex", | ||||
"files on disk"), | "Rebuild chain state and block index from the blk*.dat files on disk", | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
#ifndef WIN32 | #ifndef WIN32 | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-sysperms", | "-sysperms", | ||||
_("Create new files with system default permissions, instead of umask " | "Create new files with system default permissions, instead of umask " | ||||
"077 (only effective with disabled wallet functionality)"), | "077 (only effective with disabled wallet functionality)", | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
#endif | #endif | ||||
gArgs.AddArg("-txindex", | gArgs.AddArg("-txindex", | ||||
strprintf(_("Maintain a full transaction index, used by the " | strprintf("Maintain a full transaction index, used by the " | ||||
"getrawtransaction rpc call (default: %d)"), | "getrawtransaction rpc call (default: %d)", | ||||
DEFAULT_TXINDEX), | DEFAULT_TXINDEX), | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg("-usecashaddr", | gArgs.AddArg("-usecashaddr", | ||||
_("Use Cash Address for destination encoding instead " | "Use Cash Address for destination encoding instead of base58 " | ||||
"of base58 (activate by default on Jan, 14)"), | "(activate by default on Jan, 14)", | ||||
false, OptionsCategory::OPTIONS); | false, OptionsCategory::OPTIONS); | ||||
gArgs.AddArg( | gArgs.AddArg("-addnode=<ip>", | ||||
"-addnode=<ip>", | "Add a node to connect to and attempt to keep the connection " | ||||
_("Add a node to connect to and attempt to keep the connection open " | "open (see the `addnode` RPC command help for more info)", | ||||
"(see the `addnode` RPC command help for more info)"), | |||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-banscore=<n>", | "-banscore=<n>", | ||||
strprintf( | strprintf("Threshold for disconnecting misbehaving peers (default: %u)", | ||||
_("Threshold for disconnecting misbehaving peers (default: %u)"), | |||||
DEFAULT_BANSCORE_THRESHOLD), | DEFAULT_BANSCORE_THRESHOLD), | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-bantime=<n>", | gArgs.AddArg("-bantime=<n>", | ||||
strprintf(_("Number of seconds to keep misbehaving peers from " | strprintf("Number of seconds to keep misbehaving peers from " | ||||
"reconnecting (default: %u)"), | "reconnecting (default: %u)", | ||||
DEFAULT_MISBEHAVING_BANTIME), | DEFAULT_MISBEHAVING_BANTIME), | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-bind=<addr>", | gArgs.AddArg("-bind=<addr>", | ||||
_("Bind to given address and always listen on it. Use " | "Bind to given address and always listen on it. Use " | ||||
"[host]:port notation for IPv6"), | "[host]:port notation for IPv6", | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-connect=<ip>", | gArgs.AddArg( | ||||
_("Connect only to the specified node(s); -connect=0 disables " | "-connect=<ip>", | ||||
"automatic connections (the rules for this peer are the " | "Connect only to the specified node(s); -connect=0 disables automatic " | ||||
"same as for -addnode)"), | "connections (the rules for this peer are the same as for -addnode)", | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-discover", | gArgs.AddArg("-discover", | ||||
_("Discover own IP addresses (default: 1 when listening and " | "Discover own IP addresses (default: 1 when listening and no " | ||||
"no -externalip or -proxy)"), | "-externalip or -proxy)", | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-dns", | gArgs.AddArg("-dns", | ||||
_("Allow DNS lookups for -addnode, -seednode and -connect") + | strprintf("Allow DNS lookups for -addnode, -seednode and " | ||||
" " + strprintf(_("(default: %d)"), DEFAULT_NAME_LOOKUP), | "-connect (default: %d)", | ||||
DEFAULT_NAME_LOOKUP), | |||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-dnsseed", | gArgs.AddArg("-dnsseed", | ||||
_("Query for peer addresses via DNS lookup, if low on " | "Query for peer addresses via DNS lookup, if low on addresses " | ||||
"addresses (default: 1 unless -connect used)"), | "(default: 1 unless -connect used)", | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-enablebip61", | gArgs.AddArg("-enablebip61", | ||||
strprintf(_("Send reject messages per BIP61 (default: %u)"), | strprintf("Send reject messages per BIP61 (default: %u)", | ||||
DEFAULT_ENABLE_BIP61), | DEFAULT_ENABLE_BIP61), | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-externalip=<ip>", _("Specify your own public address"), | gArgs.AddArg("-externalip=<ip>", "Specify your own public address", false, | ||||
false, OptionsCategory::CONNECTION); | OptionsCategory::CONNECTION); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-forcednsseed", | "-forcednsseed", | ||||
strprintf( | strprintf( | ||||
_("Always query for peer addresses via DNS lookup (default: %d)"), | "Always query for peer addresses via DNS lookup (default: %d)", | ||||
DEFAULT_FORCEDNSSEED), | DEFAULT_FORCEDNSSEED), | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-listen", | gArgs.AddArg( | ||||
_("Accept connections from outside (default: 1 if no -proxy " | "-listen", | ||||
"or -connect)"), | "Accept connections from outside (default: 1 if no -proxy or -connect)", | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-listenonion", | "-listenonion", | ||||
strprintf(_("Automatically create Tor hidden service (default: %d)"), | strprintf("Automatically create Tor hidden service (default: %d)", | ||||
DEFAULT_LISTEN_ONION), | DEFAULT_LISTEN_ONION), | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-maxconnections=<n>", | "-maxconnections=<n>", | ||||
strprintf(_("Maintain at most <n> connections to peers (default: %u)"), | strprintf("Maintain at most <n> connections to peers (default: %u)", | ||||
DEFAULT_MAX_PEER_CONNECTIONS), | DEFAULT_MAX_PEER_CONNECTIONS), | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-maxreceivebuffer=<n>", | gArgs.AddArg("-maxreceivebuffer=<n>", | ||||
strprintf(_("Maximum per-connection receive buffer, <n>*1000 " | strprintf("Maximum per-connection receive buffer, <n>*1000 " | ||||
"bytes (default: %u)"), | "bytes (default: %u)", | ||||
DEFAULT_MAXRECEIVEBUFFER), | DEFAULT_MAXRECEIVEBUFFER), | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-maxsendbuffer=<n>", | gArgs.AddArg( | ||||
strprintf(_("Maximum per-connection send buffer, <n>*1000 " | "-maxsendbuffer=<n>", | ||||
"bytes (default: %u)"), | strprintf( | ||||
"Maximum per-connection send buffer, <n>*1000 bytes (default: %u)", | |||||
DEFAULT_MAXSENDBUFFER), | DEFAULT_MAXSENDBUFFER), | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-maxtimeadjustment", | "-maxtimeadjustment", | ||||
strprintf(_("Maximum allowed median peer time offset adjustment. Local " | strprintf("Maximum allowed median peer time offset adjustment. Local " | ||||
"perspective of time may be influenced by peers forward or " | "perspective of time may be influenced by peers forward or " | ||||
"backward by this amount. (default: %u seconds)"), | "backward by this amount. (default: %u seconds)", | ||||
DEFAULT_MAX_TIME_ADJUSTMENT), | DEFAULT_MAX_TIME_ADJUSTMENT), | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-onion=<ip:port>", | gArgs.AddArg("-onion=<ip:port>", | ||||
strprintf(_("Use separate SOCKS5 proxy to reach peers via Tor " | strprintf("Use separate SOCKS5 proxy to reach peers via Tor " | ||||
"hidden services (default: %s)"), | "hidden services (default: %s)", | ||||
"-proxy"), | "-proxy"), | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg( | gArgs.AddArg("-onlynet=<net>", | ||||
"-onlynet=<net>", | "Only connect to nodes in network <net> (ipv4, ipv6 or onion)", | ||||
_("Only connect to nodes in network <net> (ipv4, ipv6 or onion)"), | |||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-peerbloomfilters", | gArgs.AddArg("-peerbloomfilters", | ||||
strprintf(_("Support filtering of blocks and transaction with " | strprintf("Support filtering of blocks and transaction with " | ||||
"bloom filters (default: %d)"), | "bloom filters (default: %d)", | ||||
DEFAULT_PEERBLOOMFILTERS), | DEFAULT_PEERBLOOMFILTERS), | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-permitbaremultisig", | gArgs.AddArg("-permitbaremultisig", | ||||
strprintf(_("Relay non-P2SH multisig (default: %d)"), | strprintf("Relay non-P2SH multisig (default: %d)", | ||||
DEFAULT_PERMIT_BAREMULTISIG), | DEFAULT_PERMIT_BAREMULTISIG), | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-port=<port>", | "-port=<port>", | ||||
strprintf( | strprintf( | ||||
_("Listen for connections on <port> (default: %u or testnet: %u)"), | "Listen for connections on <port> (default: %u or testnet: %u)", | ||||
defaultChainParams->GetDefaultPort(), | defaultChainParams->GetDefaultPort(), | ||||
testnetChainParams->GetDefaultPort()), | testnetChainParams->GetDefaultPort()), | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-proxy=<ip:port>", _("Connect through SOCKS5 proxy"), false, | gArgs.AddArg("-proxy=<ip:port>", _("Connect through SOCKS5 proxy"), false, | ||||
OptionsCategory::CONNECTION); | OptionsCategory::CONNECTION); | ||||
gArgs.AddArg( | gArgs.AddArg("-proxyrandomize", | ||||
"-proxyrandomize", | strprintf("Randomize credentials for every proxy connection. " | ||||
strprintf(_("Randomize credentials for every proxy connection. This " | "This enables Tor stream isolation (default: %d)", | ||||
"enables Tor stream isolation (default: %d)"), | |||||
DEFAULT_PROXYRANDOMIZE), | DEFAULT_PROXYRANDOMIZE), | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg( | gArgs.AddArg("-seednode=<ip>", | ||||
"-seednode=<ip>", | "Connect to a node to retrieve peer addresses, and disconnect", | ||||
_("Connect to a node to retrieve peer addresses, and disconnect"), | |||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-timeout=<n>", | gArgs.AddArg("-timeout=<n>", | ||||
strprintf(_("Specify connection timeout in milliseconds " | strprintf("Specify connection timeout in milliseconds " | ||||
"(minimum: 1, default: %d)"), | "(minimum: 1, default: %d)", | ||||
DEFAULT_CONNECT_TIMEOUT), | DEFAULT_CONNECT_TIMEOUT), | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-torcontrol=<ip>:<port>", | gArgs.AddArg( | ||||
strprintf(_("Tor control port to use if onion listening " | "-torcontrol=<ip>:<port>", | ||||
"enabled (default: %s)"), | strprintf( | ||||
"Tor control port to use if onion listening enabled (default: %s)", | |||||
DEFAULT_TOR_CONTROL), | DEFAULT_TOR_CONTROL), | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-torpassword=<pass>", | gArgs.AddArg("-torpassword=<pass>", | ||||
_("Tor control port password (default: empty)"), false, | "Tor control port password (default: empty)", false, | ||||
OptionsCategory::CONNECTION); | OptionsCategory::CONNECTION); | ||||
#ifdef USE_UPNP | #ifdef USE_UPNP | ||||
#if USE_UPNP | #if USE_UPNP | ||||
gArgs.AddArg("-upnp", | gArgs.AddArg("-upnp", | ||||
_("Use UPnP to map the listening port (default: 1 when " | "Use UPnP to map the listening port (default: 1 when " | ||||
"listening and no -proxy)"), | "listening and no -proxy)", | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
#else | #else | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-upnp", | "-upnp", | ||||
strprintf(_("Use UPnP to map the listening port (default: %u)"), 0), | strprintf("Use UPnP to map the listening port (default: %u)", 0), false, | ||||
false, OptionsCategory::CONNECTION); | OptionsCategory::CONNECTION); | ||||
#endif | #endif | ||||
#endif | #endif | ||||
gArgs.AddArg("-whitebind=<addr>", | gArgs.AddArg("-whitebind=<addr>", | ||||
_("Bind to given address and whitelist peers connecting to " | "Bind to given address and whitelist peers connecting to it. " | ||||
"it. Use [host]:port notation for IPv6"), | "Use [host]:port notation for IPv6", | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg("-whitelist=<IP address or network>", | gArgs.AddArg("-whitelist=<IP address or network>", | ||||
_("Whitelist peers connecting from the given IP address (e.g. " | "Whitelist peers connecting from the given IP address (e.g. " | ||||
"1.2.3.4) or CIDR notated network (e.g. 1.2.3.0/24). Can be " | "1.2.3.4) or CIDR notated network (e.g. 1.2.3.0/24). Can be " | ||||
"specified multiple times.") + | "specified multiple times. " | ||||
" " + | "Whitelisted peers cannot be DoS banned and their " | ||||
_("Whitelisted peers cannot be DoS banned and their " | "transactions are always relayed, even if they are already in " | ||||
"transactions are always relayed, even if they are " | "the mempool, useful e.g. for a gateway", | ||||
"already in the mempool, useful e.g. for a gateway"), | |||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-maxuploadtarget=<n>", | "-maxuploadtarget=<n>", | ||||
strprintf(_("Tries to keep outbound traffic under the given target (in " | strprintf("Tries to keep outbound traffic under the given target (in " | ||||
"MiB per 24h), 0 = no limit (default: %d)"), | "MiB per 24h), 0 = no limit (default: %d)", | ||||
DEFAULT_MAX_UPLOAD_TARGET), | DEFAULT_MAX_UPLOAD_TARGET), | ||||
false, OptionsCategory::CONNECTION); | false, OptionsCategory::CONNECTION); | ||||
g_wallet_init_interface.AddWalletOptions(); | g_wallet_init_interface.AddWalletOptions(); | ||||
#if ENABLE_ZMQ | #if ENABLE_ZMQ | ||||
gArgs.AddArg("-zmqpubhashblock=<address>", | gArgs.AddArg("-zmqpubhashblock=<address>", | ||||
_("Enable publish hash block in <address>"), false, | "Enable publish hash block in <address>", false, | ||||
OptionsCategory::ZMQ); | OptionsCategory::ZMQ); | ||||
gArgs.AddArg("-zmqpubhashtx=<address>", | gArgs.AddArg("-zmqpubhashtx=<address>", | ||||
_("Enable publish hash transaction in <address>"), false, | "Enable publish hash transaction in <address>", false, | ||||
OptionsCategory::ZMQ); | OptionsCategory::ZMQ); | ||||
gArgs.AddArg("-zmqpubrawblock=<address>", | gArgs.AddArg("-zmqpubrawblock=<address>", | ||||
_("Enable publish raw block in <address>"), false, | "Enable publish raw block in <address>", false, | ||||
OptionsCategory::ZMQ); | OptionsCategory::ZMQ); | ||||
gArgs.AddArg("-zmqpubrawtx=<address>", | gArgs.AddArg("-zmqpubrawtx=<address>", | ||||
_("Enable publish raw transaction in <address>"), false, | "Enable publish raw transaction in <address>", false, | ||||
OptionsCategory::ZMQ); | OptionsCategory::ZMQ); | ||||
#endif | #endif | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-checkblocks=<n>", | "-checkblocks=<n>", | ||||
strprintf( | strprintf("How many blocks to check at startup (default: %u, 0 = all)", | ||||
_("How many blocks to check at startup (default: %u, 0 = all)"), | |||||
DEFAULT_CHECKBLOCKS), | DEFAULT_CHECKBLOCKS), | ||||
true, OptionsCategory::DEBUG_TEST); | true, OptionsCategory::DEBUG_TEST); | ||||
gArgs.AddArg("-checklevel=<n>", | gArgs.AddArg("-checklevel=<n>", | ||||
strprintf(_("How thorough the block verification of " | strprintf("How thorough the block verification of " | ||||
"-checkblocks is (0-4, default: %u)"), | "-checkblocks is (0-4, default: %u)", | ||||
DEFAULT_CHECKLEVEL), | DEFAULT_CHECKLEVEL), | ||||
true, OptionsCategory::DEBUG_TEST); | true, OptionsCategory::DEBUG_TEST); | ||||
gArgs.AddArg( | gArgs.AddArg("-checkblockindex", | ||||
"-checkblockindex", | |||||
strprintf("Do a full consistency check for mapBlockIndex, " | strprintf("Do a full consistency check for mapBlockIndex, " | ||||
"setBlockIndexCandidates, chainActive and mapBlocksUnlinked " | "setBlockIndexCandidates, chainActive and " | ||||
"occasionally. (default: %u)", | "mapBlocksUnlinked occasionally. (default: %u)", | ||||
defaultChainParams->DefaultConsistencyChecks()), | defaultChainParams->DefaultConsistencyChecks()), | ||||
true, OptionsCategory::DEBUG_TEST); | true, OptionsCategory::DEBUG_TEST); | ||||
gArgs.AddArg("-checkmempool=<n>", | gArgs.AddArg("-checkmempool=<n>", | ||||
strprintf("Run checks every <n> transactions (default: %u)", | strprintf("Run checks every <n> transactions (default: %u)", | ||||
defaultChainParams->DefaultConsistencyChecks()), | defaultChainParams->DefaultConsistencyChecks()), | ||||
true, OptionsCategory::DEBUG_TEST); | true, OptionsCategory::DEBUG_TEST); | ||||
gArgs.AddArg("-checkpoints", | gArgs.AddArg("-checkpoints", | ||||
strprintf("Only accept block chain matching built-in " | strprintf("Only accept block chain matching built-in " | ||||
"checkpoints (default: %d)", | "checkpoints (default: %d)", | ||||
DEFAULT_CHECKPOINTS_ENABLED), | DEFAULT_CHECKPOINTS_ENABLED), | ||||
Show All 36 Lines | gArgs.AddArg( | ||||
strprintf("Do not accept transactions if any ancestor would have more " | strprintf("Do not accept transactions if any ancestor would have more " | ||||
"than <n> kilobytes of in-mempool descendants (default: %u).", | "than <n> kilobytes of in-mempool descendants (default: %u).", | ||||
DEFAULT_DESCENDANT_SIZE_LIMIT), | DEFAULT_DESCENDANT_SIZE_LIMIT), | ||||
true, OptionsCategory::DEBUG_TEST); | true, OptionsCategory::DEBUG_TEST); | ||||
gArgs.AddArg("-addrmantest", "Allows to test address relay on localhost", | gArgs.AddArg("-addrmantest", "Allows to test address relay on localhost", | ||||
true, OptionsCategory::DEBUG_TEST); | true, OptionsCategory::DEBUG_TEST); | ||||
gArgs.AddArg("-debug=<category>", | gArgs.AddArg("-debug=<category>", | ||||
strprintf(_("Output debugging information (default: %u, " | strprintf("Output debugging information (default: %u, " | ||||
"supplying <category> is optional)"), | "supplying <category> is optional)", | ||||
0) + | 0) + | ||||
". " + | ". " + | ||||
_("If <category> is not supplied or if <category> = 1, " | "If <category> is not supplied or if <category> = 1, " | ||||
"output all debugging information.") + | "output all debugging information." | ||||
_("<category> can be:") + " " + ListLogCategories() + ".", | "<category> can be: " + | ||||
ListLogCategories() + ".", | |||||
false, OptionsCategory::DEBUG_TEST); | false, OptionsCategory::DEBUG_TEST); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-debugexclude=<category>", | "-debugexclude=<category>", | ||||
strprintf(_("Exclude debugging information for a category. Can be used " | strprintf("Exclude debugging information for a category. Can be used " | ||||
"in conjunction with -debug=1 to output debug logs for all " | "in conjunction with -debug=1 to output debug logs for all " | ||||
"categories except one or more specified categories.")), | "categories except one or more specified categories."), | ||||
false, OptionsCategory::DEBUG_TEST); | false, OptionsCategory::DEBUG_TEST); | ||||
gArgs.AddArg("-help-debug", | gArgs.AddArg("-help-debug", | ||||
_("Show all debugging options (usage: --help -help-debug)"), | "Show all debugging options (usage: --help -help-debug)", | ||||
false, OptionsCategory::DEBUG_TEST); | false, OptionsCategory::DEBUG_TEST); | ||||
gArgs.AddArg( | gArgs.AddArg("-logips", | ||||
"-logips", | strprintf("Include IP addresses in debug output (default: %d)", | ||||
strprintf(_("Include IP addresses in debug output (default: %d)"), | |||||
DEFAULT_LOGIPS), | DEFAULT_LOGIPS), | ||||
false, OptionsCategory::DEBUG_TEST); | false, OptionsCategory::DEBUG_TEST); | ||||
gArgs.AddArg( | gArgs.AddArg("-logtimestamps", | ||||
"-logtimestamps", | strprintf("Prepend debug output with timestamp (default: %d)", | ||||
strprintf(_("Prepend debug output with timestamp (default: %d)"), | |||||
DEFAULT_LOGTIMESTAMPS), | DEFAULT_LOGTIMESTAMPS), | ||||
false, OptionsCategory::DEBUG_TEST); | false, OptionsCategory::DEBUG_TEST); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-logtimemicros", | "-logtimemicros", | ||||
strprintf("Add microsecond precision to debug timestamps (default: %d)", | strprintf("Add microsecond precision to debug timestamps (default: %d)", | ||||
DEFAULT_LOGTIMEMICROS), | DEFAULT_LOGTIMEMICROS), | ||||
true, OptionsCategory::DEBUG_TEST); | true, OptionsCategory::DEBUG_TEST); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-mocktime=<n>", | "-mocktime=<n>", | ||||
Show All 10 Lines | gArgs.AddArg( | ||||
DEFAULT_MAX_SCRIPT_CACHE_SIZE), | DEFAULT_MAX_SCRIPT_CACHE_SIZE), | ||||
true, OptionsCategory::DEBUG_TEST); | true, OptionsCategory::DEBUG_TEST); | ||||
gArgs.AddArg("-maxtipage=<n>", | gArgs.AddArg("-maxtipage=<n>", | ||||
strprintf("Maximum tip age in seconds to consider node in " | strprintf("Maximum tip age in seconds to consider node in " | ||||
"initial block download (default: %u)", | "initial block download (default: %u)", | ||||
DEFAULT_MAX_TIP_AGE), | DEFAULT_MAX_TIP_AGE), | ||||
true, OptionsCategory::DEBUG_TEST); | true, OptionsCategory::DEBUG_TEST); | ||||
gArgs.AddArg( | gArgs.AddArg("-printtoconsole", | ||||
"-printtoconsole", | "Send trace/debug info to console instead of debug.log file", | ||||
_("Send trace/debug info to console instead of debug.log file"), false, | false, OptionsCategory::DEBUG_TEST); | ||||
OptionsCategory::DEBUG_TEST); | |||||
gArgs.AddArg("-printpriority", | gArgs.AddArg("-printpriority", | ||||
strprintf("Log transaction priority and fee per kB when " | strprintf("Log transaction priority and fee per kB when " | ||||
"mining blocks (default: %d)", | "mining blocks (default: %d)", | ||||
DEFAULT_PRINTPRIORITY), | DEFAULT_PRINTPRIORITY), | ||||
true, OptionsCategory::DEBUG_TEST); | true, OptionsCategory::DEBUG_TEST); | ||||
gArgs.AddArg("-shrinkdebugfile", | gArgs.AddArg( | ||||
_("Shrink debug.log file on client startup (default: 1 when " | "-shrinkdebugfile", | ||||
"no -debug)"), | "Shrink debug.log file on client startup (default: 1 when no -debug)", | ||||
false, OptionsCategory::DEBUG_TEST); | false, OptionsCategory::DEBUG_TEST); | ||||
gArgs.AddArg("-uacomment=<cmt>", | gArgs.AddArg("-uacomment=<cmt>", "Append comment to the user agent string", | ||||
_("Append comment to the user agent string"), false, | false, OptionsCategory::DEBUG_TEST); | ||||
OptionsCategory::DEBUG_TEST); | |||||
SetupChainParamsBaseOptions(); | SetupChainParamsBaseOptions(); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-acceptnonstdtxn", | "-acceptnonstdtxn", | ||||
strprintf( | strprintf( | ||||
"Relay and mine \"non-standard\" transactions (%sdefault: %u)", | "Relay and mine \"non-standard\" transactions (%sdefault: %u)", | ||||
"testnet/regtest only; ", defaultChainParams->RequireStandard()), | "testnet/regtest only; ", defaultChainParams->RequireStandard()), | ||||
true, OptionsCategory::NODE_RELAY); | true, OptionsCategory::NODE_RELAY); | ||||
gArgs.AddArg("-excessiveblocksize=<n>", | gArgs.AddArg("-excessiveblocksize=<n>", | ||||
strprintf(_("Do not accept blocks larger than this limit, in " | strprintf("Do not accept blocks larger than this limit, in " | ||||
"bytes (default: %d)"), | "bytes (default: %d)", | ||||
DEFAULT_MAX_BLOCK_SIZE), | DEFAULT_MAX_BLOCK_SIZE), | ||||
true, OptionsCategory::NODE_RELAY); | true, OptionsCategory::NODE_RELAY); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-dustrelayfee=<amt>", | "-dustrelayfee=<amt>", | ||||
strprintf("Fee rate (in %s/kB) used to defined dust, the value of an " | strprintf("Fee rate (in %s/kB) used to defined dust, the value of an " | ||||
"output such that it will cost about 1/3 of its value in " | "output such that it will cost about 1/3 of its value in " | ||||
"fees at this fee rate to spend it. (default: %s)", | "fees at this fee rate to spend it. (default: %s)", | ||||
CURRENCY_UNIT, FormatMoney(DUST_RELAY_TX_FEE)), | CURRENCY_UNIT, FormatMoney(DUST_RELAY_TX_FEE)), | ||||
true, OptionsCategory::NODE_RELAY); | true, OptionsCategory::NODE_RELAY); | ||||
gArgs.AddArg("-limitfreerelay=<n>", | gArgs.AddArg("-limitfreerelay=<n>", | ||||
strprintf("Continuously rate-limit free transactions to " | strprintf("Continuously rate-limit free transactions to " | ||||
"<n>*1000 bytes per minute (default: %u)", | "<n>*1000 bytes per minute (default: %u)", | ||||
DEFAULT_LIMITFREERELAY), | DEFAULT_LIMITFREERELAY), | ||||
true, OptionsCategory::NODE_RELAY); | true, OptionsCategory::NODE_RELAY); | ||||
gArgs.AddArg("-relaypriority", | gArgs.AddArg("-relaypriority", | ||||
strprintf("Require high priority for relaying free or low-fee " | strprintf("Require high priority for relaying free or low-fee " | ||||
"transactions (default: %d)", | "transactions (default: %d)", | ||||
DEFAULT_RELAYPRIORITY), | DEFAULT_RELAYPRIORITY), | ||||
true, OptionsCategory::NODE_RELAY); | true, OptionsCategory::NODE_RELAY); | ||||
gArgs.AddArg("-bytespersigop", | gArgs.AddArg("-bytespersigop", | ||||
strprintf(_("Equivalent bytes per sigop in transactions for " | strprintf("Equivalent bytes per sigop in transactions for " | ||||
"relay and mining (default: %u)"), | "relay and mining (default: %u)", | ||||
DEFAULT_BYTES_PER_SIGOP), | DEFAULT_BYTES_PER_SIGOP), | ||||
false, OptionsCategory::NODE_RELAY); | false, OptionsCategory::NODE_RELAY); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-datacarrier", | "-datacarrier", | ||||
strprintf(_("Relay and mine data carrier transactions (default: %d)"), | strprintf("Relay and mine data carrier transactions (default: %d)", | ||||
DEFAULT_ACCEPT_DATACARRIER), | DEFAULT_ACCEPT_DATACARRIER), | ||||
false, OptionsCategory::NODE_RELAY); | false, OptionsCategory::NODE_RELAY); | ||||
gArgs.AddArg("-datacarriersize", | gArgs.AddArg("-datacarriersize", | ||||
strprintf(_("Maximum size of data in data carrier " | strprintf("Maximum size of data in data carrier transactions " | ||||
"transactions we relay and mine (default: %u)"), | "we relay and mine (default: %u)", | ||||
MAX_OP_RETURN_RELAY), | MAX_OP_RETURN_RELAY), | ||||
false, OptionsCategory::NODE_RELAY); | false, OptionsCategory::NODE_RELAY); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-minrelaytxfee=<amt>", | "-minrelaytxfee=<amt>", | ||||
strprintf( | strprintf("Fees (in %s/kB) smaller than this are considered zero fee " | ||||
_("Fees (in %s/kB) smaller than this are considered zero fee for " | "for relaying, mining and transaction creation (default: %s)", | ||||
"relaying, mining and transaction creation (default: %s)"), | |||||
CURRENCY_UNIT, FormatMoney(DEFAULT_MIN_RELAY_TX_FEE_PER_KB)), | CURRENCY_UNIT, FormatMoney(DEFAULT_MIN_RELAY_TX_FEE_PER_KB)), | ||||
false, OptionsCategory::NODE_RELAY); | false, OptionsCategory::NODE_RELAY); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-whitelistrelay", | "-whitelistrelay", | ||||
strprintf(_("Accept relayed transactions received from whitelisted " | strprintf(_("Accept relayed transactions received from whitelisted " | ||||
"peers even when not relaying transactions (default: %d)"), | "peers even when not relaying transactions (default: %d)"), | ||||
DEFAULT_WHITELISTRELAY), | DEFAULT_WHITELISTRELAY), | ||||
false, OptionsCategory::NODE_RELAY); | false, OptionsCategory::NODE_RELAY); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-whitelistforcerelay", | "-whitelistforcerelay", | ||||
strprintf(_("Force relay of transactions from whitelisted peers even " | strprintf("Force relay of transactions from whitelisted peers even if " | ||||
"if they violate local relay policy (default: %d)"), | "they violate local relay policy (default: %d)", | ||||
DEFAULT_WHITELISTFORCERELAY), | DEFAULT_WHITELISTFORCERELAY), | ||||
false, OptionsCategory::NODE_RELAY); | false, OptionsCategory::NODE_RELAY); | ||||
// Not sure this really belongs here, but it will do for now. | // Not sure this really belongs here, but it will do for now. | ||||
// FIXME: This doesn't work anyways. | // FIXME: This doesn't work anyways. | ||||
gArgs.AddArg("-excessutxocharge=<amt>", | gArgs.AddArg("-excessutxocharge=<amt>", | ||||
strprintf(_("Fees (in %s/kB) to charge per utxo created for " | strprintf("Fees (in %s/kB) to charge per utxo created for " | ||||
"relaying, and mining (default: %s)"), | "relaying, and mining (default: %s)", | ||||
CURRENCY_UNIT, FormatMoney(DEFAULT_UTXO_FEE)), | CURRENCY_UNIT, FormatMoney(DEFAULT_UTXO_FEE)), | ||||
true, OptionsCategory::NODE_RELAY); | true, OptionsCategory::NODE_RELAY); | ||||
gArgs.AddArg("-blockmaxsize=<n>", | gArgs.AddArg("-blockmaxsize=<n>", | ||||
strprintf(_("Set maximum block size in bytes (default: %d)"), | strprintf("Set maximum block size in bytes (default: %d)", | ||||
DEFAULT_MAX_GENERATED_BLOCK_SIZE), | DEFAULT_MAX_GENERATED_BLOCK_SIZE), | ||||
false, OptionsCategory::BLOCK_CREATION); | false, OptionsCategory::BLOCK_CREATION); | ||||
gArgs.AddArg( | gArgs.AddArg("-blockprioritypercentage=<n>", | ||||
"-blockprioritypercentage=<n>", | strprintf("Set maximum percentage of a block reserved to " | ||||
strprintf(_("Set maximum percentage of a block reserved to " | "high-priority/low-fee transactions (default: %d)", | ||||
"high-priority/low-fee transactions (default: %d)"), | |||||
DEFAULT_BLOCK_PRIORITY_PERCENTAGE), | DEFAULT_BLOCK_PRIORITY_PERCENTAGE), | ||||
false, OptionsCategory::BLOCK_CREATION); | false, OptionsCategory::BLOCK_CREATION); | ||||
gArgs.AddArg( | gArgs.AddArg("-blockmintxfee=<amt>", | ||||
"-blockmintxfee=<amt>", | strprintf("Set lowest fee rate (in %s/kB) for transactions to " | ||||
strprintf(_("Set lowest fee rate (in %s/kB) for transactions to be " | "be included in block creation. (default: %s)", | ||||
"included in block creation. (default: %s)"), | CURRENCY_UNIT, | ||||
CURRENCY_UNIT, FormatMoney(DEFAULT_BLOCK_MIN_TX_FEE_PER_KB)), | FormatMoney(DEFAULT_BLOCK_MIN_TX_FEE_PER_KB)), | ||||
false, OptionsCategory::BLOCK_CREATION); | false, OptionsCategory::BLOCK_CREATION); | ||||
gArgs.AddArg("-blockversion=<n>", | gArgs.AddArg("-blockversion=<n>", | ||||
"Override block version to test forking scenarios", true, | "Override block version to test forking scenarios", true, | ||||
OptionsCategory::BLOCK_CREATION); | OptionsCategory::BLOCK_CREATION); | ||||
gArgs.AddArg("-server", _("Accept command line and JSON-RPC commands"), | gArgs.AddArg("-server", "Accept command line and JSON-RPC commands", false, | ||||
false, OptionsCategory::RPC); | OptionsCategory::RPC); | ||||
gArgs.AddArg("-rest", | gArgs.AddArg("-rest", | ||||
strprintf(_("Accept public REST requests (default: %d)"), | strprintf("Accept public REST requests (default: %d)", | ||||
DEFAULT_REST_ENABLE), | DEFAULT_REST_ENABLE), | ||||
false, OptionsCategory::RPC); | false, OptionsCategory::RPC); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-rpcbind=<addr>[:port]", | "-rpcbind=<addr>[:port]", | ||||
_("Bind to given address to listen for JSON-RPC connections. This " | "Bind to given address to listen for JSON-RPC connections. This option " | ||||
"option is ignored unless -rpcallowip is also passed. Port is " | "is ignored unless -rpcallowip is also passed. Port is optional and " | ||||
"optional and overrides -rpcport. Use [host]:port notation for IPv6. " | "overrides -rpcport. Use [host]:port notation for IPv6. This option " | ||||
"This option can be specified multiple times (default: 127.0.0.1 and " | "can be specified multiple times (default: 127.0.0.1 and ::1 i.e., " | ||||
"::1 i.e., localhost, or if -rpcallowip has been specified, 0.0.0.0 " | "localhost, or if -rpcallowip has been specified, 0.0.0.0 and :: i.e., " | ||||
"and :: i.e., all addresses)"), | "all addresses)", | ||||
false, OptionsCategory::RPC); | false, OptionsCategory::RPC); | ||||
gArgs.AddArg( | gArgs.AddArg("-rpccookiefile=<loc>", | ||||
"-rpccookiefile=<loc>", | "Location of the auth cookie. Relative paths will be prefixed " | ||||
_("Location of the auth cookie. Relative paths will be prefixed by a " | "by a net-specific datadir location. (default: data dir)", | ||||
"net-specific datadir location. (default: data dir)"), | |||||
false, OptionsCategory::RPC); | false, OptionsCategory::RPC); | ||||
gArgs.AddArg("-rpcuser=<user>", _("Username for JSON-RPC connections"), | gArgs.AddArg("-rpcuser=<user>", _("Username for JSON-RPC connections"), | ||||
false, OptionsCategory::RPC); | false, OptionsCategory::RPC); | ||||
gArgs.AddArg("-rpcpassword=<pw>", _("Password for JSON-RPC connections"), | gArgs.AddArg("-rpcpassword=<pw>", _("Password for JSON-RPC connections"), | ||||
false, OptionsCategory::RPC); | false, OptionsCategory::RPC); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-rpcauth=<userpw>", | "-rpcauth=<userpw>", | ||||
_("Username and hashed password for JSON-RPC connections. The field " | "Username and hashed password for JSON-RPC connections. The field " | ||||
"<userpw> comes in the format: <USERNAME>:<SALT>$<HASH>. A canonical " | "<userpw> comes in the format: <USERNAME>:<SALT>$<HASH>. A canonical " | ||||
"python script is included in share/rpcuser. The client then " | "python script is included in share/rpcuser. The client then connects " | ||||
"connects normally using the " | "normally using the rpcuser=<USERNAME>/rpcpassword=<PASSWORD> pair of " | ||||
"rpcuser=<USERNAME>/rpcpassword=<PASSWORD> pair of arguments. This " | "arguments. This option can be specified multiple times", | ||||
"option can be specified multiple times"), | |||||
false, OptionsCategory::RPC); | false, OptionsCategory::RPC); | ||||
gArgs.AddArg( | gArgs.AddArg("-rpcport=<port>", | ||||
"-rpcport=<port>", | strprintf("Listen for JSON-RPC connections on <port> " | ||||
strprintf(_("Listen for JSON-RPC connections on <port> (default: %u or " | "(default: %u or testnet: %u)", | ||||
"testnet: %u)"), | defaultBaseParams->RPCPort(), | ||||
defaultBaseParams->RPCPort(), testnetBaseParams->RPCPort()), | testnetBaseParams->RPCPort()), | ||||
false, OptionsCategory::RPC); | false, OptionsCategory::RPC); | ||||
gArgs.AddArg("-rpcallowip=<ip>", | gArgs.AddArg("-rpcallowip=<ip>", | ||||
_("Allow JSON-RPC connections from specified source. Valid " | "Allow JSON-RPC connections from specified source. Valid for " | ||||
"for <ip> are a single IP (e.g. 1.2.3.4), a network/netmask " | "<ip> are a single IP (e.g. 1.2.3.4), a network/netmask (e.g. " | ||||
"(e.g. 1.2.3.4/255.255.255.0) or a network/CIDR (e.g. " | "1.2.3.4/255.255.255.0) or a network/CIDR (e.g. 1.2.3.4/24). " | ||||
"1.2.3.4/24). This option can be specified multiple times"), | "This option can be specified multiple times", | ||||
false, OptionsCategory::RPC); | false, OptionsCategory::RPC); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-rpcthreads=<n>", | "-rpcthreads=<n>", | ||||
strprintf( | strprintf( | ||||
_("Set the number of threads to service RPC calls (default: %d)"), | "Set the number of threads to service RPC calls (default: %d)", | ||||
DEFAULT_HTTP_THREADS), | DEFAULT_HTTP_THREADS), | ||||
false, OptionsCategory::RPC); | false, OptionsCategory::RPC); | ||||
gArgs.AddArg( | gArgs.AddArg( | ||||
"-rpccorsdomain=value", | "-rpccorsdomain=value", | ||||
"Domain from which to accept cross origin requests (browser enforced)", | "Domain from which to accept cross origin requests (browser enforced)", | ||||
false, OptionsCategory::RPC); | false, OptionsCategory::RPC); | ||||
gArgs.AddArg("-rpcworkqueue=<n>", | gArgs.AddArg("-rpcworkqueue=<n>", | ||||
▲ Show 20 Lines • Show All 1,529 Lines • Show Last 20 Lines |