.\" You can view this file with: .\" nroff -man [file] .\" .TH curl_global_init_mem 3 "10 May 2004" "libcurl 7.12.0" "libcurl Manual" .SH NAME curl_global_init_mem - Global libcurl initialisation with memory callbacks .SH SYNOPSIS .B #include .nf .B "CURLcode curl_global_init_mem(long " flags, .B " curl_malloc_callback "m, .B " curl_free_callback "f, .B " curl_realloc_callback "r, .B " curl_strdup_callback "s, .B " curl_calloc_callback "c ");" .SH DESCRIPTION This function works exactly as \fIcurl_global_init(3)\fP 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 \fIcurl_global_init(3)\fP 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: .IP "void *malloc_callback(size_t size);" To replace malloc() .IP "void free_callback(void *ptr);" To replace free() .IP "void *realloc_callback(void *ptr, size_t size);" To replace realloc() .IP "char *strdup_callback(const char *str);" To replace strdup() .IP "void *calloc_callback(size_t nmemb, size_t size);" To replace calloc() .SH "CAUTION" Manipulating these gives considerable powers to the application to severly screw things up for libcurl. Take care! .SH "SEE ALSO" .BR curl_global_init "(3), " .BR curl_global_cleanup "(3), "