129#include <lwip/memp.h>
140#define coap_malloc_type(type, asize) \
141 (((asize) <= memp_pools[MEMP_ ## type]->size) ? \
142 memp_malloc(MEMP_ ## type) : NULL)
143#define coap_free_type(type, p) memp_free(MEMP_ ## type, p)
146#define coap_realloc_type(type, p, asize) \
147 ((p) ? ((asize) <= memp_pools[MEMP_ ## type]->size) ? (p) : NULL : coap_malloc_type(type, asize))
155 LWIP_ASSERT(
"coap_malloc must not be used in lwIP", 0);
161 LWIP_ASSERT(
"coap_free must not be used in lwIP", 0);
COAP_STATIC_INLINE void coap_free(void *object)
Wrapper function to coap_free_type() for backwards compatibility.
COAP_STATIC_INLINE void * coap_malloc(size_t size)
Wrapper function to coap_malloc_type() for backwards compatibility.
void coap_memory_init(void)
Initializes libcoap's memory management.
coap_memory_tag_t
Type specifiers for coap_malloc_type().
void * coap_realloc_type(coap_memory_tag_t type, void *p, size_t size)
Reallocates a chunk p of bytes created by coap_malloc_type() or coap_realloc_type() and returns a poi...
void * coap_malloc_type(coap_memory_tag_t type, size_t size)
Allocates a chunk of size bytes and returns a pointer to the newly allocated memory.
void coap_free_type(coap_memory_tag_t type, void *p)
Releases the memory that was allocated by coap_malloc_type().
#define COAP_STATIC_INLINE