diff --git a/dap-sdk/core/include/dap_strfuncs.h b/dap-sdk/core/include/dap_strfuncs.h index b929c3a891bf169fc475dfbc52f9a1f5a604f0db..0c1c4c195b43f7800503c454d36f4f9a20e0a441 100755 --- a/dap-sdk/core/include/dap_strfuncs.h +++ b/dap-sdk/core/include/dap_strfuncs.h @@ -80,6 +80,7 @@ char* dap_strreverse(char *a_string); uint128_t dap_strtou128(const char *p, char **endp, int base); int128_t dap_strtoi128(const char *p, char **endp, int base); + /** * @brief atoi128 * @param p diff --git a/dap-sdk/crypto/include/dap_hash.h b/dap-sdk/crypto/include/dap_hash.h index 32edf0125e53362d7ea3871fe343d438a5e53b6b..d81d94df5ad53a37499205ac2d93ede70b6874ff 100755 --- a/dap-sdk/crypto/include/dap_hash.h +++ b/dap-sdk/crypto/include/dap_hash.h @@ -51,7 +51,7 @@ extern "C" { #endif //size_t dap_chain_hash_fast_to_str(dap_chain_hash_fast_t * a_hash, char * a_str, size_t a_str_max); -int dap_chain_str_to_hash_fast( const char * a_hash_str, dap_chain_hash_fast_t * a_hash); +int dap_chain_hash_fast_from_str( const char * a_hash_str, dap_chain_hash_fast_t * a_hash); static inline bool dap_hash_fast( const void *a_data_in, size_t a_data_in_size, dap_chain_hash_fast_t *a_hash_out ) { diff --git a/dap-sdk/crypto/src/dap_hash.c b/dap-sdk/crypto/src/dap_hash.c index 6842f637ae430aa974e11445a64834e5691cde87..9360ef298b036f326fbf3f721118a7ffc905ec11 100755 --- a/dap-sdk/crypto/src/dap_hash.c +++ b/dap-sdk/crypto/src/dap_hash.c @@ -37,7 +37,7 @@ * @param a_hash * @return */ -int dap_chain_str_to_hash_fast( const char * a_hash_str, dap_chain_hash_fast_t * a_hash) +int dap_chain_hash_fast_from_str( const char * a_hash_str, dap_chain_hash_fast_t * a_hash) { const size_t c_hash_str_size = sizeof(*a_hash) * 2 + 1 /*trailing zero*/+ 2 /* heading 0x */; size_t l_hash_str_len = strlen( a_hash_str); @@ -55,3 +55,4 @@ int dap_chain_str_to_hash_fast( const char * a_hash_str, dap_chain_hash_fast_t * }else // Wromg string len return -1; } + diff --git a/dap-sdk/net/client/dap_client.c b/dap-sdk/net/client/dap_client.c index b55f4d0229142f63b2281d71b9c4af76f7b2f5c0..15f40ca49ce61311b2e07653da242ba876656d27 100644 --- a/dap-sdk/net/client/dap_client.c +++ b/dap-sdk/net/client/dap_client.c @@ -233,6 +233,7 @@ void dap_client_delete(dap_client_t * a_client) //memset(a_client, 0, sizeof(dap_client_t)); //pthread_mutex_unlock(l_mutex); pthread_mutex_unlock(&a_client->mutex); + pthread_mutex_destroy(&a_client->mutex); // a_client will be deleted in dap_events_socket_delete() -> free( a_es->_inheritor ); //DAP_DELETE(a_client); DAP_DEL_Z(a_client); diff --git a/modules/chain/dap_chain_ledger.c b/modules/chain/dap_chain_ledger.c index 91ab38c600c73b460f5355e245e9d1ebac5d8c4c..8ede47afb507de8b89ac8214f66a65ea66c042b7 100644 --- a/modules/chain/dap_chain_ledger.c +++ b/modules/chain/dap_chain_ledger.c @@ -408,7 +408,7 @@ void dap_chain_ledger_load_cache(dap_ledger_t *a_ledger) l_objs = dap_chain_global_db_gr_load(l_gdb_group, &l_objs_count); for (size_t i = 0; i < l_objs_count; i++) { dap_chain_ledger_token_emission_item_t *l_emission_item = DAP_NEW_Z(dap_chain_ledger_token_emission_item_t); - dap_chain_str_to_hash_fast(l_objs[i].key, &l_emission_item->datum_token_emission_hash); + dap_chain_hash_fast_from_str(l_objs[i].key, &l_emission_item->datum_token_emission_hash); l_emission_item->datum_token_emission = DAP_NEW_Z_SIZE(dap_chain_datum_token_emission_t, l_objs[i].value_len); memcpy(l_emission_item->datum_token_emission, l_objs[i].value, l_objs[i].value_len); const char * c_token_ticker = l_emission_item->datum_token_emission->hdr.ticker; @@ -436,7 +436,7 @@ void dap_chain_ledger_load_cache(dap_ledger_t *a_ledger) l_objs = dap_chain_global_db_gr_load(l_gdb_group, &l_objs_count); for (size_t i = 0; i < l_objs_count; i++) { dap_chain_ledger_tx_item_t *l_tx_item = DAP_NEW_Z(dap_chain_ledger_tx_item_t); - dap_chain_str_to_hash_fast(l_objs[i].key, &l_tx_item->tx_hash_fast); + dap_chain_hash_fast_from_str(l_objs[i].key, &l_tx_item->tx_hash_fast); l_tx_item->tx = DAP_NEW_Z_SIZE(dap_chain_datum_tx_t, l_objs[i].value_len - sizeof(l_tx_item->cache_data)); memcpy(l_tx_item->tx, l_objs[i].value + sizeof(l_tx_item->cache_data), l_objs[i].value_len - sizeof(l_tx_item->cache_data)); memcpy(&l_tx_item->cache_data, l_objs[i].value, sizeof(l_tx_item->cache_data)); @@ -456,7 +456,7 @@ void dap_chain_ledger_load_cache(dap_ledger_t *a_ledger) l_objs = dap_chain_global_db_gr_load(l_gdb_group, &l_objs_count); for (size_t i = 0; i < l_objs_count; i++) { dap_chain_ledger_tx_item_t *l_tx_item = DAP_NEW_Z(dap_chain_ledger_tx_item_t); - dap_chain_str_to_hash_fast(l_objs[i].key, &l_tx_item->tx_hash_fast); + dap_chain_hash_fast_from_str(l_objs[i].key, &l_tx_item->tx_hash_fast); l_tx_item->tx = DAP_NEW_SIZE(dap_chain_datum_tx_t, l_objs[i].value_len); memcpy(l_tx_item->tx, l_objs[i].value, l_objs[i].value_len); HASH_ADD(hh, l_ledger_pvt->treshold_txs, tx_hash_fast, sizeof(dap_chain_hash_fast_t), l_tx_item); diff --git a/modules/net/dap_chain_node_cli_cmd.c b/modules/net/dap_chain_node_cli_cmd.c index 9557e2ba43f1c100d2a1da622e409ce5a7ed8c3c..d312f4f3b8224e91450ded0258d9e2b17ff6b178 100644 --- a/modules/net/dap_chain_node_cli_cmd.c +++ b/modules/net/dap_chain_node_cli_cmd.c @@ -3799,7 +3799,7 @@ int com_tx_history(int a_argc, char ** a_argv, void *a_arg_func, char **a_str_re dap_chain_hash_fast_t l_tx_hash; if(l_tx_hash_str) { - if(dap_chain_str_to_hash_fast(l_tx_hash_str, &l_tx_hash) < 0) { + if(dap_chain_hash_fast_from_str(l_tx_hash_str, &l_tx_hash) < 0) { l_tx_hash_str = NULL; dap_chain_node_cli_set_reply_text(a_str_reply, "tx hash not recognized"); return -1; diff --git a/modules/net/srv/dap_chain_net_srv.c b/modules/net/srv/dap_chain_net_srv.c index 0e58a7ae737f21e279ee65b3b37cbb5978cf9795..171c9e3ee60eee6e0ea33de86db083c79172cfdd 100644 --- a/modules/net/srv/dap_chain_net_srv.c +++ b/modules/net/srv/dap_chain_net_srv.c @@ -485,7 +485,7 @@ static int s_cli_net_srv( int argc, char **argv, void *arg_func, char **a_str_re log_it( L_ERROR, "Can't parse \"%s\" as node addr"); } if (l_tx_cond_hash_str) - dap_chain_str_to_hash_fast (l_tx_cond_hash_str, &l_tx_cond_hash); + dap_chain_hash_fast_from_str (l_tx_cond_hash_str, &l_tx_cond_hash); l_price = (uint64_t) atoll ( l_price_str ); l_price_unit.uint32 = (uint32_t) atol ( l_price_unit_str ); strncpy(l_price_token, l_price_token_str, DAP_CHAIN_TICKER_SIZE_MAX - 1); diff --git a/modules/service/stake/dap_chain_net_srv_stake.c b/modules/service/stake/dap_chain_net_srv_stake.c index 58405ee7720603a91d3c5f580eb47eed537d7ed8..eb3873d1167e739fef65d3f4432681b07da0f89d 100644 --- a/modules/service/stake/dap_chain_net_srv_stake.c +++ b/modules/service/stake/dap_chain_net_srv_stake.c @@ -827,7 +827,7 @@ static int s_cli_srv_stake(int a_argc, char **a_argv, void *a_arg_func, char **a return -13; } dap_chain_hash_fast_t l_tx_hash = {}; - dap_chain_str_to_hash_fast(l_tx_hash_str, &l_tx_hash); + dap_chain_hash_fast_from_str(l_tx_hash_str, &l_tx_hash); dap_chain_net_srv_stake_item_t *l_stake = NULL, *l_tmp; HASH_ITER(hh, s_srv_stake->itemlist, l_stake, l_tmp) { if (!memcmp(&l_stake->tx_hash, &l_tx_hash, sizeof(dap_chain_hash_fast_t))) { diff --git a/modules/service/xchange/dap_chain_net_srv_xchange.c b/modules/service/xchange/dap_chain_net_srv_xchange.c index 6336a366903b8bb6b989257ab085598fd4846351..16a3bb44a0563d9d004a5d837bd6ce65a8c49226 100644 --- a/modules/service/xchange/dap_chain_net_srv_xchange.c +++ b/modules/service/xchange/dap_chain_net_srv_xchange.c @@ -596,7 +596,7 @@ static int s_cli_srv_xchange_price(int a_argc, char **a_argv, int a_arg_index, c // Create the order & put it to GDB char *l_order_hash_str = s_xchange_order_create(l_price, l_tx); if (l_order_hash_str) { - dap_chain_str_to_hash_fast(l_order_hash_str, &l_price->order_hash); + dap_chain_hash_fast_from_str(l_order_hash_str, &l_price->order_hash); if(!s_xchange_tx_put(l_tx, l_net_buy)) { dap_chain_node_cli_set_reply_text(a_str_reply, "Can't put transaction to mempool"); dap_chain_net_srv_order_delete_by_hash_str(l_net_buy, l_order_hash_str); @@ -729,7 +729,7 @@ static int s_cli_srv_xchange_price(int a_argc, char **a_argv, int a_arg_index, c DAP_DELETE(l_order_hash_str); l_order_hash_str = s_xchange_order_create(l_price, l_tx); if (l_order_hash_str) { - dap_chain_str_to_hash_fast(l_order_hash_str, &l_price->order_hash); + dap_chain_hash_fast_from_str(l_order_hash_str, &l_price->order_hash); if(!s_xchange_tx_put(l_tx, l_net_buy)) { dap_chain_node_cli_set_reply_text(a_str_reply, "Can't put transaction to mempool"); dap_chain_net_srv_order_delete_by_hash_str(l_net_buy, l_order_hash_str); diff --git a/modules/type/dag/dap_chain_cs_dag.c b/modules/type/dag/dap_chain_cs_dag.c index 5794df044b15018f87381126fd58b0f13e05bf29..a8ec207191d02b30f45f6c2cfa872201b1df54e7 100644 --- a/modules/type/dag/dap_chain_cs_dag.c +++ b/modules/type/dag/dap_chain_cs_dag.c @@ -211,7 +211,7 @@ int dap_chain_cs_dag_new(dap_chain_t * a_chain, dap_config_t * a_chain_cfg) const char * l_static_genesis_event_hash_str = dap_config_get_item_str_default(a_chain_cfg,"dag","static_genesis_event",NULL); if ( l_static_genesis_event_hash_str ){ int lhr; - if ( (lhr= dap_chain_str_to_hash_fast(l_static_genesis_event_hash_str,&l_dag->static_genesis_event_hash) )!= 0 ){ + if ( (lhr= dap_chain_hash_fast_from_str(l_static_genesis_event_hash_str,&l_dag->static_genesis_event_hash) )!= 0 ){ log_it( L_ERROR, "Can't read hash from static_genesis_event \"%s\", ret code %d ", l_static_genesis_event_hash_str, lhr); } } @@ -219,7 +219,7 @@ int dap_chain_cs_dag_new(dap_chain_t * a_chain, dap_config_t * a_chain_cfg) char **l_hard_accept_list = dap_config_get_array_str(a_chain_cfg, "dag", "hard_accept_list", &l_list_len); for (uint16_t i = 0; i < l_list_len; i++) { dap_chain_cs_dag_hal_item_t *l_hal_item = DAP_NEW_Z(dap_chain_cs_dag_hal_item_t); - dap_chain_str_to_hash_fast(l_hard_accept_list[i], &l_hal_item->hash); + dap_chain_hash_fast_from_str(l_hard_accept_list[i], &l_hal_item->hash); HASH_ADD(hh, l_dag->hal, hash, sizeof(l_hal_item->hash), l_hal_item); }