|
|
|
|
@ -706,16 +706,12 @@ static void etcp_conn_process_send_queue(struct ETCP_CONN* etcp) {// вызыв
|
|
|
|
|
DEBUG_TRACE(DEBUG_CATEGORY_ETCP, ""); |
|
|
|
|
struct ETCP_DGRAM* dgram; |
|
|
|
|
if (etcp->tx_state!=ETCP_TX_STATE_DATA_WAIT) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
char l_status[256]={0}; |
|
|
|
|
struct ETCP_LINK* link = etcp->links; |
|
|
|
|
while (link) { |
|
|
|
|
snprintf (l_status+strlen(l_status), 256-strlen(l_status), "L%d%d%s,%s ", link->recv_keepalive, link->remote_keepalive, (link->shaper_timer)?"wait":"rdy", link->send_blocked_inflight?"inf_block":"rdy"); |
|
|
|
|
link = link->next; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DEBUG_DEBUG(DEBUG_CATEGORY_ETCP, "[%s] TX state: %d (link not ready, skip send) %s", etcp->log_name, etcp->tx_state, l_status); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
@ -724,6 +720,9 @@ static void etcp_conn_process_send_queue(struct ETCP_CONN* etcp) {// вызыв
|
|
|
|
|
etcp_loadbalancer_send(dgram); |
|
|
|
|
dgram = etcp_request_pkt(etcp); |
|
|
|
|
} |
|
|
|
|
if (etcp->tx_state==ETCP_TX_STATE_DATA_WAIT) { |
|
|
|
|
queue_resume_callback(etcp->input_send_q); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Подготовить и отправить кодограмму
|
|
|
|
|
|