Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.Sign up
GitHub is where the world builds software
Millions of developers and companies build, ship, and maintain their software on GitHub — the largest and most advanced development platform in the world.
curl_easy_getinfo CURLINFO_EFFECTIVE_URL is the same for all handles created in the PUSHFUNCTION callback #5589
When using libcurl multi handle with the PUSHFUNCTION option set to allow PUSH_PROMISE frames, if you call
I don't know if this is the intended behavior or a possible bug, so I'm opening this issue here.
If this is in fact the intended behavior, a new info option to retrieve the pushed data URL would be very helpful, or at least some kind of flag saying this easy handle was created to transfer data pushed by the server.
I know this is possible by passing a custom structure to the
I did this
Ran the example at https://curl.haxx.se/libcurl/c/http2-pushinmemory.html with some minor edits:
It shows the same URL for all requests.
I expected the following
Different URLs for each easy handle.
Windows 10 x64
I think it is an omission (bug). The pushed stream gets its 'easy' handle created internally by duplicating the "source stream", which is why it gets that particular effective URL. It simply isn't updated to the correct URL.
It probably makes sense for curl to create the URL proper to allow