TIFFmemory

Synopsis

#include <tiffio.h>
void *_TIFFmalloc(tmsize_t size)
void *_TIFFrealloc(void *buffer, tmsize_t size)
void _TIFFfree(void *buffer)
void _TIFFmemset(void *s, int c, tmsize_t n)
void _TIFFmemcpy(void *dest, const void *src, tmsize_t n)
int _TIFFmemcmp(const void *s1, const void *s2, tmsize_t n)
void *_TIFFCheckMalloc(TIFF *tif, tmsize_t nmemb, tmsize_t elem_size, const char *what)
void *_TIFFCheckRealloc(TIFF *tif, void *buffer, tmsize_t nmemb, tmsize_t elem_size, const char *what)

Description

These routines are provided for writing portable software that uses libtiff; they hide any memory-management related issues, such as dealing with segmented architectures found on 16-bit machines.

_TIFFmalloc() and _TIFFrealloc() are used to dynamically allocate and reallocate memory used by libtiff; such as memory passed into the I/O routines. Memory allocated through these interfaces is released back to the system using the _TIFFfree() routine.

Memory allocated through one of the above interfaces can be set to a known value using _TIFFmemset(), copied to another memory location using _TIFFmemcpy(), or compared for equality using _TIFFmemcmp(). These routines conform to the equivalent C routines: memset(), memcpy(), memcmp(), respectively.

_TIFFCheckMalloc() and _TIFFCheckRealloc() are checking for integer overflow before calling _TIFFmalloc() and _TIFFrealloc(), respectively.

Diagnostics

None.

See also

malloc (3), memory (3), libtiff (3tiff)