On Tue, 19 Jul 2016, Vivek S wrote:
My problem is that sometimes the feed-thread fills the buffer slowly (for valid reasons). To handle this I need to pause the curl-transfer till the buffer has some data. Right now am using curl_easy_pause in CURLOPT_READFUNCTION callback to pause the transfer when buffer is empty
You're actually calling curl_easy_pause() from witin the callback instead of returning CURL_READFUNC_PAUSE ? I'm not sure that's a good idea...
and trying to resume the transfer whenever the buffer has some data in CURLOPT_XFERINFOFUNCTION callback. But according the libcurl document, CURLOPT_XFERINFOFUNCTION callback wont be called in case of multi-curl interface when there is no transfer on the fd/handle. So the resume never happens.
When you're using the multi interface you don't need to wait for a CURLOPT_XFERINFOFUNCTION callback, you can just call curl_easy_pause() at any point when you think it is suitable for libcurl to continue the transfer.
I would like to know how to resume the curl transfer(upload) when the buffer has some data.
Call curl_easy_pause() immediately when you have data! -- / daniel.haxx.se ------------------------------------------------------------------- List admin: https://cool.haxx.se/list/listinfo/curl-library Etiquette: https://curl.haxx.se/mail/etiquette.html
