Subject: [quicwg/base-drafts] Frame types that are Protocol Violations (#1107)

From: martinduke <[email-masked]>
Date: Mon, 12 Feb 2018 12:46:20 -0800

Specify that certain frames on unidirectional streams tear down the connection. STREAM, STREAM_BLOCKED, and RST_STREAM can't be on a send-only, and MAX_STREAM_DATA and STOP_SENDING can't be received on a receive-only.

Fixes #1047 
You can view, comment on, or merge this pull request online at:

  https://github.com/quicwg/base-drafts/pull/1107

-- Commit Summary --

  * Frame types that are Protocol Violations

-- File Changes --

    M draft-ietf-quic-transport.md (15)

-- Patch Links --

https://github.com/quicwg/base-drafts/pull/1107.patch
https://github.com/quicwg/base-drafts/pull/1107.diff

-- 
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/pull/1107

---

From: martinduke <[email-masked]>
Date: Mon, 12 Feb 2018 20:52:35 +0000 (UTC)

@martinduke pushed 1 commit.

2fbc433  Update draft-ietf-quic-transport.md

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/1107/files/60faa9669e39c009fb9e8590b95078043ce51a7a..2fbc433205ba977f902a186f13faa38077011a45

---

From: MikkelFJ <[email-masked]>
Date: Mon, 12 Feb 2018 20:57:11 +0000 (UTC)

mikkelfj commented on this pull request.

> @@ -2097,6 +2100,9 @@ change in the initial limits (see {{zerortt-parameters}}).
 The MAX_STREAM_DATA frame (type=0x05) is used in flow control to inform a peer
 of the maximum amount of data that can be sent on a stream.
 
+An endpoint that receives a MAX_STREAM_DATA frame for a receive-only stream
+MUST terminate the connection with error PROTOCOL_VIOLATION.
+

What about when receiving MAX_STREAM_DATA on a send or bidi stream but that has not yet been opened?

-- 
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/pull/1107#pullrequestreview-95938142

---

From: martinduke <[email-masked]>
Date: Mon, 12 Feb 2018 13:05:50 -0800

martinduke commented on this pull request.

MAX_STREAM_DATA is defined in the state machine as one way to open a stream.

-- 
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/pull/1107#discussion_r167686087

---

From: MikkelFJ <[email-masked]>
Date: Mon, 12 Feb 2018 21:21:00 +0000 (UTC)

I see, thanks. But that only makes sense for bidi, or? If MAX_STREAM_DATA is received on a send stream way before the sender is ready to process it, what should it do? (I think there was some dicussion on related issues at some 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/pull/1107#discussion_r167689983

---

From: MikkelFJ <[email-masked]>
Date: Mon, 12 Feb 2018 21:25:33 +0000 (UTC)

In section 10.2.3 it says "The receiver only sends MAX_STREAM_DATA in the “Recv” state. " So I assume it would be a protocol error to send it in other states.

-- 
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/pull/1107#discussion_r167691118

---

From: martinduke <[email-masked]>
Date: Mon, 12 Feb 2018 21:40:23 +0000 (UTC)

Ah, I see now that this is for the receive end of bidirectional streams only. So, yes, you're right.

-- 
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/pull/1107#discussion_r167695075

---

From: martinduke <[email-masked]>
Date: Mon, 12 Feb 2018 21:47:42 +0000 (UTC)

5bb5d4b  Added handling for unopened streams

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/1107/files/2fbc433205ba977f902a186f13faa38077011a45..5bb5d4b1d4f166081e8f7bd0a5086d2dda1ff40b

---

From: Martin Thomson <[email-masked]>
Date: Mon, 12 Feb 2018 22:39:49 +0000 (UTC)

Merged #1107.

-- 
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/pull/1107#event-1470527273