Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
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: