Referencia del Archivo xalloc.c
#include <stdlib.h>
#include <stdio.h>
#include "tdef.h"
#include "uti.h"
#include "xalloc.h"
#include <string.h>
Ir al código fuente de este archivo.
|
Estructuras de datos |
| struct | mem_limiter |
Definiciones |
| #define | MALLOC_ZEROxx |
| #define | MALLOC_NOMEM |
| #define | FREE_NULL |
| #define | NULL_TRAPxx |
| #define | BLK_CHECK |
| #define | LOGF_SAVE |
| #define | HEAP_CHECK |
| #define | MEM_USED |
| #define | HEAP_USED |
| #define | HEAP_FREE |
| #define | LOGF_SAVE_DEF_STATE FALSE |
| #define | HEAP_CHECK_DEF_STATE FALSE |
| #define | MEM_USED_DEF_STATE FALSE |
| #define | HEAP_USED_DEF_STATE FALSE |
| #define | HEAP_FREE_DEF_STATE FALSE |
| #define | IUFLARGS srcname, line |
| #define | UUFLARGS ,srcname, line |
| #define | BLK_LIMITER_SIZE 4 |
| #define | BLK_FILLER 159 |
| #define | HEAP_FILLER 123 |
| #define | LOGF_NAME "xalloc.log" |
| #define | MEM_USED_X 72 |
| #define | MEM_USED_Y 1 |
| #define | HEAP_USED_X 1 |
| #define | HEAP_USED_Y 25 |
| #define | HEAP_FREE_X 72 |
| #define | HEAP_FREE_Y 25 |
| #define | XPTR PTRH |
| #define | MALLOC malloc |
| #define | CALLOC calloc |
| #define | FREE free |
| #define | CORELEFT() 0 |
| #define | STRCPY strcpy |
| #define | STRLEN strlen |
| #define | HEAPCHECK() 0 |
| #define | HEAPCHECKFREE(value) 0 |
| #define | HEAPFILLFREE(value) {} |
| #define | HEAP_OK 0 |
| #define | HEAP_CORRUPT 1 |
| #define | HEAP_FREEWRITE 2 |
| #define | PRINT(msg, arg1) fprintf(stderr,msg,arg1) |
| #define | GOTOXY(x, y) |
| #define | WHEREX() 1 |
| #define | WHEREY() 1 |
| #define | MEM_LIM |
| #define | STARTER(blk) ((mem_limiter XPTR)(((INT8 XPTR)(blk))-sizeof(mem_limiter))) |
| #define | ENDER(blk, len) ((mem_limiter XPTR)(((INT8 XPTR)(blk))+(len))) |
| #define | XBPTR(blk, n) (((INT8 XPTR)(blk))+(n)) |
| #define | N 1000 |
| #define | N 1000 |
Funciones |
| PRIVATE void | _xalloc_error_handler (char *msg FLARGS) |
| PRIVATE void | _logf_log (long count, unsigned long size, int freeing FLARGS) |
| PRIVATE void | _show_used (void) |
| PRIVATE void XPTR | _prepare_block (INT8 XPTR p, unsigned long size FLARGS) |
| void * | _xmalloc_src (unsigned long size FLARGS) |
| void * | _xcalloc_src (unsigned long nitems, unsigned long size FLARGS) |
| void | fillheap (void) |
| void | _xfree_src (void *block FLARGS) |
| unsigned long | xusedmem (void) |
| unsigned long | xusedheap (void) |
| char * | _xstrdup_src (const char *str FLARGS) |
| unsigned long | _xblksize_src (void *block FLARGS) |
| PRIVATE int | _test_limiter (mem_limiter XPTR m) |
| int | testblk (void *block) |
| int | testheap (void) |
| void | _assertblk_src (void *block FLARGS) |
| VOID | _assertheap_src (IFLARGS) |
| void | xalloc_logf (int b) |
| void | xalloc_heapcheck (int b) |
| void | xalloc_showmem (int b) |
| void | xalloc_showheap (int b) |
| void | xalloc_showfree (int b) |
| void | _xmem2disk_src (char *fname, void *block FLARGS) |
| void * | _xdisk2mem_src (char *fname FLARGS) |
Variables |
| PRIVATE BOOL | logf_save_on = LOGF_SAVE_DEF_STATE |
| PRIVATE BOOL | heap_check_on = HEAP_CHECK_DEF_STATE |
| PRIVATE BOOL | mem_used_on = MEM_USED_DEF_STATE |
| PRIVATE BOOL | heap_used_on = HEAP_USED_DEF_STATE |
| PRIVATE BOOL | heap_free_on = HEAP_FREE_DEF_STATE |
| PRIVATE long | _logf_count = 0 |
| PRIVATE int | _logf_append = 0 |
| PRIVATE unsigned long | _mem_used = 0 |
| PRIVATE unsigned long | _heap_used = 0 |
| PRIVATE int | _heap_filled = 0 |
Documentación de las definiciones
| #define LOGF_SAVE_DEF_STATE FALSE |
| #define HEAP_CHECK_DEF_STATE FALSE |
| #define MEM_USED_DEF_STATE FALSE |
| #define HEAP_USED_DEF_STATE FALSE |
| #define HEAP_FREE_DEF_STATE FALSE |
| #define IUFLARGS srcname, line |
| #define UUFLARGS ,srcname, line |
| #define BLK_LIMITER_SIZE 4 |
| #define LOGF_NAME "xalloc.log" |
| #define HEAPCHECKFREE |
( |
value |
|
) |
0 |
| #define HEAPFILLFREE |
( |
value |
|
) |
{} |
| #define PRINT |
( |
msg, |
|
|
arg1 |
|
) |
fprintf(stderr,msg,arg1) |
| #define ENDER |
( |
blk, |
|
|
len |
|
) |
((mem_limiter XPTR)(((INT8 XPTR)(blk))+(len))) |
| #define XBPTR |
( |
blk, |
|
|
n |
|
) |
(((INT8 XPTR)(blk))+(n)) |
Documentación de las funciones
| PRIVATE void _xalloc_error_handler |
( |
char *msg |
FLARGS |
) |
|
| PRIVATE void _logf_log |
( |
long |
count, |
|
|
unsigned long |
size, |
|
|
int freeing |
FLARGS | |
|
) |
| | |
| PRIVATE void _show_used |
( |
void |
|
) |
|
| PRIVATE void XPTR _prepare_block |
( |
INT8 XPTR |
p, |
|
|
unsigned long size |
FLARGS | |
|
) |
| | |
| void* _xmalloc_src |
( |
unsigned long size |
FLARGS |
) |
|
| void* _xcalloc_src |
( |
unsigned long |
nitems, |
|
|
unsigned long size |
FLARGS | |
|
) |
| | |
| void _xfree_src |
( |
void *block |
FLARGS |
) |
|
| unsigned long xusedmem |
( |
void |
|
) |
|
| unsigned long xusedheap |
( |
void |
|
) |
|
| char* _xstrdup_src |
( |
const char *str |
FLARGS |
) |
|
| unsigned long _xblksize_src |
( |
void *block |
FLARGS |
) |
|
| int testblk |
( |
void * |
block |
) |
|
| void _assertblk_src |
( |
void *block |
FLARGS |
) |
|
| VOID _assertheap_src |
( |
IFLARGS |
|
) |
|
| void xalloc_logf |
( |
int |
b |
) |
|
| void xalloc_heapcheck |
( |
int |
b |
) |
|
| void xalloc_showmem |
( |
int |
b |
) |
|
| void xalloc_showheap |
( |
int |
b |
) |
|
| void xalloc_showfree |
( |
int |
b |
) |
|
| void _xmem2disk_src |
( |
char * |
fname, |
|
|
void *block |
FLARGS | |
|
) |
| | |
| void* _xdisk2mem_src |
( |
char *fname |
FLARGS |
) |
|
Documentación de las variables