gnutls_global_set_mem_functions — API function


#include <gnutls/gnutls.h>
void gnutls_global_set_mem_functions( gnutls_alloc_function alloc_func,
  gnutls_alloc_function secure_alloc_func,
  gnutls_is_secure_function is_secure_func,
  gnutls_realloc_function realloc_func,
  gnutls_free_function free_func);


gnutls_alloc_function alloc_func

it's the default memory allocation function. Like malloc().

gnutls_alloc_function secure_alloc_func

This is the memory allocation function that will be used for sensitive data.

gnutls_is_secure_function is_secure_func

a function that returns 0 if the memory given is not secure. May be NULL.

gnutls_realloc_function realloc_func

A realloc function

gnutls_free_function free_func

The function that frees allocated data. Must accept a NULL pointer.


This is the function where you set the memory allocation functions gnutls is going to use. By default the libc's allocation functions (malloc(), free()), are used by gnutls, to allocate both sensitive and not sensitive data. This function is provided to set the memory allocation functions to something other than the defaults

This function must be called before gnutls_global_init() is called. This function is not thread safe.


Report bugs to <>.

General guidelines for reporting bugs:

GnuTLS home page:


The full documentation for gnutls is maintained as a Texinfo manual. If the info and gnutls programs are properly installed at your site, the command

info gnutls

should give you access to the complete manual. As an alternative you may obtain the manual from:


Copyright © 2001-2013 Free Software Foundation, Inc..

Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.