ekr / minq

A simple Go implementation of QUIC
MIT License
98 stars 16 forks source link

Solve superious packet bug #36

Closed pietdevaere closed 6 years ago

pietdevaere commented 6 years ago

This PR fixes the following behaviour:

Consider a client sending a hello packet to an echo server.

  1. client sends hello to server on stream 1
  2. Server starts processing packet frame by frame
  3. Server processes STREAM frame with hello on stream 1
  4. Server calls StreamReadable(<stream 1>)
  5. Server application handles the hello, and sends an echo
  6. Server transmits echo packet
  7. Server marks hello packet as received
  8. Server transmits bare ack packet for hello packet

Commits: