libcoap  4.1.2
Enumerations | Functions
mem.h File Reference
#include <stdlib.h>
Include dependency graph for mem.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Enumerations

enum  coap_memory_tag_t {
  COAP_STRING, COAP_ATTRIBUTE_NAME, COAP_ATTRIBUTE_VALUE, COAP_PACKET,
  COAP_NODE, COAP_CONTEXT, COAP_ENDPOINT, COAP_PDU,
  COAP_PDU_BUF, COAP_RESOURCE, COAP_RESOURCEATTR
}
 Type specifiers for coap_malloc_type(). More...
 

Functions

void coap_memory_init (void)
 Initializes libcoap's memory management. More...
 
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. More...
 
void coap_free_type (coap_memory_tag_t type, void *p)
 Releases the memory that was allocated by coap_malloc_type(). More...
 
static void * coap_malloc (size_t size)
 Wrapper function to coap_malloc_type() for backwards compatibility. More...
 
static void coap_free (void *object)
 Wrapper function to coap_free_type() for backwards compatibility. More...
 

Enumeration Type Documentation

§ coap_memory_tag_t

Type specifiers for coap_malloc_type().

Memory objects can be typed to facilitate arrays of type objects to be used instead of dynamic memory management on constrained devices.

Enumerator
COAP_STRING 
COAP_ATTRIBUTE_NAME 
COAP_ATTRIBUTE_VALUE 
COAP_PACKET 
COAP_NODE 
COAP_CONTEXT 
COAP_ENDPOINT 
COAP_PDU 
COAP_PDU_BUF 
COAP_RESOURCE 
COAP_RESOURCEATTR 

Definition at line 29 of file mem.h.

Function Documentation

§ coap_free()

static void coap_free ( void *  object)
inlinestatic

Wrapper function to coap_free_type() for backwards compatibility.

Definition at line 77 of file mem.h.

Here is the call graph for this function:
Here is the caller graph for this function:

§ coap_free_type()

void coap_free_type ( coap_memory_tag_t  type,
void *  p 
)

Releases the memory that was allocated by coap_malloc_type().

The type tag type must be the same that was used for allocating the object pointed to by .

Parameters
typeThe type of the object to release.
pA pointer to memory that was allocated by coap_malloc_type().
Here is the caller graph for this function:

§ coap_malloc()

static void* coap_malloc ( size_t  size)
inlinestatic

Wrapper function to coap_malloc_type() for backwards compatibility.

Definition at line 70 of file mem.h.

Here is the call graph for this function:
Here is the caller graph for this function:

§ coap_malloc_type()

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.

The type is used to select the appropriate storage container on constrained devices. The storage allocated by coap_malloc_type() must be released with coap_free_type().

Parameters
typeThe type of object to be stored.
sizeThe number of bytes requested.
Returns
A pointer to the allocated storage or NULL on error.
Here is the caller graph for this function:

§ coap_memory_init()

void coap_memory_init ( void  )

Initializes libcoap's memory management.

This function must be called once before coap_malloc() can be used on constrained devices.

Here is the caller graph for this function: