libadimalloc - Application Data Integrity aware memory allocation library.
cc [ flag... ] file... -ladimalloc [ library... ]
Functions in this library provide scalable object-caching memory allocation with multithreaded application support.
The libadimalloc library provides detection of buffer overruns, out of bounds pointers, stale pointers, and use after free errors using the SPARC Application Data Integrity (ADI) APIS. For more information, see the adi(7) man page.
The libadimalloc library also provides extensive debugging support, including detection of memory leaks, multiple frees, use of uninitialized data, use of freed data, and many other common programming errors. For more information, see the mdb(1) man page.
For legacy reasons ADIHEAP is not supported by libadimalloc. A dedicated mode, adiheap_compat is provided to support it. For more information, see the adimalloc_debug(3MALLOC) man page.
The shared object libadimalloc.so.1 provides the public interfaces defined below. For more information on shared object interfaces, see the intro(3) man page.
See malloc(3C) for information on these interfaces:
|
The shared object also provides the following debugging interfaces. For more information, see the adimalloc_debug(3MALLOC) man page.
|
64-bit shared object
See malloc(3C) for an overview and comparison of all the allocation libraries provided by Oracle Solaris.
See attributes(7) for descriptions of the following attributes:
The attribute type and attribute values for the functions calloc(), free(), freezero(), malloc(), malloc_usable_size(), memalign(), realloc(), and valloc() are as follows:
|
The attribute type and attribute value for the functions, adimalloc_debug_init() and adimalloc_logging_init() is as follows:
|
adi(2), adi(3C), malloc(3C), intro(3), adimalloc_debug(3MALLOC), adi(7), attributes(7)
This API is Volatile and as such can change at any time and for any reason. See the Volatile entry of the Classifications section of attributes(7).