|
|
| version 1.1.2.1, 2011/12/08 14:52:47 | version 1.2.2.11, 2012/05/22 14:15:04 |
|---|---|
| Line 2 | Line 2 |
| #define __MQTTD_H | #define __MQTTD_H |
| #define API_SERVER_SIDE | |
| #include <mqttapi.h> | |
| struct tagStore { | |
| u_short st_msgid; | |
| mqtt_subscr_t st_subscr; | |
| SLIST_ENTRY(tagStore) st_node; | |
| }; | |
| struct tagSession { | |
| /* server dispatcher */ | |
| mqtt_srv_t *sess_srv; | |
| /* client network settings */ | |
| int sess_sock; | |
| u_short sess_ka; | |
| /* client send retry in miliseconds, if client not receive message */ | |
| u_int sess_retry; | |
| /* message work buffer */ | |
| mqtt_msg_t *sess_buf; | |
| /* authentication user info */ | |
| char sess_cid[MAX_CONNID]; | |
| char sess_user[MAX_CRED]; | |
| char sess_pass[MAX_CRED]; | |
| char sess_addr[64]; | |
| /* connect flags */ | |
| char sess_clean; | |
| struct { | |
| char flag; | |
| char qos; | |
| char retain; | |
| char *topic; | |
| char *msg; | |
| } sess_will; | |
| /* session subscriptions */ | |
| SLIST_HEAD(tStore, tagStore) sess_subscr; | |
| TAILQ_ENTRY(tagSession) sess_node; | |
| }; | |
| typedef TAILQ_HEAD(, tagSession) sessions_t; | |
| extern sessions_t Sessions; | |
| extern sched_root_task_t *root; | |
| extern cfg_root_t cfg; | |
| /* function prototypes */ | |
| void *startSession(sched_task_t *task); | |
| #endif | #endif |