diff --git a/dap_chain_net.c b/dap_chain_net.c index 192769919ce6fa3e2554d63e4ec41edc047c38f3..53e70c755043b45ff65c1b0113620a465490c49b 100644 --- a/dap_chain_net.c +++ b/dap_chain_net.c @@ -1236,14 +1236,22 @@ int s_net_load(const char * a_net_name) l_node_addr = dap_chain_node_alias_find(l_net, l_node_alias_str); else{ l_node_addr = DAP_NEW_Z(dap_chain_node_addr_t); - if ( sscanf(l_node_addr_str, "0x%016llx",&l_node_addr->uint64 ) != 1 ){ - sscanf(l_node_addr_str,"0x%016llX",&l_node_addr->uint64); + bool parse_succesfully = false; + if ( sscanf(l_node_addr_str, "0x%016llx",&l_node_addr->uint64 ) == 1 ){ + log_it(L_DEBUG, "Parse node address with format 0x%016llx"); + parse_succesfully = true; } - if( l_node_addr->uint64 == 0 ){ + if ( !parse_succesfully && dap_chain_node_addr_from_str(l_node_addr, l_node_addr_str) == 0) { + log_it(L_DEBUG, "Parse node address with format " NODE_ADDR_FP_STR); + parse_succesfully = true; + } + + if (!parse_succesfully){ log_it(L_ERROR,"Can't parse node address"); DAP_DELETE(l_node_addr); l_node_addr = NULL; } + log_it(L_NOTICE, "Parse node addr %s successfully", l_node_addr_str); PVT(l_net)->node_addr = l_node_addr; //} }