comparison libpurple/protocols/qq/qq.h @ 24068:87e61a85f5dd

2008.09.28 - ccpaging <ccpaging(at)gmail.com> * The source is only for debug, not for user: 1. Implement new QQ protocol 2007/2008, include login and change status 2. Check 2005's login reply packet, get last 3 login time. 3. Server's notice and news is displayed in self buddy (The new buddy created in buddy list). 4. The notice messages when adding/removing QQ Qun's buddy displayed in char conversation. They are displayed as purple notify windows in the past. 5. The notice messages when adding/removing buddy displayed in self buddy's conversation. They are displayed as purple notify windows in the past. 6. Client version can be selected in account option. Now only qq2005 is working, other new version is only for debug.
author SHiNE CsyFeK <csyfek@gmail.com>
date Wed, 22 Oct 2008 14:40:04 +0000
parents dbc7a9742f8d
children dc112387190f
comparison
equal deleted inserted replaced
24067:fc546485fae7 24068:87e61a85f5dd
57 guint8 random_key[QQ_KEY_LENGTH]; /* first encrypt key generated by client */ 57 guint8 random_key[QQ_KEY_LENGTH]; /* first encrypt key generated by client */
58 guint8 *token; /* get from server */ 58 guint8 *token; /* get from server */
59 guint8 token_len; 59 guint8 token_len;
60 guint8 *token_ex; /* get from server */ 60 guint8 *token_ex; /* get from server */
61 guint16 token_ex_len; 61 guint16 token_ex_len;
62
62 guint8 pwd_2nd_md5[QQ_KEY_LENGTH]; /* password in md5 (or md5' md5) */ 63 guint8 pwd_2nd_md5[QQ_KEY_LENGTH]; /* password in md5 (or md5' md5) */
63 guint8 pwd_4th_md5[QQ_KEY_LENGTH]; 64 guint8 pwd_4th_md5[QQ_KEY_LENGTH];
65
64 guint8 *login_token; 66 guint8 *login_token;
65 guint16 login_token_len; 67 guint16 login_token_len;
66 guint8 login_key[QQ_KEY_LENGTH]; 68 guint8 login_key[QQ_KEY_LENGTH];
67 }; 69 };
68 70
174 gboolean is_login; /* used by qq_add_buddy */ 176 gboolean is_login; /* used by qq_add_buddy */
175 177
176 PurpleXfer *xfer; /* file transfer handler */ 178 PurpleXfer *xfer; /* file transfer handler */
177 179
178 /* get from login reply packet */ 180 /* get from login reply packet */
181 struct in_addr my_local_ip; /* my local ip address detected by server */
182 guint16 my_local_port; /* my lcoal port detected by server */
179 time_t login_time; 183 time_t login_time;
180 time_t last_login_time; 184 time_t last_login_time[3];
181 gchar *last_login_ip; 185 struct in_addr last_login_ip;
182 /* get from keep_alive packet */ 186 /* get from keep_alive packet */
183 struct in_addr my_ip; /* my ip address detected by server */ 187 struct in_addr my_ip; /* my ip address detected by server */
184 guint16 my_port; /* my port detected by server */ 188 guint16 my_port; /* my port detected by server */
185 guint16 my_icon; /* my icon index */ 189 guint16 my_icon; /* my icon index */
186 guint16 my_level; /* my level */ 190 guint16 my_level; /* my level */