Skip to content
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

send eos flag #14220

Closed
wants to merge 5 commits into from
Closed

send eos flag #14220

wants to merge 5 commits into from

Conversation

icing
Copy link
Contributor

@icing icing commented Jul 18, 2024

Adds a bool eos flag to send methods to indicate that the data is the last chunk the invovled transfer wants to send to the server.

This will help protocol filters like HTTP/2 and 3 to forward the stream's EOF flag and also allow to EAGAIN such calls when buffers are not yet fully flushed.

@icing icing added HTTP/2 feature-window A merge of this requires an open feature window HTTP/3 h3 or quic related labels Jul 18, 2024
@bagder bagder closed this in be93299 Jul 18, 2024
@bagder
Copy link
Member

bagder commented Jul 18, 2024

@bagder bagder reopened this Jul 18, 2024
Adds a `bool eos` flag to send methods to indicate that the data
is the last chunk the invovled transfer wants to send to the server.

This will help protocol filters like HTTP/2 and 3 to forward the
stream's EOF flag and also allow to EAGAIN such calls when buffers
are not yet fully flushed.
- remove upload byte counting
- send initial data with stream open when possible
meslubi2021 pushed a commit to meslubi2021/curl that referenced this pull request Jul 19, 2024
Adds a `bool eos` flag to send methods to indicate that the data is the
last chunk the invovled transfer wants to send to the server.

This will help protocol filters like HTTP/2 and 3 to forward the
stream's EOF flag and also allow to EAGAIN such calls when buffers are
not yet fully flushed.

Closes curl#14220
icing added a commit to icing/curl that referenced this pull request Jul 22, 2024
- replace the counting of upload lengths with the new eos
  send flag
- improve frequency of stream draining to happen less on
  events where it is not needed
- this PR is based on curl#14220

test case improvement:
- let client 'upload-pausing' handle http versions
@bagder bagder closed this in 911c316 Aug 3, 2024
icing added a commit to icing/curl that referenced this pull request Aug 4, 2024
- replace the counting of upload lengths with the new eos
  send flag
- improve frequency of stream draining to happen less on
  events where it is not needed
- this PR is based on curl#14220

http2, cf-h2-proxy: fix EAGAINed out buffer
- in adjust pollset and shutdown handling, a non-empty `ctx->outbufq`
  must trigger send polling, irregardless of http/2 flow control
- in http2, fix retry handling of blocked GOAWAY frame

test case improvement:
- let client 'upload-pausing' handle http versions
bagder pushed a commit that referenced this pull request Aug 5, 2024
- replace the counting of upload lengths with the new eos send flag
- improve frequency of stream draining to happen less on events where it
  is not needed
- this PR is based on #14220

http2, cf-h2-proxy: fix EAGAINed out buffer
- in adjust pollset and shutdown handling, a non-empty `ctx->outbufq`
  must trigger send polling, irregardless of http/2 flow control
- in http2, fix retry handling of blocked GOAWAY frame

test case improvement:
- let client 'upload-pausing' handle http versions

Closes #14253
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature-window A merge of this requires an open feature window HTTP/2 HTTP/3 h3 or quic related
Development

Successfully merging this pull request may close these issues.

2 participants