41 #ifdef MQTT_PROP_CONF_PROP_USE_MEMB 42 #define MQTT_PROP_USE_MEMB MQTT_PROP_CONF_PROP_USE_MEMB 44 #define MQTT_PROP_USE_MEMB 1 48 #define MQTT_PROP_MAX_OUT_PROP_LISTS 1 53 #define MQTT_PROP_MAX_OUT_PROPS 2 56 #define MQTT_PROP_MAX_PROP_LENGTH 32 60 #define MQTT_PROP_MAX_PROP_LEN_BYTES 2 62 #define MQTT_PROP_MAX_NUM_TOPIC_ALIASES 1 64 #define MQTT_PROP_LIST_NONE NULL 66 struct mqtt_prop_list {
68 uint32_t properties_len;
69 uint8_t properties_len_enc[MQTT_PROP_MAX_PROP_LEN_BYTES];
70 uint8_t properties_len_enc_bytes;
75 struct mqtt_prop_out_property {
77 struct mqtt_prop_out_property *next;
85 uint32_t property_len;
87 uint8_t val[MQTT_PROP_MAX_PROP_LENGTH];
90 struct mqtt_prop_bin_data {
92 uint8_t data[MQTT_PROP_MAX_PROP_LENGTH];
95 struct mqtt_prop_auth_event {
96 struct mqtt_string auth_method;
97 struct mqtt_prop_bin_data auth_data;
100 void mqtt_prop_print_input_props(
struct mqtt_connection *conn);
102 uint32_t mqtt_prop_encode(
struct mqtt_prop_out_property **prop_out, mqtt_vhdr_prop_t prop_id,
105 void mqtt_prop_parse_connack_props(
struct mqtt_connection *conn);
107 void mqtt_prop_parse_auth_props(
struct mqtt_connection *conn,
struct mqtt_prop_auth_event *event);
109 void mqtt_prop_decode_input_props(
struct mqtt_connection *conn);
111 uint8_t mqtt_prop_register(
struct mqtt_prop_list **prop_list,
112 struct mqtt_prop_out_property **prop_out,
113 #
if !MQTT_PROP_USE_MEMB
114 struct mqtt_prop_out_property *prop,
117 mqtt_vhdr_prop_t prop_id, ...);
119 void mqtt_prop_create_list(
struct mqtt_prop_list **prop_list_out);
121 void mqtt_prop_print_list(
struct mqtt_prop_list *prop_list, mqtt_vhdr_prop_t prop_id);
123 void mqtt_prop_clear_list(
struct mqtt_prop_list **prop_list);
125 void mqtt_props_init();
Header file for the Contiki MQTT engine.
#define LIST_STRUCT(name)
Declare a linked list inside a structure declaraction.