changeset 8268:159eb325ec82 quic

Put zero in 'First ACK Range' when acknowledging one packet. This fixes Chrome CONNECTION_ID_LIMIT_ERROR with the reason: "Underflow with first ack block length 2 largest acked is 1".
author Roman Arutyunyan <arut@nginx.com>
date Mon, 23 Mar 2020 15:32:24 +0300
parents a8349cc72c64
children c9c3a73df6e8
files src/event/ngx_event_quic_transport.c
diffstat 1 files changed, 2 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/event/ngx_event_quic_transport.c
+++ b/src/event/ngx_event_quic_transport.c
@@ -1104,7 +1104,7 @@ ngx_quic_create_ack(u_char *p, ngx_quic_
         len += ngx_quic_varint_len(ack->pn);
         len += ngx_quic_varint_len(0);
         len += ngx_quic_varint_len(0);
-        len += ngx_quic_varint_len(ack->pn);
+        len += ngx_quic_varint_len(0);
 
         return len;
     }
@@ -1115,7 +1115,7 @@ ngx_quic_create_ack(u_char *p, ngx_quic_
     ngx_quic_build_int(&p, ack->pn);
     ngx_quic_build_int(&p, 0);
     ngx_quic_build_int(&p, 0);
-    ngx_quic_build_int(&p, ack->pn);
+    ngx_quic_build_int(&p, 0);
 
     return p - start;
 }