Diff for /mqtt/inc/Attic/aitmqtt.h between versions 1.1.1.1.2.1 and 1.1.1.1.2.4

version 1.1.1.1.2.1, 2011/11/07 13:34:06 version 1.1.1.1.2.4, 2011/11/07 16:55:46
Line 2 Line 2
 #define __AITMQTT_H  #define __AITMQTT_H
   
   
   #define MQTT_DATA_MAX           268435455
   #define MQTT_CONN_STR           "MQIsdp"
   #define MQTT_PROTO_VER          3
   #define MQTT_KEEPALIVE          10
   
   /* FIXED HEADER */
   
 struct mqtthdr {  struct mqtthdr {
        unsigned char   mqtt_retain : 1,         struct {
                        mqtt_qos : 2,                unsigned char   retain:1, 
                        mqtt_dup : 1,                                qos:2,
                        mqtt_type : 4;                                dup:1,
        unsigned char   mqtt_len;                                type:4;
};        } mqtt_msg;
         unsigned char           mqtt_len[1];    /* may be grow to 4 bytes */
 } __packed;
   
 #define MQTT_TYPE_UNKNOWN       0       /* reserved */  #define MQTT_TYPE_UNKNOWN       0       /* reserved */
 #define MQTT_TYPE_CONNECT       1       /* client request to connect to server */  #define MQTT_TYPE_CONNECT       1       /* client request to connect to server */
Line 68  struct mqtthdr { Line 77  struct mqtthdr {
                                            A server may delete a retained message if it receives a message                                              A server may delete a retained message if it receives a message 
                                            with a zero-length payload and the Retain flag set on the same topic. */                                             with a zero-length payload and the Retain flag set on the same topic. */
   
   /* VARIABLE HEADERS */
   
   #define MQTT_RETCODE_ACCEPTED           0
   #define MQTT_RETCODE_REFUSE_VER         1
   #define MQTT_RETCODE_REFUSE_ID          2
   #define MQTT_RETCODE_REFUSE_UNAVAIL     3
   #define MQTT_RETCODE_REFUSE_USERPASS    4
   #define MQTT_RETCODE_DENIED             5
   
   
   typedef union {
           struct {
                   unsigned short  m:8,
                                   l:8;
           } sb;
           unsigned short  val;
   } mqtthdr_val_t;
   
   typedef struct {
           mqtthdr_val_t   var_sb;
           unsigned char   var_data[0];
   } __packed mqtthdr_var_t;
   
   typedef unsigned char mqtthdr_protover_t;
   typedef unsigned char mqtthdr_retcode_t;
   
   typedef struct {
           unsigned char   reserved:1,
                           clean_sess:1,
                           will_flg:1,
                           will_qos:2,
                           will_retain:1,
                           password:1,
                           username:1;
   } __packed mqtthdr_connflgs_t;
   
   
 // -------------------------------------------------------  // -------------------------------------------------------
 // mqtt_GetErrno() Get error code of last operation  // mqtt_GetErrno() Get error code of last operation
 inline int mqtt_GetErrno();  inline int mqtt_GetErrno();
Line 86  inline unsigned int mqtt_encodeLen(unsigned int num); Line 131  inline unsigned int mqtt_encodeLen(unsigned int num);
 /*  /*
  * mqtt_decodeLen() Decode length from MQTT packet   * mqtt_decodeLen() Decode length from MQTT packet
  * @len = length   * @len = length
    * @n = sizeof bytes, if !=NULL
  * return: -1 error, >-1 length of message   * return: -1 error, >-1 length of message
  */   */
inline unsigned int mqtt_decodeLen(unsigned int len);inline unsigned int mqtt_decodeLen(unsigned int len, char *n);
 /*
  * mqtt_sizeLen Return sizeof len field
  * @len = length
  * return: -1 error, >-1 sizeof len in bytes
  */
 inline char mqtt_sizeLen(unsigned int len);
 /*
  * mqtt_str2var Create MQTT variable from string
  * @csStr = string
  * @strLen = string length
  * return: NULL error or != ok variable, must be free after use!
  */
 inline mqtthdr_var_t *mqtt_str2var(const unsigned char *csStr, unsigned short strLen);
   
   
 #endif  #endif

Removed from v.1.1.1.1.2.1  
changed lines
  Added in v.1.1.1.1.2.4


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>