![]() ![]() | ![]() |
restructuring, add many code and many funcs
1: #ifndef __MQTTD_H 2: #define __MQTTD_H 3: 4: 5: struct tagStore { 6: char st_qos; 7: u_short st_msgid; 8: 9: mqtt_subscr_t st_subscr; 10: 11: SLIST_ENTRY(tagStore) st_node; 12: }; 13: 14: struct tagSession { 15: /* client session thread id */ 16: pthread_t sess_tid; 17: 18: /* client network settings */ 19: int sess_sock; 20: u_short sess_ka; 21: /* client send retry in miliseconds, if client not receive message */ 22: u_int sess_retry; 23: /* message work buffer */ 24: mqtt_msg_t *sess_buf; 25: 26: /* authentication user info */ 27: char sess_cid[MAX_CONNID]; 28: char sess_user[MAX_CRED]; 29: char sess_pass[MAX_CRED]; 30: char sess_addr[64]; 31: 32: /* connect flags */ 33: char sess_clean; 34: struct { 35: char flag; 36: char qos; 37: char retain; 38: char *topic; 39: char *msg; 40: } sess_will; 41: 42: /* Data Storage by QoS class */ 43: SLIST_HEAD(qosStore, tagStore) sess_store[MQTT_QOS_RESERVED]; 44: 45: TAILQ_ENTRY(tagSession) sess_node; 46: }; 47: 48: typedef TAILQ_HEAD(, tagSession) sessions_t; 49: 50: 51: extern sessions_t Sessions; 52: extern sched_root_task_t *root; 53: extern sl_config cfg; 54: 55: 56: #endif