From b853a8227586c6834b29381174e848fe98ef316f Mon Sep 17 00:00:00 2001 From: satyakoneru Date: Wed, 18 Sep 2019 02:50:59 +0000 Subject: [PATCH] SON11 - Add chain extension parameter to set SON count --- libraries/chain/include/graphene/chain/config.hpp | 1 + .../include/graphene/chain/protocol/chain_parameters.hpp | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/libraries/chain/include/graphene/chain/config.hpp b/libraries/chain/include/graphene/chain/config.hpp index 7b3e8743..fbb9a550 100644 --- a/libraries/chain/include/graphene/chain/config.hpp +++ b/libraries/chain/include/graphene/chain/config.hpp @@ -228,3 +228,4 @@ #define TOURNAMENT_MAX_START_DELAY (60*60*24*7) // 1 week #define GPOS_PERIOD (60*60*24*30*6) // 6 months #define GPOS_SUBPERIOD (60*60*24*30) // 1 month +#define MIN_SON_MEMBER_COUNT 15 diff --git a/libraries/chain/include/graphene/chain/protocol/chain_parameters.hpp b/libraries/chain/include/graphene/chain/protocol/chain_parameters.hpp index 87c2e3fe..3a186be2 100644 --- a/libraries/chain/include/graphene/chain/protocol/chain_parameters.hpp +++ b/libraries/chain/include/graphene/chain/protocol/chain_parameters.hpp @@ -43,6 +43,7 @@ namespace graphene { namespace chain { optional < uint32_t > gpos_period; optional < uint32_t > gpos_subperiod; optional < uint32_t > gpos_period_start; + optional < uint16_t > son_count; }; struct chain_parameters @@ -121,6 +122,9 @@ namespace graphene { namespace chain { inline uint32_t gpos_period_start()const { return extensions.value.gpos_period_start.valid() ? *extensions.value.gpos_period_start : HARDFORK_GPOS_TIME.sec_since_epoch(); /// current period start date } + inline uint16_t son_count()const { + return extensions.value.son_count.valid() ? *extensions.value.son_count : MIN_SON_MEMBER_COUNT; + } }; } } // graphene::chain @@ -134,6 +138,7 @@ FC_REFLECT( graphene::chain::parameter_extension, (gpos_period) (gpos_subperiod) (gpos_period_start) + (son_count) ) FC_REFLECT( graphene::chain::chain_parameters,