#include <curl/curl.h>
Go to the source code of this file.
Typedefs | |
| typedef void(* | GlibcurlCallback )(void *) |
| Callback function for glibcurl_set_callback. | |
Functions | |
| void | glibcurl_init () |
| Initialize libcurl. | |
| CURLM * | glibcurl_handle () |
| Return global multi handle. | |
| CURLMcode | glibcurl_add (CURL *easy_handle) |
| Convenience function, just executes curl_multi_add_handle(glibcurl_handle(), easy_handle); glibcurl_start(). | |
| CURLMcode | glibcurl_remove (CURL *easy_handle) |
| Convenience function, just executes curl_multi_remove_handle(glibcurl_handle(), easy_handle). | |
| void | glibcurl_start () |
| Call this whenever you have added a request using curl_multi_add_handle(). | |
| void | glibcurl_set_callback (GlibcurlCallback function, void *data) |
| Set function to call after each invocation of curl_multi_perform(). | |
| void | glibcurl_cleanup () |
| You must call glibcurl_remove() and curl_easy_cleanup() for all requests before calling this. | |
| typedef void(* GlibcurlCallback)(void *) |
Callback function for glibcurl_set_callback.
| CURLMcode glibcurl_add | ( | CURL * | easy_handle | ) |
Convenience function, just executes curl_multi_add_handle(glibcurl_handle(), easy_handle); glibcurl_start().
References CurlGSource_::callPerform, and CurlGSource_::multiHandle.
Referenced by Download::cont(), main(), and Download::run().
| void glibcurl_cleanup | ( | ) |
You must call glibcurl_remove() and curl_easy_cleanup() for all requests before calling this.
This function makes calls to curl_multi_cleanup() and curl_global_cleanup().
References CurlGSource_::multiHandle, and CurlGSource_::source.
Referenced by Download::cleanup(), and main().
| CURLM* glibcurl_handle | ( | ) |
| void glibcurl_init | ( | ) |
Initialize libcurl.
Call this once at the beginning of your program. This function makes calls to curl_global_init() and curl_multi_init()
References CurlGSource_::callPerform, D, GLIBCURL_EXC, GLIBCURL_FDMAX, GLIBCURL_READ, GLIBCURL_WRITE, CurlGSource_::lastPollFd, CurlGSource_::lastPollFdMax, CurlGSource_::multiHandle, NULL, and CurlGSource_::source.
Referenced by Download::init(), and main().
| CURLMcode glibcurl_remove | ( | CURL * | easy_handle | ) |
Convenience function, just executes curl_multi_remove_handle(glibcurl_handle(), easy_handle).
References CurlGSource_::multiHandle.
Referenced by main(), Download::pause(), Download::stop(), and Download::~Download().
| void glibcurl_set_callback | ( | GlibcurlCallback | function, | |
| void * | data | |||
| ) |
Set function to call after each invocation of curl_multi_perform().
Pass function==0 to unregister a previously set callback. The callback function will be called with the supplied data pointer as its first argument.
References NULL, and CurlGSource_::source.
Referenced by Download::init(), and main().
| void glibcurl_start | ( | ) |
Call this whenever you have added a request using curl_multi_add_handle().
This is necessary to start new requests. It does so by triggering a call to curl_multi_perform() even in the case where no open fds cause that function to be called anyway. The call happens "later", i.e. during the next iteration of the glib main loop. glibcurl_start() only sets a flag to make it happen.
References CurlGSource_::callPerform.
1.5.6