SYNOPSIS

DESCRIPTION

This function works exactly as curl_global_init(3) with one addition: it allows the application to set callbacks to replace the otherwise used internal memory functions.

This man page only adds documentation for the callbacks, see the curl_global_init(3) man page for all the rest. When you use this function, all callback arguments must be set to valid function pointers.

The prototypes for the given callbacks should match these:

void *malloc_callback(size_t size);

To replace malloc()

void free_callback(void *ptr);

To replace free()

void *realloc_callback(void *ptr, size_t size);

To replace realloc()

char *strdup_callback(const char *str);

To replace strdup()

void *calloc_callback(size_t nmemb, size_t size);

To replace calloc()

CAUTION

Manipulating these gives considerable powers to the application to severly screw things up for libcurl. Take care!