diff --git a/modules/net/dap_chain_node.c b/modules/net/dap_chain_node.c index d530ede2b7aee567857a50e890a89168210073f2..11de1143ce2d11204b197d52f6e5ec0b1a81584a 100644 --- a/modules/net/dap_chain_node.c +++ b/modules/net/dap_chain_node.c @@ -88,7 +88,7 @@ static void s_update_node_states_info(UNUSED_ARG void *a_arg) dap_chain_t *l_chain = dap_chain_find_by_id(l_net->pub.id, (dap_chain_id_t){ .uint64 = 0 }); // zerochain l_info->events_count = (l_chain && l_chain->callback_count_atom) ? l_chain->callback_count_atom(l_chain) : 0; - l_chain =dap_chain_find_by_id(l_net->pub.id, (dap_chain_id_t){ .uint64 = 1 }); // mainchain + l_chain = dap_chain_find_by_id(l_net->pub.id, (dap_chain_id_t){ .uint64 = 1 }); // mainchain l_info->atoms_count = (l_chain && l_chain->callback_count_atom) ? l_chain->callback_count_atom(l_chain) : 0; memcpy(l_info->links_addrs, l_linked_node_addrs, (l_info->uplinks_count + l_info->downlinks_count) * sizeof(dap_chain_node_addr_t)); @@ -111,8 +111,8 @@ static void s_states_info_to_str(dap_chain_net_t *a_net, const char *a_node_addr char *l_gdb_group = dap_strdup_printf("%s%s", a_net->pub.gdb_groups_prefix, s_states_group); dap_chain_node_net_states_info_t *l_store_obj = (dap_chain_node_net_states_info_t *)dap_global_db_get_sync(l_gdb_group, a_node_addr_str, &l_data_size, NULL, &l_timestamp); if (!l_store_obj || l_data_size != sizeof(dap_chain_node_net_states_info_t) + (l_store_obj->uplinks_count + l_store_obj->downlinks_count) * sizeof(dap_chain_node_addr_t)) { - log_it(L_ERROR, "Can't find state about %s node", a_node_addr_str); - DAP_DELETE(l_gdb_group); + log_it(L_NOTICE, "Can't find state about %s node", a_node_addr_str); + DAP_DEL_Z(l_gdb_group); return; } char l_ts[80] = { '\0' }; diff --git a/modules/net/dap_chain_node_cli.c b/modules/net/dap_chain_node_cli.c index 95620a0b29061ed7bdfdb3839f3a806ae19f4baa..fe16da5bdec8534db5f18627a8258955c6364945 100644 --- a/modules/net/dap_chain_node_cli.c +++ b/modules/net/dap_chain_node_cli.c @@ -218,9 +218,9 @@ int dap_chain_node_cli_init(dap_config_t * g_config) "\n" ); - dap_cli_server_cmd_add("token_update_sign", com_token_decl_sign, "Token update add sign and new sign", - "token_update_sign -net <net_name> [-chain <chain_name>] -datum <datum_hash> -certs <certs list> -new_certs <certs list>\n" - "\t Sign existent <datum hash> in mempool with <certs list>\n" + dap_cli_server_cmd_add("token_update_sign", com_token_decl_sign, "Token update add sign to datum", + "token_update_sign -net <net_name> [-chain <chain_name>] -datum <datum_hash> -certs <cert_list>\n" + "\t Sign existent <datum hash> in mempool with <certs_list>\n" ); // Token commands diff --git a/modules/net/dap_chain_node_cli_cmd.c b/modules/net/dap_chain_node_cli_cmd.c index ecd031bae9adcb64b94fa534ac6f296437413b84..8c41bf81d19aea7f53c1d87f13daf154b5e894d2 100644 --- a/modules/net/dap_chain_node_cli_cmd.c +++ b/modules/net/dap_chain_node_cli_cmd.c @@ -2619,9 +2619,15 @@ int com_token_decl_sign(int a_argc, char **a_argv, void **a_str_reply) size_t l_data_size = l_tsd_size + l_signs_size; l_datum_token = s_sign_cert_in_cycle(l_certs, l_datum_token, l_certs_count, &l_data_size, &l_sign_counter); + log_it(L_DEBUG, "Apply %zu signs to datum %s", l_sign_counter, l_datum_hash_hex_str); + if (!l_sign_counter) { + dap_cli_server_cmd_set_reply_text(a_str_reply, "Error! Used certs not valid"); + DAP_DEL_MULTY(l_datum_token, l_datum_hash_hex_str, l_datum_hash_base58_str, l_gdb_group_mempool); + return -9; + } l_datum_token->signs_total += l_sign_counter; size_t l_token_size = sizeof(*l_datum_token) + l_data_size; - dap_chain_datum_t * l_datum = dap_chain_datum_create(DAP_CHAIN_DATUM_TOKEN, + l_datum = dap_chain_datum_create(DAP_CHAIN_DATUM_TOKEN, l_datum_token, l_token_size); DAP_DELETE(l_datum_token); // Calc datum's hash @@ -2638,8 +2644,8 @@ int com_token_decl_sign(int a_argc, char **a_argv, void **a_str_reply) char* l_hash_str = l_datum_hash_hex_str; // Remove old datum from pool if( dap_global_db_del_sync(l_gdb_group_mempool, l_hash_str ) == 0) { - dap_cli_server_cmd_set_reply_text(a_str_reply, "Datum %s is replacing the %s in datum pool", - l_key_out_str, l_datum_hash_out_str); + dap_cli_server_cmd_set_reply_text(a_str_reply, "Datum was replaced in datum pool:\n\tOld: %s\n\tNew: %s", + l_datum_hash_out_str, l_key_out_str); } else { dap_cli_server_cmd_set_reply_text(a_str_reply, "Warning! Can't remove old datum %s ( new datum %s added normaly in datum pool)", @@ -2652,11 +2658,7 @@ int com_token_decl_sign(int a_argc, char **a_argv, void **a_str_reply) l_key_out_str, l_datum_hash_out_str); rc = -2; } - DAP_DELETE(l_key_str); - DAP_DELETE(l_datum_hash_hex_str); - DAP_DELETE(l_datum_hash_base58_str); - DAP_DELETE(l_datum); - DAP_DELETE(l_gdb_group_mempool); + DAP_DEL_MULTY(l_key_str, l_datum_hash_hex_str, l_datum_hash_base58_str, l_datum, l_gdb_group_mempool); return rc; } else { dap_cli_server_cmd_set_reply_text(a_str_reply, @@ -2669,8 +2671,7 @@ int com_token_decl_sign(int a_argc, char **a_argv, void **a_str_reply) l_chain?l_chain->name:"<undefined>"); return -5; } - DAP_DELETE(l_datum_hash_hex_str); - DAP_DELETE(l_datum_hash_base58_str); + DAP_DEL_MULTY(l_datum_hash_hex_str, l_datum_hash_base58_str); } else { dap_cli_server_cmd_set_reply_text(a_str_reply, "token_decl_sign need -datum <datum hash> argument"); return -2;