aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordergoegge <n.goeggi@gmail.com>2023-04-20 13:49:00 +0200
committerdergoegge <n.goeggi@gmail.com>2023-07-24 18:35:30 +0200
commitbd59bda26b67b53293a5cef7433e992203da325a (patch)
tree9a04d2ebb217b51f801ade93df5273edc917ed58 /src
parent567c4e0b6a3fadd2fd1be732076026bf491519b2 (diff)
[net processing] Move -blockreconstructionextratxn to PeerManager::Options
Diffstat (limited to 'src')
-rw-r--r--src/net_processing.cpp7
-rw-r--r--src/net_processing.h1
-rw-r--r--src/node/peerman_args.cpp4
3 files changed, 8 insertions, 4 deletions
diff --git a/src/net_processing.cpp b/src/net_processing.cpp
index f061f981f2..399c751bd9 100644
--- a/src/net_processing.cpp
+++ b/src/net_processing.cpp
@@ -1649,13 +1649,12 @@ bool PeerManagerImpl::GetNodeStateStats(NodeId nodeid, CNodeStateStats& stats) c
void PeerManagerImpl::AddToCompactExtraTransactions(const CTransactionRef& tx)
{
- size_t max_extra_txn = gArgs.GetIntArg("-blockreconstructionextratxn", DEFAULT_BLOCK_RECONSTRUCTION_EXTRA_TXN);
- if (max_extra_txn <= 0)
+ if (m_opts.max_extra_txs <= 0)
return;
if (!vExtraTxnForCompact.size())
- vExtraTxnForCompact.resize(max_extra_txn);
+ vExtraTxnForCompact.resize(m_opts.max_extra_txs);
vExtraTxnForCompact[vExtraTxnForCompactIt] = std::make_pair(tx->GetWitnessHash(), tx);
- vExtraTxnForCompactIt = (vExtraTxnForCompactIt + 1) % max_extra_txn;
+ vExtraTxnForCompactIt = (vExtraTxnForCompactIt + 1) % m_opts.max_extra_txs;
}
void PeerManagerImpl::Misbehaving(Peer& peer, int howmuch, const std::string& message)
diff --git a/src/net_processing.h b/src/net_processing.h
index 422bf6879b..6ee4f22960 100644
--- a/src/net_processing.h
+++ b/src/net_processing.h
@@ -50,6 +50,7 @@ public:
bool ignore_incoming_txs{DEFAULT_BLOCKSONLY};
bool reconcile_txs{DEFAULT_TXRECONCILIATION_ENABLE};
uint32_t max_orphan_txs{DEFAULT_MAX_ORPHAN_TRANSACTIONS};
+ size_t max_extra_txs{DEFAULT_BLOCK_RECONSTRUCTION_EXTRA_TXN};
};
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 8a1da693f4..4a000de83f 100644
--- a/src/node/peerman_args.cpp
+++ b/src/node/peerman_args.cpp
@@ -12,6 +12,10 @@ void ApplyArgsManOptions(const ArgsManager& argsman, PeerManager::Options& optio
if (auto value{argsman.GetIntArg("-maxorphantx")}) {
options.max_orphan_txs = uint32_t(std::max(int64_t{0}, *value));
}
+
+ if (auto value{argsman.GetIntArg("-blockreconstructionextratxn")}) {
+ options.max_extra_txs = size_t(std::max(int64_t{0}, *value));
+ }
}
} // namespace node