[ekg2-commit] r4608 - trunk/plugins/icq: trunk/plugins/icq/icq_snac_handlers_01service.inc trunk/plugins/icq/icq_snac_handlers_03buddy.inc
SVN commit
svn w toxygen.net
Sob, 6 Wrz 2008, 11:36:09 CEST
Author: wiechu
Date: 2008-09-06 11:36:09 +0200 (Sat, 06 Sep 2008)
New Revision: 4608
Modified:
trunk/plugins/icq/icq_snac_handlers_01service.inc
trunk/plugins/icq/icq_snac_handlers_03buddy.inc
Log:
code complement
Modified: trunk/plugins/icq/icq_snac_handlers_01service.inc
===================================================================
--- trunk/plugins/icq/icq_snac_handlers_01service.inc 2008-09-05 22:29:57 UTC (rev 4607)
+++ trunk/plugins/icq/icq_snac_handlers_01service.inc 2008-09-06 09:36:09 UTC (rev 4608)
@@ -309,44 +309,54 @@
if (xstrcmp(s->uid+4, uin))
debug_error("icq_snac_service_reqinfo() Warning: Server thinks our UIN is %s, when it is %s\n", uin, s->uid+4);
- /*
- * TLV(x01) User type?
- * TLV(x0C) Empty CLI2CLI Direct connection info
- * TLV(x0A) External IP
- * TLV(x0F) Number of seconds that user has been online
- * TLV(x03) The online since time.
- * TLV(x0A) External IP again
- * TLV(x22) Unknown
- * TLV(x1E) Unknown: empty.
- * TLV(x05) Member of ICQ since.
- * TLV(x14) Unknown
- */
tlvs = icq_unpack_tlvs(&databuf, &len, count);
/* XXX, miranda check dwRef. */
/* XXX, miranda saves */
for (t = tlvs; t; t = t->next) {
switch (t->type) {
- case 0x03:
+ case 0x01: /* User type */
+ if (tlv_length_check("icq_snac_service_reqinfo()", t, 2)) goto def;
+ debug_white("icq_snac_service_reqinfo() User type: 0x%x\n", t->nr);
+ break;
+
+ case 0x03: /* The online since time */
if (tlv_length_check("icq_snac_service_reqinfo()", t, 4)) goto def;
- debug_white("icq_snac_service_reqinfo() Logon TS: %u\n", t->nr);
+ debug_white("icq_snac_service_reqinfo() Logon time: %s\n", int2time_str("%Y-%m-%d %H:%M", t->nr));
break;
- case 0x05:
+ case 0x05: /* Member of ICQ since */
if (tlv_length_check("icq_snac_service_reqinfo()", t, 4)) goto def;
debug_white("icq_snac_service_reqinfo() ICQ Member since: %s\n", int2time_str("%Y-%m-%d %H:%M", t->nr));
break;
- case 0x0A:
+ case 0x0a: /* External IP */
if (tlv_length_check("icq_snac_service_reqinfo()", t, 4)) goto def;
debug_white("icq_snac_service_reqinfo() External IP: %u.%u.%u.%u\n", t->buf[0], t->buf[1], t->buf[2], t->buf[3]);
break;
+ case 0x0c: /* Empty CLI2CLI Direct connection info */
+ break;
+
+ case 0x0d: /* Our capabilities */
+ debug_white("icq_snac_service_reqinfo() Server knows %d our caps\n", t->len >> 4);
+ break;
+
+ case 0x0f: /* Number of seconds that user has been online */
+ if (tlv_length_check("icq_snac_service_reqinfo()", t, 4)) goto def;
+ debug_white("icq_snac_service_reqinfo() Online: %u seconds.\n", t->nr);
+ break;
+
+ case 0x14:
+ case 0x1e: /* We know that we don't know them */
+ case 0x22:
+ break;
+
/* XXX */
default:
def:
- debug_error("icq_snac_service_reqinfo() TLV[%u] datalen: %u\n", t->type, t->len);
+ debug_error("icq_snac_service_reqinfo() TLV[0x%x] datalen: %u\n", t->type, t->len);
icq_hexdump(DEBUG_WHITE, t->buf, t->len);
}
}
Modified: trunk/plugins/icq/icq_snac_handlers_03buddy.inc
===================================================================
--- trunk/plugins/icq/icq_snac_handlers_03buddy.inc 2008-09-05 22:29:57 UTC (rev 4607)
+++ trunk/plugins/icq/icq_snac_handlers_03buddy.inc 2008-09-06 09:36:09 UTC (rev 4608)
@@ -285,7 +285,7 @@
debug_white("icq_snac_buddy_online() %d seconds online\n", t->nr);
break;
- case 0x19: /* */
+ case 0x19: /* short caps */
{
unsigned char *data = t->buf;
int d_len = t->len;
Więcej informacji o liście dyskusyjnej ekg2-commit