mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-11-11 14:38:29 +01:00
net processing: clamp -maxorphantx to uint32_t bounds
This commit is contained in:
@@ -17,7 +17,7 @@ class ChainstateManager;
|
|||||||
/** Whether transaction reconciliation protocol should be enabled by default. */
|
/** Whether transaction reconciliation protocol should be enabled by default. */
|
||||||
static constexpr bool DEFAULT_TXRECONCILIATION_ENABLE{false};
|
static constexpr bool DEFAULT_TXRECONCILIATION_ENABLE{false};
|
||||||
/** Default for -maxorphantx, maximum number of orphan transactions kept in memory */
|
/** Default for -maxorphantx, maximum number of orphan transactions kept in memory */
|
||||||
static const unsigned int DEFAULT_MAX_ORPHAN_TRANSACTIONS = 100;
|
static const uint32_t DEFAULT_MAX_ORPHAN_TRANSACTIONS{100};
|
||||||
/** Default number of non-mempool transactions to keep around for block reconstruction. Includes
|
/** Default number of non-mempool transactions to keep around for block reconstruction. Includes
|
||||||
orphan, replaced, and rejected transactions. */
|
orphan, replaced, and rejected transactions. */
|
||||||
static const unsigned int DEFAULT_BLOCK_RECONSTRUCTION_EXTRA_TXN = 100;
|
static const unsigned int DEFAULT_BLOCK_RECONSTRUCTION_EXTRA_TXN = 100;
|
||||||
|
|||||||
@@ -3,6 +3,9 @@
|
|||||||
#include <common/args.h>
|
#include <common/args.h>
|
||||||
#include <net_processing.h>
|
#include <net_processing.h>
|
||||||
|
|
||||||
|
#include <algorithm>
|
||||||
|
#include <limits>
|
||||||
|
|
||||||
namespace node {
|
namespace node {
|
||||||
|
|
||||||
void ApplyArgsManOptions(const ArgsManager& argsman, PeerManager::Options& options)
|
void ApplyArgsManOptions(const ArgsManager& argsman, PeerManager::Options& options)
|
||||||
@@ -10,7 +13,7 @@ void ApplyArgsManOptions(const ArgsManager& argsman, PeerManager::Options& optio
|
|||||||
if (auto value{argsman.GetBoolArg("-txreconciliation")}) options.reconcile_txs = *value;
|
if (auto value{argsman.GetBoolArg("-txreconciliation")}) options.reconcile_txs = *value;
|
||||||
|
|
||||||
if (auto value{argsman.GetIntArg("-maxorphantx")}) {
|
if (auto value{argsman.GetIntArg("-maxorphantx")}) {
|
||||||
options.max_orphan_txs = uint32_t(std::max(int64_t{0}, *value));
|
options.max_orphan_txs = uint32_t((std::clamp<int64_t>(*value, 0, std::numeric_limits<uint32_t>::max())));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (auto value{argsman.GetIntArg("-blockreconstructionextratxn")}) {
|
if (auto value{argsman.GetIntArg("-blockreconstructionextratxn")}) {
|
||||||
|
|||||||
Reference in New Issue
Block a user