diff options
author | luigi1111 <luigi1111w@gmail.com> | 2024-02-24 10:16:54 -0500 |
---|---|---|
committer | luigi1111 <luigi1111w@gmail.com> | 2024-02-24 10:16:54 -0500 |
commit | b12766a652eb84dd12da96dc79bad95efc4f8fab (patch) | |
tree | fbfdad73ddd7ca7f92a4ef083194a58c98565d5f | |
parent | Merge pull request #9182 (diff) | |
parent | cryptonote_core: early out on out of bounds scaling parameter (diff) | |
download | monero-b12766a652eb84dd12da96dc79bad95efc4f8fab.tar.xz |
Merge pull request #9189
f7670c9 cryptonote_core: early out on out of bounds scaling parameter (selsta)
-rw-r--r-- | src/cryptonote_core/blockchain.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/cryptonote_core/blockchain.cpp b/src/cryptonote_core/blockchain.cpp index 7c9bd9163..3e1704048 100644 --- a/src/cryptonote_core/blockchain.cpp +++ b/src/cryptonote_core/blockchain.cpp @@ -3831,6 +3831,8 @@ void Blockchain::get_dynamic_base_fee_estimate_2021_scaling(uint64_t grace_block const uint8_t version = get_current_hard_fork_version(); const uint64_t db_height = m_db->height(); + CHECK_AND_ASSERT_THROW_MES(grace_blocks <= CRYPTONOTE_REWARD_BLOCKS_WINDOW, "Grace blocks invalid In 2021 fee scaling estimate."); + // we want Mlw = median of max((min(Mbw, 1.7 * Ml), Zm), Ml / 1.7) // Mbw: block weight for the last 99990 blocks, 0 for the next 10 // Ml: penalty free zone (dynamic), aka long_term_median, aka median of max((min(Mb, 1.7 * Ml), Zm), Ml / 1.7) @@ -3844,7 +3846,6 @@ void Blockchain::get_dynamic_base_fee_estimate_2021_scaling(uint64_t grace_block const uint64_t Mlw_penalty_free_zone_for_wallet = std::max<uint64_t>(rm.size() == 0 ? 0 : rm.median(), CRYPTONOTE_BLOCK_GRANTED_FULL_REWARD_ZONE_V5); // Msw: median over [100 - grace blocks] past + [grace blocks] future blocks - CHECK_AND_ASSERT_THROW_MES(grace_blocks <= 100, "Grace blocks invalid In 2021 fee scaling estimate."); std::vector<uint64_t> weights; get_last_n_blocks_weights(weights, 100 - grace_blocks); weights.reserve(100); |