From 0ad42d9e746c008bcaa8ee0b7a165164d9d2124c Mon Sep 17 00:00:00 2001 From: librelois <c@elo.tf> Date: Wed, 29 Jan 2020 16:04:14 +0100 Subject: [PATCH] [fix] bc: allow block v12 --- .../blockchain/blockchain/src/dubp/check/local.rs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/lib/modules/blockchain/blockchain/src/dubp/check/local.rs b/lib/modules/blockchain/blockchain/src/dubp/check/local.rs index daabddb3..233e62f4 100644 --- a/lib/modules/blockchain/blockchain/src/dubp/check/local.rs +++ b/lib/modules/blockchain/blockchain/src/dubp/check/local.rs @@ -30,12 +30,15 @@ use dubp_common_doc::traits::Document; use dubp_common_doc::BlockNumber; use dubp_currency_params::CurrencyParameters; +const COUNT_ALLOWED_BLOCK_VERSIONS: usize = 3; +static ALLOWED_BLOCK_VERSIONS: [usize; COUNT_ALLOWED_BLOCK_VERSIONS] = [10, 11, 12]; + #[derive(Debug, PartialEq)] /// Local verification of a block error pub enum LocalVerifyBlockError { /// Wrong block version Version { - expected_version: Vec<usize>, + expected_version: [usize; COUNT_ALLOWED_BLOCK_VERSIONS], actual_version: u32, }, /// Genesis block specific rules @@ -105,9 +108,9 @@ pub fn verify_local_validity_block_v10( block: &BlockDocumentV10, ) -> Result<(), LocalVerifyBlockError> { // Version - if !(block.version == 10 || block.version == 11) { + if !ALLOWED_BLOCK_VERSIONS.contains(&(block.version as usize)) { return Err(LocalVerifyBlockError::Version { - expected_version: vec![10, 11], + expected_version: ALLOWED_BLOCK_VERSIONS, actual_version: block.version, }); } @@ -181,7 +184,7 @@ mod tests { block.version = 14; let expected = Err(LocalVerifyBlockError::Version { - expected_version: vec![10, 11], + expected_version: ALLOWED_BLOCK_VERSIONS, actual_version: 14, }); let actual = verify_local_validity_block(&BlockDocument::V10(block), Some(currency_params)); -- GitLab