Type Alias riot_sys::gcoap_listener_t
source · pub type gcoap_listener_t = gcoap_listener;
Expand description
@brief A modular collection of resources for a server
Aliased Type§
struct gcoap_listener_t {
pub resources: *const coap_resource_t,
pub resources_len: u32,
pub tl_type: u8,
pub link_encoder: Option<unsafe extern "C" fn(_: *const coap_resource_t, _: *mut u8, _: u32, _: *mut coap_link_encoder_ctx_t) -> i32>,
pub next: *mut gcoap_listener,
pub request_matcher: Option<unsafe extern "C" fn(_: *mut gcoap_listener, _: *mut *const coap_resource_t, _: *mut coap_pkt_t) -> i32>,
}
Fields§
§resources: *const coap_resource_t
< First element in the array of resources
resources_len: u32
< Length of array
tl_type: u8
@brief Transport type for the listener
Any transport supported by the implementation can be set as a flag.
If @ref GCOAP_SOCKET_TYPE_UNDEF is set, the listener listens on all
supported transports. If non of the transports beyond UDP are compiled in
(i.e. no usage of modules gcoap_dtls
, …) this will be ignored and
@ref GCOAP_SOCKET_TYPE_UDP assumed.
link_encoder: Option<unsafe extern "C" fn(_: *const coap_resource_t, _: *mut u8, _: u32, _: *mut coap_link_encoder_ctx_t) -> i32>
< Writes a link for a resource
next: *mut gcoap_listener
< Next listener in list
request_matcher: Option<unsafe extern "C" fn(_: *mut gcoap_listener, _: *mut *const coap_resource_t, _: *mut coap_pkt_t) -> i32>
@brief Function that picks a suitable request handler from a request.
@note Leaving this NULL selects the default strategy that picks handlers by matching their Uri-Path to resource paths (as per the documentation of the @ref resources and @ref resources_len fields). Alternative handlers may cast the @ref resources and @ref resources_len fields to fit their needs.