Back to index

avfs  1.0.1
ne_alloc.h
Go to the documentation of this file.
00001 /* 
00002    Replacement memory allocation handling etc.
00003    Copyright (C) 1999-2001, Joe Orton <joe@light.plus.com>
00004 
00005    This library is free software; you can redistribute it and/or
00006    modify it under the terms of the GNU Library General Public
00007    License as published by the Free Software Foundation; either
00008    version 2 of the License, or (at your option) any later version.
00009    
00010    This library is distributed in the hope that it will be useful,
00011    but WITHOUT ANY WARRANTY; without even the implied warranty of
00012    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00013    Library General Public License for more details.
00014 
00015    You should have received a copy of the GNU Library General Public
00016    License along with this library; if not, write to the Free
00017    Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
00018    MA 02111-1307, USA
00019 
00020 */
00021 
00022 #ifndef NE_ALLOC_H
00023 #define NE_ALLOC_H
00024 
00025 #include "neonconf.h"
00026 
00027 #ifdef WIN32
00028 #include <stdlib.h>
00029 #else
00030 #include <sys/types.h>
00031 #endif
00032 
00033 /* Set callback which is called if malloc() returns NULL. */
00034 void ne_oom_callback(void (*callback)(void));
00035 
00036 /* Replacements for standard C library memory allocation functions.
00037  * These will NOT return NULL. If the C library malloc() returns NULL,
00038  * neon will call the OOM callback if you have registered it, or else,
00039  * call abort().  */
00040 void *ne_malloc(size_t len);
00041 void *ne_calloc(size_t len);
00042 void *ne_realloc(void *ptr, size_t len);
00043 char *ne_strdup(const char *s);
00044 char *ne_strndup(const char *s, size_t n);
00045 
00046 #endif /* NE_ALLOC_H */