1 | /*************************************** 2 | $Revision: 1.6 $ 3 | 4 | Utilities (ut). memwrap.h - header file for memory allocation wrappers. 5 | 6 | Status: NOT REVUED, TESTED, 7 | 8 | Design and implementation by: Marek Bukowy 9 | 10 | ******************/ /****************** 11 | Copyright (c) 1999 RIPE NCC 12 | 13 | All Rights Reserved 14 | 15 | Permission to use, copy, modify, and distribute this software and its 16 | documentation for any purpose and without fee is hereby granted, 17 | provided that the above copyright notice appear in all copies and that 18 | both that copyright notice and this permission notice appear in 19 | supporting documentation, and that the name of the author not be 20 | used in advertising or publicity pertaining to distribution of the 21 | software without specific, written prior permission. 22 | 23 | THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING 24 | ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS; IN NO EVENT SHALL 25 | AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY 26 | DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN 27 | AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 28 | OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 29 | ***************************************/ 30 | 31 | #ifndef _MEMWRAP_H 32 | #define _MEMWRAP_H 33 | 34 | #include <erroutines.h> 35 | #include <glib.h> 36 | 37 | /* 38 | er_ret_t wr_real_malloc(void **ptr, size_t size) ; 39 | er_ret_t wr_real_calloc(void **ptr, size_t num, size_t size) ; 40 | er_ret_t wr_real_realloc(void **ptr, void *oldptr, size_t size) ; 41 | er_ret_t wr_real_free(void *ptr) ; 42 | */ 43 | char * wr_string(char *text); 44 | 45 | er_ret_t wr_real_malloc(void **ptr, size_t size, char *file, int line) ; 46 | er_ret_t wr_real_calloc(void **ptr, size_t num, size_t size, char *file, int line) ; 47 | er_ret_t wr_real_realloc(void **ptr, void *oldptr, size_t size, char *file, int line) ; 48 | er_ret_t wr_real_free(void *ptr, char *file, int line) ; 49 | 50 | #define wr_malloc(a,b) wr_real_malloc(a,b, __FILE__ ,__LINE__) 51 | #define wr_calloc(a,b,c) wr_real_calloc(a,b,c, __FILE__ ,__LINE__) 52 | #define wr_realloc(a,b,c) wr_real_realloc(a,b,c,__FILE__ ,__LINE__) 53 | #define wr_free(a) wr_real_free(a, __FILE__ ,__LINE__) 54 | 55 | /*void wr_free_list_element(void *cpy, void *trash);*/ 56 | void wr_real_clear_list(GList **list, char *file, int line); 57 | 58 | #define wr_clear_list(a) wr_real_clear_list(a, __FILE__ ,__LINE__) 59 | 60 | /* let's see... 61 | #define free(a) wr_free(a) 62 | */ 63 | #endif /* _MEMWRAP_H */