New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
rename to CLOSE_STREAM, make error code optional #11
Conversation
a3a1269
to
dbe188b
Compare
dbe188b
to
af38608
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@marten-seemann Thank you for your efforts. Looks good modulo the points below.
Co-authored-by: Kazuho Oku <kazuhooku@gmail.com>
Thank you @kazuho! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think I'm convinced that this is a good direction just yet.
Stream ID (i), | ||
Application Protocol Error Code (i), | ||
[Application Protocol Error Code (i)], |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would prefer if this were unconditional. A value of 0 (or whatever application error equates to no error) is fine.
I see why you made this choice, but if the goal is to send STREAM+FIN, then STREAM+FIN exists. This frame only makes sense if reliable size < final size.
# Resetting Streams | ||
## Without an Error | ||
|
||
When closing a stream with an error, the node has the choise between a STREAM |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
choice
The CLOSE_STREAM frame can be used to reduce the reliable offset after a | ||
STREAM frame with a FIN bit has been sent. If STREAM frames containing data | ||
up to that byte offset are lost, the initiator MUST retransmit this data, as | ||
described in (Section 13.3 of {{!RFC9000}}). Data sent beyond that byte offset |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
{{Section 13.3 of !RFC9000}}
frame and a RELIABLE_RESET_STREAM frame. When using a RESET_STREAM frame, the | ||
behavior is unchanged from the behavior described in ({{!RFC9000}}). | ||
frame and a CLOSE_STREAM frame of type 0x21. When using a RESET_STREAM frame, | ||
the behavior is unchanged from the behavior described in ({{!RFC9000}}). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lose the parentheses.
First stab at renaming to CLOSE_STREAM. I'm pretty sure this requires more cleanup.
Introducing a variant without an error code creates a lot of complication, since this is now an alternative to a STREAM frame with a FIN bit.