ne_malloc

3

ne_malloc

ne_calloc

ne_realloc

ne_strdup

ne_strndup

ne_oom_callback

memory allocation wrappers

    	  #include <ne_alloc.h>

    	    void *ne_malloc
    	    size_t size

    	    void *ne_calloc
    	    size_t size

    	    void *ne_realloc
    	    void *size
    	    size_t len

    	    char *ne_strdup
    	    const char *s

    	    char *ne_strndup
    	    const char *s
    	    size_t size

    	    void ne_oom_callback
    	    void (*callback)(void)

## Description

The functions `ne_malloc`, `ne_calloc`, `ne_realloc`, `ne_strdup` and `ne_strdnup` provide wrappers for the equivalent functions in the standard C library. The wrappers provide the extra guarantee that if the C library equivalent returns &null; when no memory is available, an optional callback will be called, and the library will then call `abort`().

`ne_oom_callback` registers a callback which will be invoked if an out of memory error is detected.

## Notes

If the operating system uses optimistic memory allocation, the C library memory allocation routines will not return &null;, so it is not possible to gracefully handle memory allocation failures.