diff options
| author | Oskari Timperi <oskari.timperi@iki.fi> | 2017-03-18 09:29:19 +0200 |
|---|---|---|
| committer | Oskari Timperi <oskari.timperi@iki.fi> | 2017-03-18 09:29:19 +0200 |
| commit | 7aeef53b089272f4633cc40512296bfd884a58d4 (patch) | |
| tree | 894753ced0495f725ad8362859f88d5b61e29eb7 /src/message.h | |
| parent | e9958e8a0f5aa5fbe0a4a03be42b8bf640add6f7 (diff) | |
| parent | 2c76b0da9e0aba2211d5b4a8e51c79e47ad9b6c8 (diff) | |
| download | mqtt-0.5.tar.gz mqtt-0.5.zip | |
Merge branch 'the-great-refactor'v0.5
* the-great-refactor:
Add big_message_test
Fix publish message serialization
Modify the code to use nonblocking sockets
Fix indentation
Free userName and password in MqttClientFree()
Add forgotten files
Massive refactoring of the internals
Diffstat (limited to 'src/message.h')
| -rw-r--r-- | src/message.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/message.h b/src/message.h new file mode 100644 index 0000000..04a3d61 --- /dev/null +++ b/src/message.h @@ -0,0 +1,40 @@ +#ifndef MESSAGE_H +#define MESSAGE_H + +#include <stdint.h> + +#include "queue.h" +#include <bstrlib/bstrlib.h> + +enum MqttMessageState +{ + MqttMessageStateQueued, + MqttMessageStatePublish, + MqttMessageStateWaitPubAck, + MqttMessageStateWaitPubRec, + MqttMessageStateWaitPubComp, + MqttMessageStateWaitPubRel +}; + +typedef struct MqttMessage MqttMessage; + +struct MqttMessage +{ + int state; + int qos; + int retain; + int dup; + int padding; + uint16_t id; + int64_t timestamp; + bstring topic; + bstring payload; + TAILQ_ENTRY(MqttMessage) chain; +}; + +typedef struct MqttMessageList MqttMessageList; +TAILQ_HEAD(MqttMessageList, MqttMessage); + +void MqttMessageFree(MqttMessage *msg); + +#endif |
