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