From c3f2ab5f68f006f271837935838afc6fe0237949 Mon Sep 17 00:00:00 2001 From: Aleksandr Lysikov <lysikov@inbox.ru> Date: Fri, 29 Mar 2019 20:56:57 +0500 Subject: [PATCH] replaced Glib functions to dap_xxx() --- dap_chain_node_cli.c | 40 ++++++------ dap_chain_node_cli_cmd.c | 128 ++++++++++++++++++++++++--------------- dap_chain_node_client.c | 69 +++++++++++++-------- dap_chain_node_client.h | 2 +- iputils/iputils.c | 10 +-- iputils/ping.c | 8 ++- 6 files changed, 156 insertions(+), 101 deletions(-) diff --git a/dap_chain_node_cli.c b/dap_chain_node_cli.c index 4efe82a53b..85d556f390 100644 --- a/dap_chain_node_cli.c +++ b/dap_chain_node_cli.c @@ -23,7 +23,7 @@ #include <stdio.h> #include <string.h> #include <errno.h> -#include <glib.h> +//#include <glib.h> #ifndef _WIN32 #include <poll.h> @@ -48,6 +48,8 @@ typedef int SOCKET; #include "iputils/iputils.h" #include "dap_common.h" +#include "dap_strfuncs.h" +#include "dap_list.h" #include "dap_chain_node_cli_cmd.h" #include "dap_chain_node_client.h" #include "dap_chain_node_cli.h" @@ -265,7 +267,7 @@ static void* thread_one_client_func(void *args) int timeout = 5000; // 5 sec char **argv = NULL; int argc = 0; - GList *cmd_param_list = NULL; + dap_list_t *cmd_param_list = NULL; while(1) { // wait data from client @@ -294,57 +296,57 @@ static void* thread_one_client_func(void *args) } // filling parameters of command if(marker == 1) { - cmd_param_list = g_list_append(cmd_param_list, str_header); + cmd_param_list = dap_list_append(cmd_param_list, str_header); //printf("g_list_append argc=%d command=%s ", argc, str_header); argc++; } else free(str_header); if(marker == 2) { - GList *list = cmd_param_list; + dap_list_t *list = cmd_param_list; // form command - guint argc = g_list_length(list); + unsigned int argc = dap_list_length(list); // command is found if(argc >= 1) { char *cmd_name = list->data; - list = g_list_next(list); + list = dap_list_next(list); // execute command - char *str_cmd = g_strdup_printf("%s", cmd_name); + char *str_cmd = dap_strdup_printf("%s", cmd_name); const COMMAND *command = find_command(cmd_name); int res = -1; char *str_reply = NULL; if(command) { while(list) { - str_cmd = g_strdup_printf("%s;%s", str_cmd, list->data); - list = g_list_next(list); + str_cmd = dap_strdup_printf("%s;%s", str_cmd, list->data); + list = dap_list_next(list); } log_it(L_INFO, "execute command=%s", str_cmd); // exec command - char **argv = g_strsplit(str_cmd, ";", -1); + char **argv = dap_strsplit(str_cmd, ";", -1); // Call the command function if(command && command->func) res = (*(command->func))(argc, (const char **) argv, &str_reply); - g_strfreev(argv); + dap_strfreev(argv); } else { - str_reply = g_strdup_printf("can't recognize command=%s", str_cmd); + str_reply = dap_strdup_printf("can't recognize command=%s", str_cmd); log_it(L_ERROR, str_reply); } - gchar *reply_body = g_strdup_printf("%d\r\n%s\r\n", res, (str_reply) ? str_reply : ""); + char *reply_body = dap_strdup_printf("%d\r\n%s\r\n", res, (str_reply) ? str_reply : ""); // return the result of the command function - gchar *reply_str = g_strdup_printf("HTTP/1.1 200 OK\r\nContent-Length: %d\r\n\r\n%s", + char *reply_str = dap_strdup_printf("HTTP/1.1 200 OK\r\nContent-Length: %d\r\n\r\n%s", strlen(reply_body), reply_body); int ret = send(newsockfd, reply_str, strlen(reply_str), 1000); - g_free(str_reply); - g_free(reply_str); - g_free(reply_body); + DAP_DELETE(str_reply); + DAP_DELETE(reply_str); + DAP_DELETE(reply_body); - g_free(str_cmd); + DAP_DELETE(str_cmd); } - g_list_free_full(cmd_param_list, free); + dap_list_free_full(cmd_param_list, free); break; } } diff --git a/dap_chain_node_cli_cmd.c b/dap_chain_node_cli_cmd.c index 2ddfdd6d2e..a0b82ecd57 100644 --- a/dap_chain_node_cli_cmd.c +++ b/dap_chain_node_cli_cmd.c @@ -34,6 +34,9 @@ //#include "dap_common.h" #include "dap_hash.h" #include "dap_chain_common.h" +#include "dap_strfuncs.h" +#include "dap_list.h" +#include "dap_string.h" #include "dap_chain_wallet.h" #include "dap_chain_node.h" #include "dap_chain_global_db.h" @@ -45,13 +48,10 @@ #include "dap_chain_datum_tx_ctrl.h" #include "dap_chain_datum_tx_items.h" #include "dap_chain_datum_tx_cache.h" +#include "dap_chain_global_db.h" #include "dap_stream_ch_chain_net.h" -// Max and min macros -#define max(a,b) ((a) > (b) ? (a) : (b)) -#define min(a,b) ((a) < (b) ? (a) : (b)) - #define LOG_TAG "chain_node_cli_cmd" /** @@ -158,14 +158,14 @@ dap_chain_node_addr_t* get_name_by_alias(const char *alias) * * return list of addr, NULL if not found */ -static GList* get_aliases_by_name(dap_chain_node_addr_t *addr) +static dap_list_t* get_aliases_by_name(dap_chain_node_addr_t *addr) { if(!addr) return NULL; - GList *list_aliases = NULL; + dap_list_t *list_aliases = NULL; size_t data_size = 0; // read all aliases - dap_global_db_obj_t **objs = dap_chain_global_db_gr_load(&data_size, GROUP_ALIAS); + dap_global_db_obj_t **objs = dap_chain_global_db_gr_load(GROUP_ALIAS, &data_size); if(!objs || !data_size) return NULL; for(int i = 0; i < data_size; i++) { @@ -180,7 +180,7 @@ static GList* get_aliases_by_name(dap_chain_node_addr_t *addr) continue; } if(addr->uint64 == addr_i.uint64) { - list_aliases = g_list_prepend(list_aliases, strdup(obj->key)); + list_aliases = dap_list_prepend(list_aliases, strdup(obj->key)); } } } @@ -216,12 +216,12 @@ static void set_reply_text(char **str_reply, const char *str, ...) if(str_reply) { if(*str_reply) { assert(!*str_reply); - g_free(*str_reply); + DAP_DELETE(*str_reply); *str_reply = NULL; } va_list args; va_start(args, str); - *str_reply = g_strdup_vprintf(str, args); //*str_reply = g_strdup(str); + *str_reply = dap_strdup_vprintf(str, args); //*str_reply = dap_strdup(str); va_end(args); } } @@ -355,15 +355,15 @@ static int com_global_db_del(dap_chain_node_info_t *node_info, const char *alias if(res) { // delete all aliases for node address { - GList *list_aliases = get_aliases_by_name(address); - GList *list = list_aliases; + dap_list_t *list_aliases = get_aliases_by_name(address); + dap_list_t *list = list_aliases; while(list) { const char *alias = (const char *) list->data; del_alias(alias); - list = g_list_next(list); + list = dap_list_next(list); } - g_list_free_full(list_aliases, (GDestroyNotify) free); + dap_list_free_full(list_aliases, (DapDestroyNotify) free); } // set text response set_reply_text(str_reply, "node deleted"); @@ -522,27 +522,27 @@ static int com_global_db_dump(dap_chain_node_info_t *node_info, const char *alia const char* str_ip6 = inet_ntop(AF_INET6, &(((struct sockaddr_in6 *) &sa6)->sin6_addr), host6, hostlen); // get aliases in form of string - GString *aliases_string = g_string_new(NULL); - GList *list_aliases = get_aliases_by_name(address); + dap_string_t *aliases_string = dap_string_new(NULL); + dap_list_t *list_aliases = get_aliases_by_name(address); if(list_aliases) { - GList *list = list_aliases; + dap_list_t *list = list_aliases; while(list) { const char *alias = (const char *) list->data; - g_string_append_printf(aliases_string, "\nalias %s", alias); - list = g_list_next(list); + dap_string_append_printf(aliases_string, "\nalias %s", alias); + list = dap_list_next(list); } - g_list_free_full(list_aliases, (GDestroyNotify) free); + dap_list_free_full(list_aliases, (DapDestroyNotify) free); } else - g_string_append(aliases_string, "\nno aliases"); + dap_string_append(aliases_string, "\nno aliases"); // get links in form of string - GString *links_string = g_string_new(NULL); + dap_string_t *links_string = dap_string_new(NULL); for(int i = 0; i < node_info_read->hdr.links_number; i++) { dap_chain_node_addr_t link_addr = node_info_read->links[i]; - g_string_append_printf(links_string, "\nlink%02d address : 0x%llx", i, link_addr.uint64); + dap_string_append_printf(links_string, "\nlink%02d address : 0x%llx", i, link_addr.uint64); } // set full reply with node param @@ -550,8 +550,8 @@ static int com_global_db_dump(dap_chain_node_info_t *node_info, const char *alia node_info_read->hdr.address, node_info_read->hdr.shard_id, aliases_string->str, str_ip4, str_ip6, node_info_read->hdr.links_number, links_string->str); - g_string_free(aliases_string, TRUE); - g_string_free(links_string, TRUE); + dap_string_free(aliases_string, true); + dap_string_free(links_string, true); DAP_DELETE(address); DAP_DELETE(node_info_read); @@ -741,13 +741,33 @@ int com_node(int argc, const char ** argv, char **str_reply) set_reply_text(str_reply, "addr not found"); return -1; } - + // debug + if(0) + { +#include "dap_chain_global_db.h" + size_t l_data_size_out = 0; + dap_global_db_obj_t a_objs[2]; + a_objs[0].key = "k1"; + a_objs[1].key = "k2"; + a_objs[0].value = "v1"; + a_objs[1].value = "v2"; + dap_chain_global_db_save(a_objs, 2); //dap_chain_global_db_save + char *l_diff = dap_db_log_get_diff(NULL); + DAP_DELETE(l_diff); + dap_global_db_obj_t **db1 = dap_chain_global_db_gr_load(GROUP_DATUM, &l_data_size_out); + printf("GROUP_DATUM size = %d\n", l_data_size_out); + dap_global_db_obj_t **db2 = dap_chain_global_db_gr_load(GROUP_ALIAS, &l_data_size_out); + printf("GROUP_ALIAS size = %d\n", l_data_size_out); + dap_global_db_obj_t **db3 = dap_chain_global_db_gr_load(GROUP_NODE, &l_data_size_out); + printf("GROUP_NODE size = %d\n", l_data_size_out); + set_reply_text(str_reply, "debug ok"); + return 0; + } dap_chain_node_info_t *node_info = dap_chain_node_info_read(&address, str_reply); if(!node_info) { set_reply_text(str_reply, "node by addr not found"); return -1; } - int timeout_ms = 1000000; //10 sec = 10000 ms // start connect dap_chain_node_client_t *client = dap_chain_node_client_connect(node_info); if(!client) { @@ -756,6 +776,7 @@ int com_node(int argc, const char ** argv, char **str_reply) return -1; } // wait connected + int timeout_ms = 150000; //15 sec = 15000 ms int res = chain_node_client_wait(client, NODE_CLIENT_STATE_CONNECTED, timeout_ms); if(res != 1) { set_reply_text(str_reply, "no response from node"); @@ -766,8 +787,17 @@ int com_node(int argc, const char ** argv, char **str_reply) } // send request + size_t l_data_size_out = 0; + // Get last timestamp in log + char *l_str = dap_db_log_get_last_timestamp(); + // Get log diff + //char *l_str = dap_db_log_get_diff(&l_data_size_out); + //dap_global_db_obj_t **l_hist_objs = dap_chain_global_db_load(l_data_size_out); + //size_t *a_data_size_out(l_hist_objs); + uint8_t l_ch_id = dap_stream_ch_chain_net_get_id(); // Channel id for global_db sync - res = dap_chain_node_client_send_chain_request(client, l_ch_id, "start", 5); //, NULL); + res = dap_chain_node_client_send_chain_net_request(client, l_ch_id, + STREAM_CH_CHAIN_NET_PKT_TYPE_GLOBAL_DB_REQUEST_SYNC, l_str, (l_str) ? strlen(l_str) : 0); //, NULL); if(res != 1) { set_reply_text(str_reply, "no response from node(send request)"); // clean client struct @@ -777,7 +807,9 @@ int com_node(int argc, const char ** argv, char **str_reply) } // wait for finishing of request - res = chain_node_client_wait(client, NODE_CLIENT_STATE_PONG, timeout_ms); + timeout_ms = 120000; // 2 min = 120 sec = 120 000 ms + // TODO add progress info to console + res = chain_node_client_wait(client, NODE_CLIENT_STATE_END, timeout_ms); DAP_DELETE(node_info); dap_client_disconnect(client->client); dap_chain_node_client_close(client); @@ -1096,7 +1128,7 @@ int com_tx_wallet(int argc, const char ** argv, char **str_reply) find_option_val(argv, arg_index, argc, "-addr", &addr_str); find_option_val(argv, arg_index, argc, "-w", &wallet_name); - GString *l_string_ret = g_string_new(NULL); + dap_string_t *l_string_ret = dap_string_new(NULL); switch (cmd_num) { // wallet list case CMD_WALLET_LIST: { @@ -1107,17 +1139,17 @@ int com_tx_wallet(int argc, const char ** argv, char **str_reply) l_file = g_dir_read_name(l_dir); int l_file_len = (l_file) ? strlen(l_file) : 0; if(l_file_len > 8 && !g_strcmp0(l_file + l_file_len - 8, ".dwallet")) { - char *l_file_path_tmp = g_strdup_printf("%s/%s", c_wallets_path, l_file); + char *l_file_path_tmp = dap_strdup_printf("%s/%s", c_wallets_path, l_file); dap_chain_wallet_t *l_wallet = dap_chain_wallet_open_file(l_file_path_tmp); if(l_wallet) { dap_chain_addr_t *l_addr = (dap_chain_addr_t *) dap_chain_wallet_get_addr(l_wallet); char *l_addr_str = dap_chain_addr_to_str((dap_chain_addr_t*) l_addr); - g_string_append_printf(l_string_ret, "\nwallet: %s\n", l_wallet->name); - g_string_append_printf(l_string_ret, "addr: %s\n", (l_addr_str) ? l_addr_str : "-"); + dap_string_append_printf(l_string_ret, "\nwallet: %s\n", l_wallet->name); + dap_string_append_printf(l_string_ret, "addr: %s\n", (l_addr_str) ? l_addr_str : "-"); DAP_DELETE(l_addr_str); dap_chain_wallet_close(l_wallet); } - g_free(l_file_path_tmp); + DAP_DELETE(l_file_path_tmp); } } while(l_file); @@ -1135,14 +1167,14 @@ int com_tx_wallet(int argc, const char ** argv, char **str_reply) dap_chain_addr_t *l_addr = (dap_chain_addr_t *) dap_chain_wallet_get_addr(l_wallet); char *l_addr_str = dap_chain_addr_to_str((dap_chain_addr_t*) l_addr); uint64_t balance = dap_chain_datum_tx_cache_calc_balance(l_addr); - g_string_append_printf(l_string_ret, "\nwallet: %s\n", l_wallet->name); - g_string_append_printf(l_string_ret, "addr: %s\n", (l_addr_str) ? l_addr_str : "-"); - g_string_append_printf(l_string_ret, "balance: %lld\n", balance); + dap_string_append_printf(l_string_ret, "\nwallet: %s\n", l_wallet->name); + dap_string_append_printf(l_string_ret, "addr: %s\n", (l_addr_str) ? l_addr_str : "-"); + dap_string_append_printf(l_string_ret, "balance: %lld\n", balance); DAP_DELETE(l_addr_str); dap_chain_wallet_close(l_wallet); } else { - g_string_free(l_string_ret, TRUE); + dap_string_free(l_string_ret, true); set_reply_text(str_reply, "wallet not found"); return -1; } @@ -1150,10 +1182,10 @@ int com_tx_wallet(int argc, const char ** argv, char **str_reply) break; } - char *l_str_ret_tmp = g_string_free(l_string_ret, FALSE); - char *str_ret = strdup(l_str_ret_tmp); + char *l_str_ret_tmp = dap_string_free(l_string_ret, false); + char *str_ret = dap_strdup(l_str_ret_tmp); set_reply_text(str_reply, str_ret); - g_free(l_str_ret_tmp); + DAP_DELETE(l_str_ret_tmp); return 0; } @@ -1286,34 +1318,34 @@ int com_tx_create(int argc, const char ** argv, char **str_reply) dap_chain_node_datum_tx_cache_init(l_key, l_token_name, (dap_chain_addr_t*) l_addr, 1000); l_first_start = false; } - GString *string_ret = g_string_new(NULL); + dap_string_t *string_ret = dap_string_new(NULL); //g_string_printf(string_ret, "from=%s\nto=%s\nval=%lld\nfee=%s\nval_fee=%lld\n\n", // addr_base58_from, addr_base58_to, value, addr_base58_fee, value_fee); uint64_t balance2 = dap_chain_datum_tx_cache_calc_balance(addr_to); uint64_t balance3 = dap_chain_datum_tx_cache_calc_balance(addr_fee); uint64_t balance1 = dap_chain_datum_tx_cache_calc_balance(addr_from); - g_string_append_printf(string_ret, "transactions in cache=%d balance w_from=%lld w_to=%lld w_feee=%lld\n", + dap_string_append_printf(string_ret, "transactions in cache=%d balance w_from=%lld w_to=%lld w_feee=%lld\n", dap_chain_node_datum_tx_cache_count(), balance1, balance2, balance3); int res = dap_chain_datum_tx_ctrl_create_transfer(l_key, addr_from, addr_to, addr_fee, value, value_fee); - g_string_append_printf(string_ret, "transfer=%s\n", (res == 1) ? "Ok" : "False"); + dap_string_append_printf(string_ret, "transfer=%s\n", (res == 1) ? "Ok" : "False"); if(1) { uint64_t balance1 = dap_chain_datum_tx_cache_calc_balance(addr_from); uint64_t balance2 = dap_chain_datum_tx_cache_calc_balance(addr_to); uint64_t balance3 = dap_chain_datum_tx_cache_calc_balance(addr_fee); - g_string_append_printf(string_ret, "transactions in cache=%d balance w_from=%lld w_to=%lld w_feee=%lld\n", + dap_string_append_printf(string_ret, "transactions in cache=%d balance w_from=%lld w_to=%lld w_feee=%lld\n", dap_chain_node_datum_tx_cache_count(), balance1, balance2, balance3); } - char *str_ret_tmp = g_string_free(string_ret, FALSE); + char *str_ret_tmp = dap_string_free(string_ret, false); char *str_ret = strdup(str_ret_tmp); set_reply_text(str_reply, str_ret); - g_free(str_ret_tmp); + DAP_DELETE(str_ret_tmp); DAP_DELETE(addr_to); DAP_DELETE(addr_fee); dap_chain_wallet_close(wallet_bliss); @@ -1515,7 +1547,7 @@ int com_tx_verify(int argc, const char ** argv, char **str_reply) if(cmd) { if(str_reply) - *str_reply = g_strdup(cmd->doc); + *str_reply = dap_strdup(cmd->doc); return 1; } if(str_reply) diff --git a/dap_chain_node_client.c b/dap_chain_node_client.c index e7ef53cfc9..9d57141bff 100644 --- a/dap_chain_node_client.c +++ b/dap_chain_node_client.c @@ -159,26 +159,26 @@ void dap_chain_node_client_close(dap_chain_node_client_t *a_client) } /* -// callback for dap_client_request_enc() in client_mempool_send_datum() -static void s_response_proc(dap_client_t *a_client, void *str, size_t str_len) -{ - printf("* s_response_proc a_client=%x str=%s str_len=%d\n", a_client, str, str_len); - dap_chain_node_client_t *l_client = a_client->_inheritor; - assert(l_client); - if(l_client) { - if(str_len > 0) { -// l_client->read_data_t.data = DAP_NEW_Z_SIZE(uint8_t, str_len + 1); -// if(l_client->read_data_t.data) { -// memcpy(l_client->read_data_t.data, str, str_len); -// l_client->read_data_t.data_len = str_len; - } - } - pthread_mutex_lock(&l_client->wait_mutex); - l_client->state = NODE_CLIENT_STATE_SENDED; - pthread_cond_signal(&l_client->wait_cond); - pthread_mutex_unlock(&l_client->wait_mutex); -} -*/ + // callback for dap_client_request_enc() in client_mempool_send_datum() + static void s_response_proc(dap_client_t *a_client, void *str, size_t str_len) + { + printf("* s_response_proc a_client=%x str=%s str_len=%d\n", a_client, str, str_len); + dap_chain_node_client_t *l_client = a_client->_inheritor; + assert(l_client); + if(l_client) { + if(str_len > 0) { + // l_client->read_data_t.data = DAP_NEW_Z_SIZE(uint8_t, str_len + 1); + // if(l_client->read_data_t.data) { + // memcpy(l_client->read_data_t.data, str, str_len); + // l_client->read_data_t.data_len = str_len; + } + } + pthread_mutex_lock(&l_client->wait_mutex); + l_client->state = NODE_CLIENT_STATE_SENDED; + pthread_cond_signal(&l_client->wait_cond); + pthread_mutex_unlock(&l_client->wait_mutex); + } + */ /*// callback for dap_client_request_enc() in client_mempool_send_datum() static void s_response_error(dap_client_t *a_client, int val) @@ -209,11 +209,28 @@ static void s_response_proc(dap_client_t *a_client, void *str, size_t str_len) static void dap_chain_node_client_callback(dap_stream_ch_chain_net_pkt_t *a_ch_chain_net, void *a_arg) { - dap_chain_node_client_t *client = (dap_chain_node_client_t*)a_arg; + dap_chain_node_client_t *client = (dap_chain_node_client_t*) a_arg; assert(client); - if(a_ch_chain_net->hdr.type==STREAM_CH_CHAIN_NET_PKT_TYPE_PONG) { + int l_state; + switch (a_ch_chain_net->hdr.type) { + case STREAM_CH_CHAIN_NET_PKT_TYPE_PING: + l_state = NODE_CLIENT_STATE_PING; + break; + case STREAM_CH_CHAIN_NET_PKT_TYPE_PONG: + l_state = NODE_CLIENT_STATE_PONG; + break; + case STREAM_CH_CHAIN_NET_PKT_TYPE_GLOVAL_DB: + l_state = NODE_CLIENT_STATE_END; + break; + + default: + l_state = NODE_CLIENT_STATE_ERROR; + + } + if(client) + { pthread_mutex_lock(&client->wait_mutex); - client->state = NODE_CLIENT_STATE_PONG; + client->state = l_state; pthread_cond_signal(&client->wait_cond); pthread_mutex_unlock(&client->wait_mutex); } @@ -222,7 +239,7 @@ static void dap_chain_node_client_callback(dap_stream_ch_chain_net_pkt_t *a_ch_c /** * Send stream request to server */ -int dap_chain_node_client_send_chain_request(dap_chain_node_client_t *a_client, uint8_t a_ch_id, +int dap_chain_node_client_send_chain_net_request(dap_chain_node_client_t *a_client, uint8_t a_ch_id, uint8_t a_type, char *a_buf, size_t a_buf_size) { if(!a_client || a_client->state < NODE_CLIENT_STATE_CONNECTED) @@ -234,8 +251,8 @@ int dap_chain_node_client_send_chain_request(dap_chain_node_client_t *a_client, dap_stream_ch_chain_net_t * l_ch_chain = DAP_STREAM_CH_CHAIN_NET(l_ch); l_ch_chain->notify_callback = dap_chain_node_client_callback; l_ch_chain->notify_callback_arg = a_client; - int l_res = dap_stream_ch_chain_net_pkt_write(l_ch, STREAM_CH_CHAIN_NET_PKT_TYPE_PING, a_buf, a_buf_size); - if(l_res <=0) + int l_res = dap_stream_ch_chain_net_pkt_write(l_ch, a_type, a_buf, a_buf_size); + if(l_res <= 0) return -1; bool is_ready = true; dap_events_socket_set_writable(l_ch->stream->events_socket, is_ready); diff --git a/dap_chain_node_client.h b/dap_chain_node_client.h index 5f2a0e88cf..c9b07cb4fa 100644 --- a/dap_chain_node_client.h +++ b/dap_chain_node_client.h @@ -77,7 +77,7 @@ void dap_chain_node_client_close(dap_chain_node_client_t *client); /** * Send stream request to server */ -int dap_chain_node_client_send_chain_request(dap_chain_node_client_t *a_client, uint8_t a_ch_id, +int dap_chain_node_client_send_chain_net_request(dap_chain_node_client_t *a_client, uint8_t a_ch_id, uint8_t a_type, char *a_buf, size_t a_buf_size); /** diff --git a/iputils/iputils.c b/iputils/iputils.c index 0e16de9e96..07184747f1 100644 --- a/iputils/iputils.c +++ b/iputils/iputils.c @@ -4,7 +4,9 @@ #include <stdio.h> #include <stdbool.h> -#include <glib.h> +//#include <glib.h> +#include "dap_common.h" +#include "dap_strfuncs.h" static bool LOG_VERBOSE = false; @@ -30,18 +32,18 @@ int log_printf(const char *format, ...) int ret = 0; if(LOG_VERBOSE) { - gchar *log_str = NULL; + char *log_str = NULL; va_list args; va_start(args, format); - log_str = g_strdup_vprintf(format, args); + log_str = dap_strdup_vprintf(format, args); va_end(args); if(log_str) { ret = printf(log_str); - g_free(log_str); + DAP_DELETE(log_str); } } return ret; diff --git a/iputils/ping.c b/iputils/ping.c index 491a5e4d7f..98a62dc4df 100644 --- a/iputils/ping.c +++ b/iputils/ping.c @@ -56,7 +56,9 @@ #include <netinet/ip_icmp.h> #include <ifaddrs.h> #include <math.h> -#include <glib.h> +//#include <glib.h> +#include "dap_common.h" +#include "dap_strfuncs.h" #ifndef ICMP_FILTER #define ICMP_FILTER 1 @@ -547,10 +549,10 @@ int ping_util_common(int type, const char *addr, int count) argv[0] = "ping6"; else argv[0] = "ping4"; - argv[1] = g_strdup_printf("-c%d", count); + argv[1] = dap_strdup_printf("-c%d", count); argv[2] = addr; int status = ping_main(argc, (char**) argv); - g_free((char*) argv[1]); + DAP_DELETE((char*) argv[1]); if(ntransmitted >= 1 && nreceived >= 1) return tsum; return status; -- GitLab