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.
libcurl: stop reading from connection when client has paused receivin… #3240
Goal: Allow libcurl pause-unpause behavior to control flow of data from server with limited memory consumption.
Setup: Using curl_multi_perform to transfer GBs of data from a server that is setup using a curl_easy_handle. (HTTP 1.1 and HTTP 2) When it is not possible to accept data, the WRITEFUNCTION returns CURL_WRITEFUNC_PAUSE. Curl stops sending data to the write function.
Root cause, in my opinion:
bagder left a comment
I can only agree that this appears to be completely sensible. It's also a bit complicated to add a test for, so while the green CI tests are a good sign we also know that we don't have any tests for this particular code path.