aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/init.cpp1
-rw-r--r--src/net_processing.cpp2
-rw-r--r--src/net_processing.h3
-rw-r--r--src/node/peerman_args.cpp1
-rw-r--r--src/node/txreconciliation.h2
5 files changed, 5 insertions, 4 deletions
diff --git a/src/init.cpp b/src/init.cpp
index 5f47b1c0f6..997996ef12 100644
--- a/src/init.cpp
+++ b/src/init.cpp
@@ -51,7 +51,6 @@
#include <node/mempool_persist_args.h>
#include <node/miner.h>
#include <node/peerman_args.h>
-#include <node/txreconciliation.h>
#include <node/validation_cache_args.h>
#include <policy/feerate.h>
#include <policy/fees.h>
diff --git a/src/net_processing.cpp b/src/net_processing.cpp
index 4b7b114fa4..a1889ae2b5 100644
--- a/src/net_processing.cpp
+++ b/src/net_processing.cpp
@@ -1826,7 +1826,7 @@ PeerManagerImpl::PeerManagerImpl(CConnman& connman, AddrMan& addrman,
{
// While Erlay support is incomplete, it must be enabled explicitly via -txreconciliation.
// This argument can go away after Erlay support is complete.
- if (gArgs.GetBoolArg("-txreconciliation", DEFAULT_TXRECONCILIATION_ENABLE)) {
+ if (opts.reconcile_txs) {
m_txreconciliation = std::make_unique<TxReconciliationTracker>(TXRECONCILIATION_VERSION);
}
}
diff --git a/src/net_processing.h b/src/net_processing.h
index b88ed0c555..87c65baf01 100644
--- a/src/net_processing.h
+++ b/src/net_processing.h
@@ -14,6 +14,8 @@ class CChainParams;
class CTxMemPool;
class ChainstateManager;
+/** Whether transaction reconciliation protocol should be enabled by default. */
+static constexpr bool DEFAULT_TXRECONCILIATION_ENABLE{false};
/** Default for -maxorphantx, maximum number of orphan transactions kept in memory */
static const unsigned int DEFAULT_MAX_ORPHAN_TRANSACTIONS = 100;
/** Default number of orphan+recently-replaced txn to keep around for block reconstruction */
@@ -46,6 +48,7 @@ public:
struct Options {
/** Whether this node is running in -blocksonly mode */
bool ignore_incoming_txs{DEFAULT_BLOCKSONLY};
+ bool reconcile_txs{DEFAULT_TXRECONCILIATION_ENABLE};
};
static std::unique_ptr<PeerManager> make(CConnman& connman, AddrMan& addrman,
diff --git a/src/node/peerman_args.cpp b/src/node/peerman_args.cpp
index b490d1d079..b1242d0fdf 100644
--- a/src/node/peerman_args.cpp
+++ b/src/node/peerman_args.cpp
@@ -7,6 +7,7 @@ namespace node {
void ApplyArgsManOptions(const ArgsManager& argsman, PeerManager::Options& options)
{
+ if(auto value{argsman.GetBoolArg("-txreconciliation")}) options.reconcile_txs = *value;
}
} // namespace node
diff --git a/src/node/txreconciliation.h b/src/node/txreconciliation.h
index 4591dd5df7..3bbb077366 100644
--- a/src/node/txreconciliation.h
+++ b/src/node/txreconciliation.h
@@ -11,8 +11,6 @@
#include <memory>
#include <tuple>
-/** Whether transaction reconciliation protocol should be enabled by default. */
-static constexpr bool DEFAULT_TXRECONCILIATION_ENABLE{false};
/** Supported transaction reconciliation protocol version */
static constexpr uint32_t TXRECONCILIATION_VERSION{1};