diff --git a/modules/consensus/esbocs/dap_chain_cs_esbocs.c b/modules/consensus/esbocs/dap_chain_cs_esbocs.c index 3ba6115c5f17c2b144681adbaa6a3025105bf5de..9be30e274b34018b2c7e7c3388d63baf5894c903 100644 --- a/modules/consensus/esbocs/dap_chain_cs_esbocs.c +++ b/modules/consensus/esbocs/dap_chain_cs_esbocs.c @@ -348,7 +348,7 @@ static dap_list_t *s_get_validators_list(dap_chain_esbocs_session_t *a_session, dap_list_t *l_ret = NULL; if (!l_esbocs_pvt->poa_mode) { - dap_list_t *l_validators = dap_chain_net_srv_stake_get_validators(); + dap_list_t *l_validators = dap_chain_net_srv_stake_get_validators(a_session->chain->net_id); size_t l_validators_count = dap_list_length(l_validators); if (l_validators_count < l_esbocs_pvt->min_validators_count) { dap_list_free_full(l_validators, NULL); diff --git a/modules/service/stake_pos_delegate/dap_chain_net_srv_stake_pos_delegate.c b/modules/service/stake_pos_delegate/dap_chain_net_srv_stake_pos_delegate.c index 1f07e6d62802ac2e46db7ee42761c95acce806a5..e744a8f50d86382b9c9b73fd0c9d41fafd30dfc4 100644 --- a/modules/service/stake_pos_delegate/dap_chain_net_srv_stake_pos_delegate.c +++ b/modules/service/stake_pos_delegate/dap_chain_net_srv_stake_pos_delegate.c @@ -208,14 +208,15 @@ bool dap_chain_net_srv_stake_key_delegated(dap_chain_addr_t *a_signing_addr) return false; } -dap_list_t *dap_chain_net_srv_stake_get_validators() +dap_list_t *dap_chain_net_srv_stake_get_validators(dap_chain_net_id_t a_net_id) { dap_list_t *l_ret = NULL; if (!s_srv_stake || !s_srv_stake->itemlist) return l_ret; dap_chain_net_srv_stake_item_t *l_stake, *l_tmp; HASH_ITER(hh, s_srv_stake->itemlist, l_stake, l_tmp) - l_ret = dap_list_append(l_ret, DAP_DUP(l_stake)); + if (a_net_id.uint64 == l_stake->signing_addr.net_id.uint64) + l_ret = dap_list_append(l_ret, DAP_DUP(l_stake)); return l_ret; } diff --git a/modules/service/stake_pos_delegate/include/dap_chain_net_srv_stake_pos_delegate.h b/modules/service/stake_pos_delegate/include/dap_chain_net_srv_stake_pos_delegate.h index 913d91fe7fb6e3000e7d75fc372bb1a306ce8631..9750aa74f01100e11b1ca6a21d2402671f70c72d 100644 --- a/modules/service/stake_pos_delegate/include/dap_chain_net_srv_stake_pos_delegate.h +++ b/modules/service/stake_pos_delegate/include/dap_chain_net_srv_stake_pos_delegate.h @@ -70,7 +70,7 @@ uint256_t dap_chain_net_srv_stake_get_allowed_min_value(); bool dap_chain_net_srv_stake_key_delegated(dap_chain_addr_t *a_addr); int dap_chain_net_srv_stake_verify_key_and_node(dap_chain_addr_t* a_signing_addr, dap_chain_node_addr_t* a_node_addr); -dap_list_t *dap_chain_net_srv_stake_get_validators(); +dap_list_t *dap_chain_net_srv_stake_get_validators(dap_chain_net_id_t a_net_id); void dap_chain_net_srv_stake_get_fee_validators(dap_chain_net_t *a_net, dap_string_t *a_string);