Skip to content

h2 push: use squeaky clean easy handle - #22715

Closed
icing wants to merge 1 commit into
curl:masterfrom
icing:h2_push-new-easy
Closed

icing wants to merge 1 commit into
curl:masterfrom
icing:h2_push-new-easy

Conversation

@icing

@icing icing commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

When a HTTP/2 push requires a new easy handle, create a clean easy and do not duplicate the existing one. This avoids messy use of the API curl_easy_duphandle(), which has some caveats the applictions must observe and cannot do so for a h2 push.

Using a clean easy handle is also better since the pushed stream has no real relation to the easy handle that was in use when the HTTP/2 push arrived (it could be any easy using the connection).

Inheriting settings/inputs from a somewhat "random" existing easy seems wrong.

When a HTTP/2 push requires a new easy handle, create a clean
easy and do *not* duplicate the existing one. This avoids messy
use of the API `curl_easy_duphandle()`, which has some caveats
the applictions must observe and cannot do so for a h2 push.

Using a clean easy handle is also better since the pushed stream
has no real relation to the easy handle that was in use when the
HTTP/2 push arrived (it could be any easy using the connection).

Inheriting settings/inputs from a somewhat "random" existing
easy seems wrong.
@bagder

bagder commented Aug 28, 2026

Copy link
Copy Markdown
Member

Also related: #22490

@bagder bagder closed this in fad90b6 Aug 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

2 participants