libcoap 4.3.5-develop-4c3f4af
Loading...
Searching...
No Matches
coap_block_internal.h File Reference

CoAP block internal information. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  coap_lg_range
struct  coap_rblock_t
 Structure to keep track of received blocks. More...
struct  coap_l_block1_t
 Structure to keep track of block1 specific information (Requests). More...
struct  coap_l_block2_t
 Structure to keep track of block2 specific information (Responses). More...
struct  coap_lg_xmit_data_t
struct  coap_lg_xmit_t
 Structure to hold large body (many blocks) transmission information. More...

Macros

#define STATE_MAX_BLK_CNT_BITS   20
#define STATE_TOKEN_BASE(t)
#define STATE_TOKEN_RETRY(t)
#define STATE_TOKEN_FULL(t, r)
#define COAP_BLOCK_SET_MASK
#define COAP_BLOCK_MAX_SIZE_MASK   0x7000000 /* (svr)Mask to get the max supported block size */
#define COAP_BLOCK_MAX_SIZE_SHIFT   24 /* (svr)Mask shift to get the max supported block size */
#define COAP_BLOCK_MAX_SIZE_GET(a)
#define COAP_BLOCK_MAX_SIZE_SET(a)
#define COAP_SINGLE_BLOCK_OR_Q   (COAP_BLOCK_SINGLE_BODY)
#define COAP_RBLOCK_CNT   4
#define coap_check_update_token(a, b)

Typedefs

typedef struct coap_rblock_t coap_rblock_t
 Structure to keep track of received blocks.
typedef struct coap_l_block1_t coap_l_block1_t
 Structure to keep track of block1 specific information (Requests).
typedef struct coap_l_block2_t coap_l_block2_t
 Structure to keep track of block2 specific information (Responses).
typedef struct coap_lg_xmit_data_t coap_lg_xmit_data_t

Enumerations

enum  coap_recurse_t { COAP_RECURSE_OK , COAP_RECURSE_NO }

Functions

coap_lg_xmit_tcoap_find_lg_xmit (coap_session_t *session, coap_pdu_t *pdu)
 Find the current lg_xmit for the session that matches the pdu.
void coap_block_delete_lg_xmit (coap_session_t *session, coap_lg_xmit_t *lg_xmit)
 Remove a lg_xmit.
COAP_STATIC_INLINE void coap_lg_xmit_release_lkd (coap_session_t *session, coap_lg_xmit_t *lg_xmit)
 Decrement reference counter on a lg_xmit.
COAP_STATIC_INLINE void coap_lg_xmit_reference_lkd (coap_lg_xmit_t *lg_xmit)
 Increment reference counter on a lg_xmit.
int coap_block_check_lg_xmit_timeouts (coap_session_t *session, coap_tick_t now, coap_tick_t *tim_rem)
void coap_check_code_lg_xmit (const coap_session_t *session, const coap_pdu_t *request, coap_pdu_t *response, const coap_resource_t *resource, const coap_string_t *query)
 The function checks that the code in a newly formed lg_xmit created by coap_add_data_large_response_lkd() is updated.
void coap_context_set_block_mode_lkd (coap_context_t *context, uint32_t block_mode)
 Set the context level CoAP block handling bits for handling RFC7959.
int coap_context_set_max_block_size_lkd (coap_context_t *context, size_t max_block_size)
 Set the context level maximum block size that the server supports when sending or receiving packets with Block1 or Block2 options.
coap_binary_tcoap_block_build_body_lkd (coap_binary_t *body_data, size_t length, const uint8_t *data, size_t offset, size_t total)
 Re-assemble payloads into a body.

Detailed Description

CoAP block internal information.

Definition in file coap_block_internal.h.