pidgin: 6080f1fa: Some cleanup to our capabilities definit...
evands at pidgin.im
evands at pidgin.im
Wed Jul 23 11:27:33 EDT 2008
-----------------------------------------------------------------
Revision: 6080f1faff284f812d76d1ff7d4bd9fc7178ebba
Ancestor: bd8c029cb2bab77ad4fc6e904e21bbcc9e698fd2
Author: evands at pidgin.im
Date: 2008-07-23T15:23:15
Branch: im.pidgin.pidgin
URL: http://d.pidgin.im/viewmtn/revision/info/6080f1faff284f812d76d1ff7d4bd9fc7178ebba
Modified files:
libpurple/protocols/oscar/family_locate.c
libpurple/protocols/oscar/oscar.c
libpurple/protocols/oscar/oscar.h
ChangeLog:
Some cleanup to our capabilities definitions, and added information on
a couple official capabilities tha weren't documented. Two of the newly
documented capabilities are still assigned to OSCAR_CAPABILITY_GENERICUNKNOWN
because the OscarCapability enum is full; another value would make its
largest value exceed max_long.
-------------- next part --------------
============================================================
--- libpurple/protocols/oscar/family_locate.c aa5dd0aae14c903d9eaca08445262320c7093571
+++ libpurple/protocols/oscar/family_locate.c e868c651aeff04040f7518fd414a1d5f1003e822
@@ -53,10 +53,9 @@ static const struct {
* These are in ascending numerical order.
*/
- /*
- * Perhaps better called OSCAR_CAPABILITY_SHORTCAPS
- */
- {OSCAR_CAPABILITY_ICHAT,
+ /* Client understands short caps, a UUID of the form
+ * 0946XXYY-4C7F-11D1-8222-444553540000 where XXYY is the short cap. */
+ {OSCAR_CAPABILITY_SHORTCAPS,
{0x09, 0x46, 0x00, 0x00, 0x4c, 0x7f, 0x11, 0xd1,
0x82, 0x22, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00}},
@@ -64,11 +63,15 @@ static const struct {
{0x09, 0x46, 0x00, 0x01, 0x4c, 0x7f, 0x11, 0xd1,
0x82, 0x22, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00}},
+ {OSCAR_CAPABILITY_XHTML_IM,
+ {0x09, 0x46, 0x00, 0x02, 0x4c, 0x7f, 0x11, 0xd1,
+ 0x82, 0x22, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00}},
+
{OSCAR_CAPABILITY_VIDEO,
{0x09, 0x46, 0x01, 0x00, 0x4c, 0x7f, 0x11, 0xd1,
0x82, 0x22, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00}},
- /* "Live Video" support in Windows AIM 5.5.3501 and newer */
+ /* "Live Video" (SIP/RTC Video) support in Windows AIM 5.5.3501 and newer */
{OSCAR_CAPABILITY_LIVEVIDEO,
{0x09, 0x46, 0x01, 0x01, 0x4c, 0x7f, 0x11, 0xd1,
0x82, 0x22, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00}},
@@ -78,9 +81,15 @@ static const struct {
{0x09, 0x46, 0x01, 0x02, 0x4c, 0x7f, 0x11, 0xd1,
0x82, 0x22, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00}},
- /* In Windows AIM 5.5.3501 and newer */
+ /* "Microphone" support in Windows AIM 5.5.3501 and newer */
+ {OSCAR_CAPABILITY_MICROPHONE,
+ {0x09, 0x46, 0x01, 0x03, 0x4c, 0x7f, 0x11, 0xd1,
+ 0x82, 0x22, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00}},
+
+ /* Supports RTC Audio */
+ /* OSCAR_CAPABILITY_RTCAUDIO */
{OSCAR_CAPABILITY_GENERICUNKNOWN,
- {0x09, 0x46, 0x01, 0x03, 0x4c, 0x7f, 0x11, 0xd1,
+ {0x09, 0x46, 0x01, 0x04, 0x4c, 0x7f, 0x11, 0xd1,
0x82, 0x22, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00}},
/* In iChatAV (version numbers...?) */
@@ -88,12 +97,21 @@ static const struct {
{0x09, 0x46, 0x01, 0x05, 0x4c, 0x7f, 0x11, 0xd1,
0x82, 0x22, 0x44, 0x45, 0x45, 0x53, 0x54, 0x00}},
- /*
- * Not really sure about this one. In an email from
- * 26 Sep 2003, Matthew Sachs suggested that, "this
- * is probably the capability for the SMS features."
- */
- {OSCAR_CAPABILITY_SMS,
+ /* Supports "new status message features" (Who advertises this one?) */
+ /* OSCAR_CAPABILITY_HOST_STATUS_TEXT_AWARE */
+ {OSCAR_CAPABILITY_GENERICUNKNOWN,
+ {0x09, 0x46, 0x01, 0x0a, 0x4c, 0x7f, 0x11, 0xd1,
+ 0x82, 0x22, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00}},
+
+ /* Supports "see as I type" (Who advertises this one?) */
+ /* OSCAR_CAPABILITY_SEE_AS_I_TYPE */
+ {OSCAR_CAPABILITY_GENERICUNKNOWN,
+ {0x09, 0x46, 0x01, 0x0b, 0x4c, 0x7f, 0x11, 0xd1,
+ 0x82, 0x22, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00}},
+
+ /* Client only asserts caps for services in which it is participating */
+ /* OSCAR_CAPABILITY_SMARTCAPS */
+ {OSCAR_CAPABILITY_GENERICUNKNOWN,
{0x09, 0x46, 0x01, 0xff, 0x4c, 0x7f, 0x11, 0xd1,
0x82, 0x22, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00}},
============================================================
--- libpurple/protocols/oscar/oscar.c 5357d06a42c2499c8d29309cdc89574824d72670
+++ libpurple/protocols/oscar/oscar.c 9e3b18f63284043379ca1d7c5f25e0fbda169424
@@ -66,7 +66,9 @@
#define OSCAR_CONNECT_STEPS 6
-static OscarCapability purple_caps = OSCAR_CAPABILITY_CHAT | OSCAR_CAPABILITY_BUDDYICON | OSCAR_CAPABILITY_DIRECTIM | OSCAR_CAPABILITY_SENDFILE | OSCAR_CAPABILITY_UNICODE | OSCAR_CAPABILITY_INTEROPERATE | OSCAR_CAPABILITY_ICHAT;
+static OscarCapability purple_caps = (OSCAR_CAPABILITY_CHAT | OSCAR_CAPABILITY_BUDDYICON | OSCAR_CAPABILITY_DIRECTIM |
+ OSCAR_CAPABILITY_SENDFILE | OSCAR_CAPABILITY_UNICODE | OSCAR_CAPABILITY_INTEROPERATE |
+ OSCAR_CAPABILITY_SHORTCAPS);
static guint8 features_aim[] = {0x01, 0x01, 0x01, 0x02};
static guint8 features_icq[] = {0x01, 0x06};
============================================================
--- libpurple/protocols/oscar/oscar.h 84a9834fe1f1d6ceb97b3a60f9840da96219704e
+++ libpurple/protocols/oscar/oscar.h fe9371523cf3c655e03f577b1d33ab6d51219c36
@@ -353,17 +353,19 @@ typedef enum
OSCAR_CAPABILITY_TRILLIANCRYPT = 0x00010000,
OSCAR_CAPABILITY_UNICODE = 0x00020000,
OSCAR_CAPABILITY_INTEROPERATE = 0x00040000,
- OSCAR_CAPABILITY_ICHAT = 0x00080000,
+ OSCAR_CAPABILITY_SHORTCAPS = 0x00080000,
OSCAR_CAPABILITY_HIPTOP = 0x00100000,
OSCAR_CAPABILITY_SECUREIM = 0x00200000,
OSCAR_CAPABILITY_SMS = 0x00400000,
- OSCAR_CAPABILITY_GENERICUNKNOWN = 0x00800000,
+ OSCAR_CAPABILITY_MICROPHONE = 0x00800000,
OSCAR_CAPABILITY_VIDEO = 0x01000000,
OSCAR_CAPABILITY_ICHATAV = 0x02000000,
OSCAR_CAPABILITY_LIVEVIDEO = 0x04000000,
OSCAR_CAPABILITY_CAMERA = 0x08000000,
- OSCAR_CAPABILITY_ICHAT_SCREENSHARE = 0x10000000,
- OSCAR_CAPABILITY_LAST = 0x20000000
+ OSCAR_CAPABILITY_ICHAT_SCREENSHARE = 0x10000000,
+ OSCAR_CAPABILITY_XHTML_IM = 0x20000000,
+ OSCAR_CAPABILITY_GENERICUNKNOWN = 0x40000000,
+ OSCAR_CAPABILITY_LAST = 0x80000000
} OscarCapability;
/*
More information about the Commits
mailing list