libcoap  4.3.0
coap_context_t Struct Reference

The CoAP stack's global state is stored in a coap_context_t object. More...

#include <coap_net_internal.h>

+ Collaboration diagram for coap_context_t:

Data Fields

coap_opt_filter_t known_options
 
coap_resource_tresources
 hash table or list of known resources More...
 
coap_resource_tunknown_resource
 can be used for handling unknown resources More...
 
coap_resource_tproxy_uri_resource
 can be used for handling proxy URI resources More...
 
coap_resource_release_userdata_handler_t release_userdata
 function to release user_data when resource is deleted More...
 
coap_async_tasync_state
 list of asynchronous message ids More...
 
coap_tick_t sendqueue_basetime
 The time stamp in the first element of the sendqeue is relative to sendqueue_basetime. More...
 
coap_queue_tsendqueue
 
coap_endpoint_tendpoint
 the endpoints used for listening
More...
 
coap_session_tsessions
 client sessions More...
 
coap_response_handler_t response_handler
 
coap_nack_handler_t nack_handler
 
coap_ping_handler_t ping_handler
 
coap_pong_handler_t pong_handler
 
coap_event_handler_t handle_event
 Callback function that is used to signal events to the application. More...
 
ssize_t(* network_send )(coap_socket_t *sock, const coap_session_t *session, const uint8_t *data, size_t datalen)
 
ssize_t(* network_read )(coap_socket_t *sock, coap_packet_t *packet)
 
size_t(* get_client_psk )(const coap_session_t *session, const uint8_t *hint, size_t hint_len, uint8_t *identity, size_t *identity_len, size_t max_identity_len, uint8_t *psk, size_t max_psk_len)
 
size_t(* get_server_psk )(const coap_session_t *session, const uint8_t *identity, size_t identity_len, uint8_t *psk, size_t max_psk_len)
 
size_t(* get_server_hint )(const coap_session_t *session, uint8_t *hint, size_t max_hint_len)
 
void * dtls_context
 
coap_dtls_spsk_t spsk_setup_data
 Contains the initial PSK server setup data. More...
 
unsigned int session_timeout
 Number of seconds of inactivity after which an unused session will be closed. More...
 
unsigned int max_idle_sessions
 Maximum number of simultaneous unused sessions per endpoint. More...
 
unsigned int max_handshake_sessions
 Maximum number of simultaneous negotating sessions per endpoint. More...
 
unsigned int ping_timeout
 Minimum inactivity time before sending a ping message. More...
 
unsigned int csm_timeout
 Timeout for waiting for a CSM from the remote side. More...
 
uint8_t observe_pending
 Observe response pending. More...
 
uint8_t block_mode
 Zero or more COAP_BLOCK_ or'd options. More...
 
uint64_t etag
 Next ETag to use. More...
 
coap_cache_entry_tcache
 CoAP cache-entry cache. More...
 
uint16_t * cache_ignore_options
 CoAP options to ignore when creating a cache-key. More...
 
size_t cache_ignore_count
 The number of CoAP options to ignore when creating a cache-key. More...
 
void * app
 application-specific data More...
 

Detailed Description

The CoAP stack's global state is stored in a coap_context_t object.

Definition at line 45 of file coap_net_internal.h.

Field Documentation

◆ app

void* coap_context_t::app

application-specific data

Definition at line 138 of file coap_net_internal.h.

◆ async_state

coap_async_t* coap_context_t::async_state

list of asynchronous message ids

Definition at line 60 of file coap_net_internal.h.

◆ block_mode

uint8_t coap_context_t::block_mode

Zero or more COAP_BLOCK_ or'd options.

Definition at line 130 of file coap_net_internal.h.

◆ cache

coap_cache_entry_t* coap_context_t::cache

CoAP cache-entry cache.

Definition at line 133 of file coap_net_internal.h.

◆ cache_ignore_count

size_t coap_context_t::cache_ignore_count

The number of CoAP options to ignore when creating a cache-key.

Definition at line 136 of file coap_net_internal.h.

◆ cache_ignore_options

uint16_t* coap_context_t::cache_ignore_options

CoAP options to ignore when creating a cache-key.

Definition at line 134 of file coap_net_internal.h.

◆ csm_timeout

unsigned int coap_context_t::csm_timeout

Timeout for waiting for a CSM from the remote side.

0 means disabled.

Definition at line 127 of file coap_net_internal.h.

◆ dtls_context

void* coap_context_t::dtls_context

Definition at line 110 of file coap_net_internal.h.

◆ endpoint

coap_endpoint_t* coap_context_t::endpoint

