NAME

cxMemBoundsCheck - check the memory bounds for an arbitrary area of data memory

C SPECIFICATION

#include <cx/DataOps.h>

typedef enum { cx_data_dead, cx_mem_size, cx_mem_bounds, cx_data_ok } cxDataCheckError;

typedef struct { cxDataCheckError error; void *ptr; char *msg;

} cxDataCheckErrorInfo;

cxDataCheckErrorInfo *cxMemBoundsCheck(void *ptr, size_t size )

FORTRAN SPECIFICATION

integer cx_data_dead
integer cx_mem_size
integer cx_mem_bounds
integer cx_data_ok

parameter (cx_data_dead = 0) parameter (cx_mem_size = 1) parameter (cx_mem_bounds = 2) parameter (cx_data_ok = 3)

integer function cxMemBoundsCheck(ptr, description) integer ptr integer description

PARAMETERS

ptr
The data memory to be checked.
size
Minimum expected size of memory.

DESCRIPTION

cxMemBoundsCheck checks to see that the bounds are intact around the memory pointed to by ptr. The memory is assumed to have been allocated to at least size bytes. If either bound is damaged, the cxDataCheckAction defined by cxDataCheckingSet is called, a cxDataCheckErrorInfo structure is returned. Otherwise, a NULL is returned. It is the user's responsibility to destroy the returned error structure using cxDataCheckErrorInfoDel. The contents of the error structure are described in more detail in cxDataCheck.

SEE ALSO

cxDataCheckingSet(3E), cxDataCheckErrorInfoDel(3E)
Last modified: Mon Nov 18 13:50:52 GMT 1996
[ Documentation Home ]
© The Numerical Algorithms Group Ltd, Oxford UK. 1996