Fix: conn is tickable if it wants to send a connection-level frame

This commit is contained in:
Dmitri Tikhonov 2018-04-25 11:42:51 -04:00
parent aa0d8cfff0
commit 130d542a00
2 changed files with 5 additions and 0 deletions

View file

@ -5,6 +5,8 @@
- [BUGFIX] sendctl checks for all unacked bytes, not just retx bytes.
- [BUGFIX] connections with blocked scheduled packets are not tickable
for sending.
- [BUGFIX] Conn is tickable if it wants to send a connection-level
frame.
2018-04-23

View file

@ -3328,6 +3328,9 @@ full_conn_ci_is_tickable (lsquic_conn_t *lconn)
&& (should_generate_ack(conn) ||
!lsquic_send_ctl_sched_is_blocked(&conn->fc_send_ctl)))
{
if (conn->fc_flags & (FC_SEND_GOAWAY|FC_SEND_STOP_WAITING
|FC_SEND_PING|FC_SEND_WUF))
return 1;
if (lsquic_send_ctl_has_buffered(&conn->fc_send_ctl))
return 1;
if (!TAILQ_EMPTY(&conn->fc_pub.sending_streams))