19typedef int crtx_CURLOPT_XFERINFOFUNCTION(
void *userdata, curl_off_t dltotal, curl_off_t dlnow, curl_off_t ultotal, curl_off_t ulnow);
20typedef int crtx_CURLOPT_PROGRESSFUNCTION(
void *userdata,
double dltotal,
double dlnow,
double ultotal,
double ulnow);
21typedef size_t crtx_CURLOPT_WRITEFUNCTION(
char *ptr,
size_t size,
size_t nmemb,
void *userdata);
22typedef size_t crtx_CURLOPT_HEADERFUNCTION(
char *buffer,
size_t size,
size_t nitems,
void *userdata);
23typedef int crtx_curl_done_cb(
void *userdata,
struct CURLMsg *msg,
long response_code,
long error_code);
32 char error[CURL_ERROR_SIZE];
34 #if LIBCURL_VERSION_NUM >= 0x072000
35 crtx_CURLOPT_XFERINFOFUNCTION *progress_callback;
37 crtx_CURLOPT_PROGRESSFUNCTION *progress_callback;
39 void *progress_cb_data;
40 crtx_CURLOPT_HEADERFUNCTION *header_callback;
42 crtx_CURLOPT_WRITEFUNCTION *write_callback;
47 crtx_curl_done_cb *done_callback;
51#define CRTX_EVENT_TYPE_FAMILY_CURL (500)
52#define CRTX_CURL_ET_FINISHED (CRTX_EVENT_TYPE_FAMILY_CURL + 1)
53#define CRTX_CURL_ET_PROGRESS (CRTX_EVENT_TYPE_FAMILY_CURL + 2)
54#define CRTX_CURL_ET_HEADER (CRTX_EVENT_TYPE_FAMILY_CURL + 3)
56int crtx_curl_progress_callback(
void *
userdata, curl_off_t dltotal, curl_off_t dlnow, curl_off_t ultotal, curl_off_t ulnow);
57size_t crtx_curl_header_callback(
char *buffer,
size_t size,
size_t nitems,
void *
userdata);
60CRTX_DECLARE_ALLOC_FUNCTION(curl)
63void crtx_curl_finish();
The core definitions of libcortex.
listener that downloads data from the network using, e.g., HTTP
Definition curl.h:27
base structure of a listener
Definition core.h:186
void * userdata
storage for user-provided data
Definition core.h:225