malloc_get_state, malloc_set_state - record and restore state of malloc implementation
#include <malloc.h>
void *malloc_get_state(void);
int malloc_set_state(void *state);
Note
: these functions are removed in glibc 2.25.
The malloc_get_state() function records the current state of all malloc(3) internal bookkeeping variables (but not the actual contents of the heap or the state of malloc_hook(3) functions pointers). The state is recorded in a system-dependent opaque data structure dynamically allocated via malloc(3), and a pointer to that data structure is returned as the function result. (It is the caller's responsibility to free(3) this memory.)
The malloc_set_state() function restores the state
of all malloc(3) internal bookkeeping variables to the
values recorded in the opaque data structure pointed to by
state
.
On success, malloc_get_state() returns a pointer to a newly allocated opaque data structure. On error (for example, memory could not be allocated for the data structure), malloc_get_state() returns NULL.
On success, malloc_set_state() returns 0. If the
implementation detects that state
does not point to a correctly
formed data structure, malloc_set_state() returns -1.
If the implementation detects that the version of the data structure
referred to by state
is a more recent version than this
implementation knows about, malloc_set_state() returns
-2.