Evgeny 1 day ago
parent
commit
766fd71296
  1. 3
      src/etcp.c

3
src/etcp.c

@ -665,11 +665,12 @@ void etcp_on_link_down(struct ETCP_CONN* etcp) {
static void ack_response_timer_cb(void* arg) {// проверяем неотправленные ack response и отправляем если надо. static void ack_response_timer_cb(void* arg) {// проверяем неотправленные ack response и отправляем если надо.
DEBUG_TRACE(DEBUG_CATEGORY_ETCP, ""); DEBUG_TRACE(DEBUG_CATEGORY_ETCP, "");
struct ETCP_CONN* etcp = (struct ETCP_CONN*)arg; struct ETCP_CONN* etcp = (struct ETCP_CONN*)arg;
ack_resp_timer=NULL;
if (etcp->ack_q->count==0) return;// нечего отправлять if (etcp->ack_q->count==0) return;// нечего отправлять
etcp_conn_process_send_queue(etcp);// проталкиваем (она же должна отправлять только ack если больше ничего нет) etcp_conn_process_send_queue(etcp);// проталкиваем (она же должна отправлять только ack если больше ничего нет)
// если ack все еще заняты - обновляем таймаут // если ack все еще заняты - обновляем таймаут
if (etcp->ack_q->count) etcp->ack_resp_timer = uasync_set_timeout(etcp->instance->ua, ACK_DELAY_TB, etcp, ack_response_timer_cb); if (etcp->ack_q->count) etcp->ack_resp_timer = uasync_set_timeout(etcp->instance->ua, ACK_DELAY_TB, etcp, ack_response_timer_cb);
else etcp->ack_resp_timer=NULL; // else etcp->ack_resp_timer=NULL;
} }
static void etcp_link_ready_callback(struct ETCP_CONN* etcp) { static void etcp_link_ready_callback(struct ETCP_CONN* etcp) {

Loading…
Cancel
Save