Fix for ARES_EDESTRUCTION which is sent to the callback after
[libpwmd.git] / mem.h
blobfe5a5f63bcb4702a47e14316be317fbcf5404b71
1 /* vim:tw=78:ts=8:sw=4:set ft=c: */
2 /*
3 Copyright (C) 2007 Ben Kibbey <bjk@luxsci.net>
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02110-1301 USA
20 #ifndef MEM_H
21 #define MEM_H
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
27 struct memlist_s {
28 void *ptr;
29 size_t size;
30 struct memlist_s *next;
33 void xfree(void *ptr) __attribute__ ((visibility ("hidden")));
34 void *xmalloc(size_t size) __attribute__ ((visibility ("hidden")));
35 void *xrealloc(void *ptr, size_t size) __attribute__ ((visibility ("hidden")));
36 char *xstrdup(const char *str) __attribute__ ((visibility ("hidden")));
37 void *xcalloc(size_t nmemb, size_t size) __attribute__ ((visibility ("hidden")));
38 void xpanic(void) __attribute__ ((visibility ("hidden")));
39 #ifdef DEBUG
40 void xdump(void) __attribute__ ((visibility ("hidden")));
41 #endif
43 #ifdef __cplusplus
45 #endif
47 #endif