Subject: [quicwg/base-drafts] Writing after closed frame enqueued (#777)

From: ekr <[email-masked]>
Date: Mon, 18 Sep 2017 12:28:27 -0700

I'm not sure if this belongs in the QUIC spec, but I had to handle it specially in Minq so I thought I would mention it.

The current text shows the transition from OPEN to HALF_CLOSED (LOCAL) happening when you send a FIN. However, if you think of this from an API perspective, that's not quite what you want. Consider the case where you have a stream flow control window of 1000. You write 999 and then 1000-1999, and then call stream.Close(). At this point, you have in queue:

``` 
  [0-999] (sent, maybe un-acked)
  [1000-1999] (not-sent)
  [2000: FIN] (not sent)
```

You're still in OPEN because you haven't sent the FIN, but the implementation should stop you from doing another Write() at this point.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/issues/777