version 1.2.2.5, 2012/04/24 08:06:08
|
version 1.2.2.9, 2012/05/05 13:39:27
|
Line 2
|
Line 2
|
#define __MQTTD_H |
#define __MQTTD_H |
|
|
|
|
|
#define API_SERVER_SIDE |
|
#include <mqttapi.h> |
|
|
|
|
struct tagStore { |
struct tagStore { |
char st_qos; |
|
u_short st_msgid; |
u_short st_msgid; |
|
|
mqtt_subscr_t st_subscr; |
mqtt_subscr_t st_subscr; |
Line 42 struct tagSession {
|
Line 45 struct tagSession {
|
char *msg; |
char *msg; |
} sess_will; |
} sess_will; |
|
|
/* Data Storage by QoS class */ | /* session subscriptions */ |
SLIST_HEAD(tStore, tagStore) sess_txque[MQTT_QOS_RESERVED]; | SLIST_HEAD(tStore, tagStore) sess_subscr; |
| |
TAILQ_ENTRY(tagSession) sess_node; |
TAILQ_ENTRY(tagSession) sess_node; |
}; |
}; |
typedef TAILQ_HEAD(, tagSession) sessions_t; |
typedef TAILQ_HEAD(, tagSession) sessions_t; |
Line 59 struct tagPub {
|
Line 63 struct tagPub {
|
TAILQ_ENTRY(tagPub) pub_node; |
TAILQ_ENTRY(tagPub) pub_node; |
}; |
}; |
typedef TAILQ_HEAD(, tagPub) pubs_t; |
typedef TAILQ_HEAD(, tagPub) pubs_t; |
#define PUB_LOCK pthread_mutex_lock(&mtx_pub) | #define PUBS_LOCK pthread_mutex_lock(&mtx_pub) |
#define PUB_UNLOCK pthread_mutex_unlock(&mtx_pub) | #define PUBS_UNLOCK pthread_mutex_unlock(&mtx_pub) |
|
|
|
|
extern sessions_t Sessions; |
extern sessions_t Sessions; |
Line 68 extern pubs_t Pubs;
|
Line 72 extern pubs_t Pubs;
|
extern sched_root_task_t *root; |
extern sched_root_task_t *root; |
extern cfg_root_t cfg; |
extern cfg_root_t cfg; |
extern pthread_mutex_t mtx_sess, mtx_pub; |
extern pthread_mutex_t mtx_sess, mtx_pub; |
|
|
|
|
|
/* function prototypes */ |
|
void finiSession(struct tagSession *sess); |
|
void *startSession(sched_task_t *task); |
|
|
|
|
#endif |
#endif |