Change is_STAKED so that chains with a BR are 1 and chains with none are 2. Chains that are 255 are banned, and no notarisations can happen.

This commit is contained in:
blackjok3r
2019-01-25 19:14:22 +08:00
parent 04f7f39d23
commit 4bda6bcac4
3 changed files with 8 additions and 6 deletions

View File

@@ -864,7 +864,7 @@ void komodo_connectblock(CBlockIndex *pindex,CBlock& block)
txn_count = block.vtx.size(); txn_count = block.vtx.size();
for (i=0; i<txn_count; i++) for (i=0; i<txn_count; i++)
{ {
if ( is_STAKED(ASSETCHAINS_SYMBOL) != 0 && staked_era == 0 ) { if ( (is_STAKED(ASSETCHAINS_SYMBOL) != 0 && staked_era == 0) || (is_STAKED(ASSETCHAINS_SYMBOL) == 255) ) {
// in era gap no point checking any invlaid notarisations. // in era gap no point checking any invlaid notarisations.
break; break;
} }

View File

@@ -14,15 +14,14 @@ int8_t is_STAKED(const char *chain_name) {
static int8_t STAKED,doneinit; static int8_t STAKED,doneinit;
if (doneinit == 1 && ASSETCHAINS_SYMBOL[0] != 0) if (doneinit == 1 && ASSETCHAINS_SYMBOL[0] != 0)
return(STAKED); return(STAKED);
if ( (strcmp(chain_name, "LABS") == 0) || (strncmp(chain_name, "LABS", 4) == 0) ) if ( (strcmp(chain_name, "LABS") == 0) || (strcmp(chain_name, "PAYME") == 0) )
STAKED = 1; STAKED = 1;
else if ( (strcmp(chain_name, "LABT2") == 0) || (strncmp(chain_name, "LABT2", 3) == 0) ) else if ( (strncmp(chain_name, "LABS", 4) == 0) )
STAKED = 2; STAKED = 2;
else if ( (strcmp(chain_name, "CFEK") == 0) || (strncmp(chain_name, "CFEK", 4) == 0) ) else if ( (strcmp(chain_name, "CFEK") == 0) || (strncmp(chain_name, "CFEK", 4) == 0) )
STAKED = 3; STAKED = 3;
else else if ( (strcmp(chain_name, "THIS_CHAIN_IS_BANNED") == 0) )
STAKED = 0; STAKED = 255; // This means that all notarisations for chains that are in 255 group are invalid.
//fprintf(stderr, "This chain is: %s which is: %d\n", chain_name,STAKED);
doneinit = 1; doneinit = 1;
return(STAKED); return(STAKED);
}; };

View File

@@ -44,6 +44,9 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight)
if (staked_era == 0) { if (staked_era == 0) {
// this is an ERA GAP, so we will ignore this notarization // this is an ERA GAP, so we will ignore this notarization
continue; continue;
if ( is_STAKED(data.symbol) == 255 )
// this chain is banned... we will discard its notarisation.
continue;
} else { } else {
// pass era slection off to notaries_staked.cpp file // pass era slection off to notaries_staked.cpp file
auth_STAKED = Choose_auth_STAKED(staked_era); auth_STAKED = Choose_auth_STAKED(staked_era);