libcoap 4.3.1
|
structure for CoAP PDUs More...
#include <coap_pdu_internal.h>
Data Fields | |
coap_pdu_type_t | type |
message type More... | |
coap_pdu_code_t | code |
request method (value 1–31) or response code (value 64-255) More... | |
coap_mid_t | mid |
message id, if any, in regular host byte order More... | |
uint8_t | max_hdr_size |
space reserved for protocol-specific header More... | |
uint8_t | hdr_size |
actual size used for protocol-specific header (0 until header is encoded) More... | |
uint8_t | token_length |
length of Token More... | |
uint8_t | crit_opt |
Set if unknown critical option for proxy. More... | |
uint16_t | max_opt |
highest option number in PDU More... | |
size_t | alloc_size |
allocated storage for token, options and payload More... | |
size_t | used_size |
used bytes of storage for token, options and payload More... | |
size_t | max_size |
maximum size for token, options and payload, or zero for variable size pdu More... | |
uint8_t * | token |
first byte of token, if any, or options More... | |
uint8_t * | data |
first byte of payload, if any More... | |
const uint8_t * | body_data |
Holds ptr to re-assembled data or NULL. More... | |
size_t | body_length |
Holds body data length. More... | |
size_t | body_offset |
Holds body data offset. More... | |
size_t | body_total |
Holds body data total size. More... | |
coap_lg_xmit_t * | lg_xmit |
Holds ptr to lg_xmit if sending a set of blocks. More... | |
structure for CoAP PDUs
Separate COAP_PDU_BUF is allocated with offsets held in coap_pdu_t.
token, if any, follows the fixed size header, then optional options until payload marker (0xff) (if paylooad), then the optional payload.
Memory layout is: <—header—>|<—token—><—options—>0xff<—payload—>
header is addressed with a negative offset to token, its maximum size is max_hdr_size.
allocated buffer always starts max_hdr_size before token.
options starts at token + token_length. payload starts at data, its length is used_size - (data - token).
alloc_size, used_size and max_size are the offsets from token.
Definition at line 106 of file coap_pdu_internal.h.
size_t coap_pdu_t::alloc_size |
allocated storage for token, options and payload
Definition at line 118 of file coap_pdu_internal.h.
const uint8_t* coap_pdu_t::body_data |
Holds ptr to re-assembled data or NULL.
Definition at line 136 of file coap_pdu_internal.h.
size_t coap_pdu_t::body_length |
Holds body data length.
Definition at line 137 of file coap_pdu_internal.h.
size_t coap_pdu_t::body_offset |
Holds body data offset.
Definition at line 138 of file coap_pdu_internal.h.
size_t coap_pdu_t::body_total |
Holds body data total size.
Definition at line 139 of file coap_pdu_internal.h.
coap_pdu_code_t coap_pdu_t::code |
request method (value 1–31) or response code (value 64-255)
Definition at line 108 of file coap_pdu_internal.h.
uint8_t coap_pdu_t::crit_opt |
Set if unknown critical option for proxy.
Definition at line 116 of file coap_pdu_internal.h.
uint8_t* coap_pdu_t::data |
first byte of payload, if any
Definition at line 125 of file coap_pdu_internal.h.
uint8_t coap_pdu_t::hdr_size |
actual size used for protocol-specific header (0 until header is encoded)
Definition at line 113 of file coap_pdu_internal.h.
coap_lg_xmit_t* coap_pdu_t::lg_xmit |
Holds ptr to lg_xmit if sending a set of blocks.
Definition at line 140 of file coap_pdu_internal.h.
uint8_t coap_pdu_t::max_hdr_size |
space reserved for protocol-specific header
Definition at line 112 of file coap_pdu_internal.h.
uint16_t coap_pdu_t::max_opt |
highest option number in PDU
Definition at line 117 of file coap_pdu_internal.h.
size_t coap_pdu_t::max_size |
maximum size for token, options and payload, or zero for variable size pdu
Definition at line 122 of file coap_pdu_internal.h.
coap_mid_t coap_pdu_t::mid |
message id, if any, in regular host byte order
Definition at line 110 of file coap_pdu_internal.h.
uint8_t* coap_pdu_t::token |
first byte of token, if any, or options
Definition at line 124 of file coap_pdu_internal.h.
uint8_t coap_pdu_t::token_length |
length of Token
Definition at line 115 of file coap_pdu_internal.h.
coap_pdu_type_t coap_pdu_t::type |
message type
Definition at line 107 of file coap_pdu_internal.h.
size_t coap_pdu_t::used_size |
used bytes of storage for token, options and payload
Definition at line 120 of file coap_pdu_internal.h.