pwmc: add the '.passwd' command.
[libpwmd.git] / src / mem.h
blob84f74cf3baeac523e0f05b2c2a2a8c1456cd5e71
1 /*
2 Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013
3 Ben Kibbey <bjk@luxsci.net>
5 This file is part of libpwmd.
7 Libpwmd is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 2 of the License, or
10 (at your option) any later version.
12 Libpwmd is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with Libpwmd. If not, see <http://www.gnu.org/licenses/>.
20 #ifndef MEM_H
21 #define MEM_H
23 #ifdef __cplusplus
24 extern "C"
26 #endif
28 #ifdef HAVE_CONFIG_H
29 #include <config.h>
30 #endif
32 #include <sys/types.h>
33 #include <stdarg.h>
35 #ifdef MEM_DEBUG
36 #define _xfree free
37 #define _xmalloc malloc
38 #define _xrealloc realloc
39 #define _xcalloc calloc
40 #define _str_dup strdup
41 #else
42 void _xmem_init (void) __attribute__ ((visibility ("hidden")));
43 void _xfree (void *ptr) __attribute__ ((visibility ("hidden")));
44 void *_xmalloc (size_t size) __attribute__ ((visibility ("hidden")));
45 void *_xrealloc (void *ptr, size_t size)
46 __attribute__ ((visibility ("hidden")));
47 void *_xcalloc (size_t nmemb, size_t size)
48 __attribute__ ((visibility ("hidden")));
49 void _xpanic (void) __attribute__ ((visibility ("hidden")));
50 #ifdef DEBUG
51 void _xdump (void) __attribute__ ((visibility ("hidden")));
52 #endif
53 #endif
55 #ifdef __cplusplus
57 #endif
59 #endif