the endpoints used for listening

Definition at line 68 of file coap_net_internal.h.

◆ etag

uint64_t coap_context_t::etag

Next ETag to use.

Definition at line 131 of file coap_net_internal.h.

◆ get_client_psk

size_t(* coap_context_t::get_client_psk) (const coap_session_t *session, const uint8_t *hint, size_t hint_len, uint8_t *identity, size_t *identity_len, size_t max_identity_len, uint8_t *psk, size_t max_psk_len)

Definition at line 100 of file coap_net_internal.h.

◆ get_server_hint

size_t(* coap_context_t::get_server_hint) (const coap_session_t *session, uint8_t *hint, size_t max_hint_len)

Definition at line 107 of file coap_net_internal.h.

◆ get_server_psk

size_t(* coap_context_t::get_server_psk) (const coap_session_t *session, const uint8_t *identity, size_t identity_len, uint8_t *psk, size_t max_psk_len)

Definition at line 104 of file coap_net_internal.h.

◆ handle_event

coap_event_handler_t coap_context_t::handle_event

Callback function that is used to signal events to the application.

This field is set by coap_set_event_handler().

Definition at line 93 of file coap_net_internal.h.

◆ known_options

coap_opt_filter_t coap_context_t::known_options

Definition at line 46 of file coap_net_internal.h.

◆ max_handshake_sessions

unsigned int coap_context_t::max_handshake_sessions

Maximum number of simultaneous negotating sessions per endpoint.

0 means use default.

Definition at line 121 of file coap_net_internal.h.

◆ max_idle_sessions

unsigned int coap_context_t::max_idle_sessions

Maximum number of simultaneous unused sessions per endpoint.

0 means no maximum.

Definition at line 118 of file coap_net_internal.h.

◆ nack_handler

coap_nack_handler_t coap_context_t::nack_handler

Definition at line 85 of file coap_net_internal.h.

◆ network_read

ssize_t(* coap_context_t::network_read) (coap_socket_t *sock, coap_packet_t *packet)

Definition at line 98 of file coap_net_internal.h.

◆ network_send

ssize_t(* coap_context_t::network_send) (coap_socket_t *sock, const coap_session_t *session, const uint8_t *data, size_t datalen)

Definition at line 95 of file coap_net_internal.h.

◆ observe_pending

uint8_t coap_context_t::observe_pending

Observe response pending.

Definition at line 129 of file coap_net_internal.h.

◆ ping_handler

coap_ping_handler_t coap_context_t::ping_handler

Definition at line 86 of file coap_net_internal.h.

◆ ping_timeout

unsigned int coap_context_t::ping_timeout

Minimum inactivity time before sending a ping message.

0 means disabled.

Definition at line 124 of file coap_net_internal.h.

◆ pong_handler

coap_pong_handler_t coap_context_t::pong_handler

Definition at line 87 of file coap_net_internal.h.

◆ proxy_uri_resource

coap_resource_t* coap_context_t::proxy_uri_resource

can be used for handling proxy URI resources

Definition at line 51 of file coap_net_internal.h.

◆ release_userdata

coap_resource_release_userdata_handler_t coap_context_t::release_userdata

function to release user_data when resource is deleted

Definition at line 53 of file coap_net_internal.h.

◆ resources

coap_resource_t* coap_context_t::resources

hash table or list of known resources

Definition at line 47 of file coap_net_internal.h.

◆ response_handler

coap_response_handler_t coap_context_t::response_handler

Definition at line 84 of file coap_net_internal.h.

◆ sendqueue

coap_queue_t* coap_context_t::sendqueue

Definition at line 67 of file coap_net_internal.h.

◆ sendqueue_basetime

coap_tick_t coap_context_t::sendqueue_basetime

The time stamp in the first element of the sendqeue is relative to sendqueue_basetime.

Definition at line 66 of file coap_net_internal.h.

◆ session_timeout

unsigned int coap_context_t::session_timeout

Number of seconds of inactivity after which an unused session will be closed.

0 means use default.

Definition at line 115 of file coap_net_internal.h.

◆ sessions

coap_session_t* coap_context_t::sessions

client sessions

Definition at line 69 of file coap_net_internal.h.

◆ spsk_setup_data

coap_dtls_spsk_t coap_context_t::spsk_setup_data

Contains the initial PSK server setup data.

Definition at line 112 of file coap_net_internal.h.

◆ unknown_resource

coap_resource_t* coap_context_t::unknown_resource

can be used for handling unknown resources

Definition at line 49 of file coap_net_internal.h.


The documentation for this struct was generated from the following file: