2
* pstdlib.h -- $Id: pstdlib.h,v 1.1 2003/03/08 15:26:46 travo Exp $
3
* portability layer basic memory management interface
5
* Copyright (c) 1998. See accompanying LEGAL file for details.
12
extern void *(*p_malloc)(size_t);
13
extern void (*p_free)(void *);
14
extern void *(*p_realloc)(void *, size_t);
16
/* above data loaded to system malloc, free, and realloc
17
* -- call p_mminit to get mm version
20
#define p_mminit p_mmdebug
21
extern int p_mmcheck(void *p);
22
extern void p_mmguard(void *b, unsigned long n);
23
extern long p_mmextra, p_mmoffset;
25
extern void p_mminit(void);
27
/* make trivial memory statistics globally available
28
* -- counts total number of allocations, frees, and
29
* current number of large blocks */
30
extern long p_nallocs;
35
/* define this to get control when mm functions fail
36
* -- if it returns, must return 0 */
37
extern void *(*p_mmfail)(unsigned long n);
47
extern p_twkspc p_wkspc;
49
/* similar to the string.h functions, but p_malloc destination
50
* - 0 src is acceptable */
51
extern void *p_memcpy(const void *, size_t);
52
extern char *p_strcpy(const char *);
53
extern char *p_strncat(const char *, const char *, size_t);
55
/* dont do anything critical if this is set -- signal an error */
56
extern volatile int p_signalling;