diff --git a/CMakeLists.txt b/CMakeLists.txt index bbb0a5e3419f51a7bd5036da26b9706326ee0f1c..d27ed1f77512b0472aa32aa3e6477bf9df1780eb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,7 +2,7 @@ project(cellframe-sdk C) cmake_minimum_required(VERSION 2.8) set(CMAKE_C_STANDARD 11) -set(CELLFRAME_SDK_NATIVE_VERSION "2.5-3") +set(CELLFRAME_SDK_NATIVE_VERSION "2.5-4") add_definitions ("-DCELLFRAME_SDK_VERSION=\"${CELLFRAME_SDK_NATIVE_VERSION}\"") set(DAPSDK_MODULES "") diff --git a/modules/channel/chain/dap_stream_ch_chain.c b/modules/channel/chain/dap_stream_ch_chain.c index afe6ba08d91520758d256a7d840344432c7cc2b2..8f94aa9bef621e6b249edff165c5bdbd3aba99f5 100644 --- a/modules/channel/chain/dap_stream_ch_chain.c +++ b/modules/channel/chain/dap_stream_ch_chain.c @@ -139,7 +139,7 @@ bool s_sync_chains_callback(dap_proc_thread_t *a_thread, void *a_arg) l_ch_chain->request_atom_iter = l_iter; l_lasts = l_chain->callback_atom_iter_get_lasts(l_iter, &l_lasts_count, &l_lasts_sizes); if(l_lasts&& l_lasts_sizes) { - for(size_t i = 0; i < l_lasts_count; i++) { + for(size_t i = l_lasts_count - 1; i >= 0; i--) { dap_chain_atom_item_t * l_item = NULL; dap_chain_hash_fast_t l_atom_hash; dap_hash_fast(l_lasts[i], l_lasts_sizes[i], @@ -250,7 +250,7 @@ bool s_chain_pkt_callback(dap_proc_thread_t *a_thread, void *a_arg) dap_hash_fast(l_atom_copy, l_atom_copy_size, &l_atom_hash); dap_chain_atom_iter_t *l_atom_iter = l_chain->callback_atom_iter_create(l_chain); size_t l_atom_size =0; - if ( l_chain->callback_atom_find_by_hash(l_atom_iter, &l_atom_hash, &l_atom_size) != NULL ) { + if ( l_chain->callback_atom_find_by_hash(l_atom_iter, &l_atom_hash, &l_atom_size) == NULL ) { dap_chain_atom_verify_res_t l_atom_add_res = l_chain->callback_atom_add(l_chain, l_atom_copy, l_atom_copy_size); if(l_atom_add_res == ATOM_ACCEPT && dap_chain_has_file_store(l_chain)) { // append to file diff --git a/modules/net/dap_chain_net.c b/modules/net/dap_chain_net.c index d18a5063bafbf8177e08607c1cefbce9ebf4ba3b..8d2e991ab4363a84cdf209676704c84cae24f4ee 100644 --- a/modules/net/dap_chain_net.c +++ b/modules/net/dap_chain_net.c @@ -512,13 +512,13 @@ static int s_net_states_proc(dap_chain_net_t * l_net) l_res = dap_chain_node_client_wait(l_node_client, NODE_CLIENT_STATE_SYNCED, timeout_ms); switch (l_res) { case -1: - log_it(L_WARNING,"Timeout with link sync"); + log_it(L_WARNING, "Timeout with reverse link sync"); break; case 0: - log_it(L_INFO, "Node sync completed"); + log_it(L_INFO, "Node reverse sync completed"); break; default: - log_it(L_INFO, "Node sync error %d",l_res); + log_it(L_INFO, "Node reverse sync error %d",l_res); } l_tmp = dap_list_next(l_tmp); } diff --git a/modules/net/dap_chain_node_client.c b/modules/net/dap_chain_node_client.c index 11a8c3a0dd8f9455586d1cd22e0bf472db7b70ad..bb92eab2c791bdf1a6d25cffc90ea096da3807b2 100644 --- a/modules/net/dap_chain_node_client.c +++ b/modules/net/dap_chain_node_client.c @@ -127,6 +127,7 @@ static void s_stage_status_error_callback(dap_client_t *a_client, void *a_arg) SetEvent( l_node_client->wait_cond ); #endif pthread_mutex_unlock(&l_node_client->wait_mutex); + return; } if(l_node_client && l_node_client->keep_connection && diff --git a/modules/type/dag/dap_chain_cs_dag.c b/modules/type/dag/dap_chain_cs_dag.c index b037fae22ef77d4b88de6e692b301de1b55dd404..b45dc45248ac63a34af746a7394cba103e454532 100644 --- a/modules/type/dag/dap_chain_cs_dag.c +++ b/modules/type/dag/dap_chain_cs_dag.c @@ -251,12 +251,12 @@ static int s_dap_chain_add_atom_to_ledger(dap_chain_cs_dag_t * a_dag, dap_ledger switch (l_datum->header.type_id) { case DAP_CHAIN_DATUM_TOKEN_DECL: { dap_chain_datum_token_t *l_token = (dap_chain_datum_token_t*) l_datum->data; - dap_chain_ledger_token_add(a_ledger, l_token, l_datum->header.data_size); + return dap_chain_ledger_token_add(a_ledger, l_token, l_datum->header.data_size); } break; case DAP_CHAIN_DATUM_TOKEN_EMISSION: { dap_chain_datum_token_emission_t *l_token_emission = (dap_chain_datum_token_emission_t*) l_datum->data; - dap_chain_ledger_token_emission_add(a_ledger, l_token_emission, l_datum->header.data_size); + return dap_chain_ledger_token_emission_add(a_ledger, l_token_emission, l_datum->header.data_size); } break; case DAP_CHAIN_DATUM_TX: { @@ -289,10 +289,10 @@ static int s_dap_chain_add_atom_to_events_table(dap_chain_cs_dag_t * a_dag, dap_ dap_chain_hash_fast_to_str(&a_event_item->hash,l_buf_hash,sizeof(l_buf_hash)-1); log_it(L_DEBUG,"Dag event %s checked, add it to ledger", l_buf_hash); res = s_dap_chain_add_atom_to_ledger(a_dag, a_ledger, a_event_item); - + //All correct, no matter for result HASH_ADD(hh, PVT(a_dag)->events,hash,sizeof (a_event_item->hash), a_event_item); s_dag_events_lasts_process_new_last_event(a_dag, a_event_item); - }else{ + } else { char l_buf_hash[128]; dap_chain_hash_fast_to_str(&a_event_item->hash,l_buf_hash,sizeof(l_buf_hash)-1); log_it(L_WARNING,"Dag event %s check failed: code %d", l_buf_hash, res ); @@ -693,7 +693,7 @@ int dap_chain_cs_dag_event_verify_hashes_with_treshold(dap_chain_cs_dag_t * a_da bool l_is_events_all_hashes = true; bool l_is_events_main_hashes = true; - if(a_event->header.hash_count == 0){ + if (a_event->header.hash_count == 0) { //looks like an alternative genesis event return DAP_THRESHOLD_CONFLICTING; }