The following functions act as their libc counterparts. The allocated
memory is associated with the mach argument and is automatically
freed upon the call to sieve_machine_destroy (
mach)
.
Allocates size bytes and returns a pointer to the allocated memory.
This function returns a pointer to a new string which is a duplicate of the string str.
Changes the size of the memory block pointed to by ptr to size bytes. The contents will be unchanged to the minimum of the old and new sizes; newly allocated memory will be uninitialized. If ptr is
NULL
, the call is equivalent tosieve_malloc(
mach,
size)
; if size is equal to zero, the call is equivalent tosieve_mfree(
ptr)
. Unless ptr isNULL
, it must have been returned by an earlier call tosieve_malloc()
orsieve_mrealloc()
.
sieve_mfree()
frees the memory space pointed to by ptr and detaches it from the destructor list of mach. The ptr must have been returned by a previous call tosieve_malloc()
orsieve_mrealloc()
. Otherwise, or ifsieve_mfree(
ptr)
has already been called before, undefined behaviour occurs.If ptr is
NULL
, no operation is performed.