From b32f838c8f90786bfdbbdcde5c9910cd43626d66 Mon Sep 17 00:00:00 2001 From: "daniil.frolov" <daniil.frolov@demlabs.net> Date: Fri, 14 Mar 2025 15:31:47 +0300 Subject: [PATCH] .. --- .../chain-net-srv/dap_stream_ch_chain_net_srv.c | 12 ++++++------ modules/service/vpn/dap_chain_net_srv_vpn.c | 3 ++- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/modules/channel/chain-net-srv/dap_stream_ch_chain_net_srv.c b/modules/channel/chain-net-srv/dap_stream_ch_chain_net_srv.c index 745831b8c0..5891cd6d5d 100644 --- a/modules/channel/chain-net-srv/dap_stream_ch_chain_net_srv.c +++ b/modules/channel/chain-net-srv/dap_stream_ch_chain_net_srv.c @@ -229,7 +229,7 @@ static dap_time_t s_check_client_is_banned(dap_chain_net_srv_usage_t *a_usage) return 0; } - if(*(dap_time_t*)l_ret < dap_time_now()){ + if(*(dap_time_t*)l_ret > dap_time_now()){ DAP_DELETE(l_ban_group); return *(dap_time_t*)l_ret; } @@ -241,7 +241,7 @@ static dap_time_t s_check_client_is_banned(dap_chain_net_srv_usage_t *a_usage) static void s_ban_client(dap_chain_net_srv_usage_t *a_usage) { - dap_time_t l_end_of_ban_timestamp = dap_time_now() + (a_usage->service->grace_period * 10); // ban client for 10x grace periods + dap_time_t l_end_of_ban_timestamp = dap_time_now() + (a_usage->service->grace_period * 50); // ban client for 10x grace periods char l_tmp_buf[DAP_TIME_STR_SIZE]; dap_time_to_str_rfc822(l_tmp_buf, DAP_TIME_STR_SIZE, l_end_of_ban_timestamp); log_it(L_DEBUG, "Add client %s to ban list till %s.", dap_hash_fast_to_str_static(&a_usage->client_pkey_hash), l_tmp_buf); @@ -540,8 +540,9 @@ static bool s_service_start(dap_stream_ch_t *a_ch , dap_stream_ch_chain_net_srv_ // Check tx if (!l_tx){ // Start grace - dap_time_t l_end_of_ban = 0; - if ((l_end_of_ban = s_check_client_is_banned(l_usage))) { // client banned + dap_time_t l_end_of_ban = s_check_client_is_banned(l_usage); + + if (l_end_of_ban != 0) { // client banned char l_tmp_buf[DAP_TIME_STR_SIZE]; dap_time_to_str_rfc822(l_tmp_buf, DAP_TIME_STR_SIZE, l_end_of_ban); log_it(L_DEBUG, "Client %s is banned till %s!", dap_chain_hash_fast_to_str_static(&l_usage->client_pkey_hash), l_tmp_buf); @@ -1269,8 +1270,7 @@ static void s_service_state_go_to_error(dap_chain_net_srv_usage_t *a_usage) if (a_usage && a_usage->service_state == DAP_CHAIN_NET_SRV_USAGE_SERVICE_STATE_GRACE) { // add client pkey hash to banlist a_usage->is_active = 0; s_ban_client(a_usage); - } - if (l_srv_session->usage_active) + } else if (l_srv_session->usage_active) dap_chain_net_srv_usage_delete(l_srv_session); } diff --git a/modules/service/vpn/dap_chain_net_srv_vpn.c b/modules/service/vpn/dap_chain_net_srv_vpn.c index 4bfa73df20..8f792761c5 100644 --- a/modules/service/vpn/dap_chain_net_srv_vpn.c +++ b/modules/service/vpn/dap_chain_net_srv_vpn.c @@ -1213,7 +1213,8 @@ static int s_callback_save_remain_service(dap_chain_net_srv_t * a_srv, uint32_t if (l_receipt_sign && l_srv_session->limits_units_type.enm == SERV_UNIT_B) l_remain_service.limits_bytes += l_srv_session->usage_active->receipt_next->receipt_info.units; - + log_it(L_INFO, "Save limits for user %s: sec: %"DAP_UINT64_FORMAT_U" bytes: %"DAP_UINT64_FORMAT_U, + l_user_key, l_remain_service.limits_ts, l_remain_service.limits_bytes ); int l_ret = dap_global_db_set_sync(l_remain_limits_gdb_group, l_user_key, &l_remain_service, sizeof(l_remain_service), false); if(l_ret) -- GitLab