--- mqtt/inc/Attic/aitmqtt.h 2011/12/09 09:55:27 1.1.1.1.2.32 +++ mqtt/inc/Attic/aitmqtt.h 2011/12/13 15:23:43 1.1.1.1.2.34 @@ -108,14 +108,17 @@ typedef struct { typedef unsigned char mqtthdr_protover_t; -typedef struct { - unsigned char reserved:1, - clean_sess:1, - will_flg:1, - will_qos:2, - will_retain:1, - password:1, - username:1; +typedef union { + struct { + unsigned char reserved:1, + clean_sess:1, + will_flg:1, + will_qos:2, + will_retain:1, + password:1, + username:1; + }; + unsigned char flags; } __packed mqtthdr_connflgs_t; typedef struct { @@ -231,6 +234,7 @@ inline mqtt_subscr_t *mqtt_subRealloc(mqtt_subscr_t * * * @buf = Message buffer * @csConnID = ConnectID + * @kasec = Keep alive timeout * @csUser = Username if !=NULL * @csPass = Password for Username, only if csUser is set * @csWillTopic = Will Topic if !=NULL Will Flags set into message @@ -241,7 +245,7 @@ inline mqtt_subscr_t *mqtt_subRealloc(mqtt_subscr_t * * return: -1 error or >-1 message size for send */ int mqtt_msgCONNECT(mqtt_msg_t * __restrict buf, const char *csConnID, - const char *csUser, const char *csPass, + unsigned short kasec, const char *csUser, const char *csPass, const char *csWillTopic, const char *csWillMessage, unsigned char ClrSess, unsigned char WillQOS, unsigned char WillRetain); /* @@ -386,7 +390,7 @@ int mqtt_msgUNSUBACK(mqtt_msg_t * __restrict buf, unsi * @psWillMessage = Will Message, may be NULL if !NULL must be free() after use! * return: .reserved == 1 is error or == 0 connection flags & msg ok */ -mqtthdr_connflgs_t mqtt_readCONNECT(mqtt_msg_t * __restrict buf, unsigned short *kasec, +mqtthdr_connack_t mqtt_readCONNECT(mqtt_msg_t * __restrict buf, unsigned short *kasec, char * __restrict psConnID, int connLen, char * __restrict psUser, int userLen, char * __restrict psPass, int passLen, char ** __restrict psWillTopic, char ** __restrict psWillMessage);