diff --git a/dap-sdk b/dap-sdk index bf48d381f4b930e172001756269d9b58415191ea..136957afc5eaa4d7ae3b830f1d169908e2a9e696 160000 --- a/dap-sdk +++ b/dap-sdk @@ -1 +1 @@ -Subproject commit bf48d381f4b930e172001756269d9b58415191ea +Subproject commit 136957afc5eaa4d7ae3b830f1d169908e2a9e696 diff --git a/modules/chain/dap_chain_ch.c b/modules/chain/dap_chain_ch.c index 0c6111846fcfd374326fb084cd1c113e25f941a7..e7b4fb6ca157dde147b54cac34c5c6a88800db06 100644 --- a/modules/chain/dap_chain_ch.c +++ b/modules/chain/dap_chain_ch.c @@ -1067,6 +1067,8 @@ static bool s_stream_ch_packet_in(dap_stream_ch_t* a_ch, void* a_arg) } l_context->is_type_of_gdb = true; l_context->db_list = l_db_list; + l_context->remote_addr = *(dap_stream_node_addr_t *)l_chain_pkt->data; + l_context->request_hdr = l_chain_pkt->hdr; l_ch_chain->legacy_sync_context = l_context; l_context->state = DAP_CHAIN_CH_STATE_UPDATE_GLOBAL_DB; debug_if(s_debug_legacy, L_DEBUG, "Sync out gdb proc, requested %" DAP_UINT64_FORMAT_U " records from address " NODE_ADDR_FP_STR " (unverified)", diff --git a/modules/net/dap_chain_net.c b/modules/net/dap_chain_net.c index f920e66b960bcceb8ec0bc4475088ba2dd1c99f8..3f8b920d3cb905be57073241d0f90cc3d305e189 100644 --- a/modules/net/dap_chain_net.c +++ b/modules/net/dap_chain_net.c @@ -385,6 +385,7 @@ int dap_chain_net_state_go_to(dap_chain_net_t *a_net, dap_chain_net_state_t a_ne log_it(L_ERROR, "Can't create permanent link to addr " NODE_ADDR_FP_STR, NODE_ADDR_FP_ARGS_S(l_permalink_info->node_addr)); continue; } + PVT(a_net)->state = NET_STATE_LINKS_CONNECTING; } if (a_new_state == NET_STATE_ONLINE) dap_chain_esbocs_start_timer(a_net->pub.id); @@ -472,7 +473,7 @@ static void s_link_manager_callback_connected(dap_link_t *a_link, uint64_t a_net &l_announce, sizeof(l_announce)); } -static bool s_net_check_link_is_premanent(dap_chain_net_t *a_net, dap_stream_node_addr_t a_addr) +static bool s_net_check_link_is_permanent(dap_chain_net_t *a_net, dap_stream_node_addr_t a_addr) { dap_chain_net_pvt_t *l_net_pvt = PVT(a_net); for (uint16_t i = 0; i < l_net_pvt->permanent_links_count; i++) { @@ -495,7 +496,7 @@ static bool s_link_manager_callback_disconnected(dap_link_t *a_link, uint64_t a_ // func work dap_chain_net_t *l_net = dap_chain_net_by_id((dap_chain_net_id_t){.uint64 = a_net_id}); dap_chain_net_pvt_t *l_net_pvt = PVT(l_net); - bool l_link_is_permanent = s_net_check_link_is_premanent(l_net, a_link->addr); + bool l_link_is_permanent = s_net_check_link_is_permanent(l_net, a_link->addr); log_it(L_INFO, "%s."NODE_ADDR_FP_STR" can't connect for now. %s", l_net ? l_net->pub.name : "(unknown)" , NODE_ADDR_FP_ARGS_S(a_link->addr), l_link_is_permanent ? "Setting reconnection pause for it." : "Dropping it.");