|
|
|
|
@ -665,11 +665,12 @@ void etcp_on_link_down(struct ETCP_CONN* etcp) {
|
|
|
|
|
static void ack_response_timer_cb(void* arg) {// проверяем неотправленные ack response и отправляем если надо.
|
|
|
|
|
DEBUG_TRACE(DEBUG_CATEGORY_ETCP, ""); |
|
|
|
|
struct ETCP_CONN* etcp = (struct ETCP_CONN*)arg; |
|
|
|
|
ack_resp_timer=NULL; |
|
|
|
|
if (etcp->ack_q->count==0) return;// нечего отправлять
|
|
|
|
|
etcp_conn_process_send_queue(etcp);// проталкиваем (она же должна отправлять только 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); |
|
|
|
|
else etcp->ack_resp_timer=NULL; |
|
|
|
|
// else etcp->ack_resp_timer=NULL;
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static void etcp_link_ready_callback(struct ETCP_CONN* etcp) { |
|
|
|
|
|