API for event loop integration with GNUnet SCHEDULER. More...
#include "platform.h"
#include <jansson.h>
#include "gnunet_curl_lib.h"
#include "gnunet_util_lib.h"
#include "curl_internal.h"
Go to the source code of this file.
Data Structures | |
struct | GNUNET_CURL_RescheduleContext |
Closure for GNUNET_CURL_gnunet_scheduler_reschedule(). More... | |
Functions | |
struct GNUNET_CURL_RescheduleContext * | GNUNET_CURL_gnunet_rc_create_with_parser (struct GNUNET_CURL_Context *ctx, GNUNET_CURL_RawParser rp, GNUNET_CURL_ResponseCleaner rc) |
Initialize reschedule context; with custom response parser. More... | |
static void | clean_result (void *response) |
Just a wrapper to avoid casting of function pointers. More... | |
struct GNUNET_CURL_RescheduleContext * | GNUNET_CURL_gnunet_rc_create (struct GNUNET_CURL_Context *ctx) |
Initialize reschedule context. More... | |
void | GNUNET_CURL_gnunet_rc_destroy (struct GNUNET_CURL_RescheduleContext *rc) |
Destroy reschedule context. More... | |
static void | context_task (void *cls) |
Task that runs the context's event loop with the GNUnet scheduler. More... | |
void | GNUNET_CURL_gnunet_scheduler_reschedule (void *cls) |
Implementation of the GNUNET_CURL_RescheduleCallback for GNUnet's scheduler. More... | |
API for event loop integration with GNUnet SCHEDULER.
Definition in file curl_reschedule.c.
|
static |
Just a wrapper to avoid casting of function pointers.
response | the (JSON) response to clean. |
Definition at line 80 of file curl_reschedule.c.
References response.
Referenced by GNUNET_CURL_gnunet_rc_create().
|
static |
Task that runs the context's event loop with the GNUnet scheduler.
cls | a struct GNUNET_CURL_RescheduleContext * |
Definition at line 114 of file curl_reschedule.c.
References GNUNET_CURL_RescheduleContext::cleaner, context_task(), GNUNET_CURL_RescheduleContext::ctx, GNUNET_CURL_get_select_info(), GNUNET_CURL_perform2(), GNUNET_NETWORK_fdset_copy_native(), GNUNET_NETWORK_fdset_create(), GNUNET_NETWORK_fdset_destroy(), GNUNET_SCHEDULER_add_select(), GNUNET_SCHEDULER_PRIORITY_DEFAULT, GNUNET_TIME_relative_multiply(), GNUNET_TIME_UNIT_FOREVER_REL, GNUNET_TIME_UNIT_MILLISECONDS, GNUNET_CURL_RescheduleContext::parser, GNUNET_CURL_RescheduleContext::task, and timeout.
Referenced by context_task(), and GNUNET_CURL_gnunet_scheduler_reschedule().