Mercurial > pidgin
changeset 4070:6efe00ee7de8
[gaim-migrate @ 4282]
Just shuffling around some version stuff. I'm planning on changing
things to be aim 5.1ish, but I want to do it in a separate patch, so it
will be easy to unpatch if there are problems.
Also, I figured out what those PleaseUpgrade000 buddies are. Like, if
you add "someone@mac.com" to your buddy list, then sign on with an aim
client that advertises an old version of the ssi protocol (eg. gaim),
then the server replaces "someone@mac.com" with "PleaseUpgrade000" on
the fly. It might replace other screen names, as well, I'm not exactly
sure.
Uh, so that problem should hopefully go away when I change the ssi
family to 4, along with change other versions to be 5.1ish.
Ribbit.
committer: Tailor Script <tailor@pidgin.im>
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Fri, 13 Dec 2002 06:51:17 +0000 |
parents | 5b56c42c2717 |
children | 2532f1192da3 |
files | src/protocols/oscar/aim.h src/protocols/oscar/auth.c |
diffstat | 2 files changed, 86 insertions(+), 88 deletions(-) [+] |
line wrap: on
line diff
--- a/src/protocols/oscar/aim.h Fri Dec 13 03:36:33 2002 +0000 +++ b/src/protocols/oscar/aim.h Fri Dec 13 06:51:17 2002 +0000 @@ -129,78 +129,115 @@ struct client_info_s { const char *clientstring; fu16_t clientid; - int major; - int minor; - int point; - int build; + fu16_t major; + fu16_t minor; + fu16_t point; + fu16_t build; + fu32_t distrib; const char *country; /* two-letter abbrev */ const char *lang; /* two-letter abbrev */ }; +/* Needs to be checked */ #define CLIENTINFO_AIM_3_5_1670 { \ "AOL Instant Messenger (SM), version 3.5.1670/WIN32", \ 0x0004, \ - 0x0003, \ - 0x0005, \ - 0x0000, \ - 0x0686, \ - "us", \ - "en", \ + 0x0003, 0x0005, \ + 0x0000, 0x0686, \ + 0x0000002a, \ + "us", "en", \ +} + +/* Needs to be checked */ +/* Latest winaim without ssi */ +#define CLIENTINFO_AIM_4_1_2010 { \ + "AOL Instant Messenger (SM), version 4.1.2010/WIN32", \ + 0x0004, \ + 0x0004, 0x0001, \ + 0x0000, 0x07da, \ + 0x0000004b, \ + "us", "en", \ +} + +/* Needs to be checked */ +#define CLIENTINFO_AIM_4_3_2188 { \ + "AOL Instant Messenger (SM), version 4.3.2188/WIN32", \ + 0x0109, \ + 0x0400, 0x0003, \ + 0x0000, 0x088c, \ + 0x00000086, \ + "us", "en", \ } -#define CLIENTINFO_AIM_4_1_2010 { \ - "AOL Instant Messenger (SM), version 4.1.2010/WIN32", \ - 0x0004, \ - 0x0004, \ - 0x0001, \ - 0x0000, \ - 0x07da, \ - "us", \ - "en", \ +/* Needs to be checked */ +#define CLIENTINFO_AIM_4_8_2540 { \ + "AOL Instant Messenger (SM), version 4.8.2540/WIN32", \ + 0x0109, \ + 0x0004, 0x0008, \ + 0x0000, 0x09ec, \ + 0x000000af, \ + "us", "en", \ } +/* Needs to be checked */ #define CLIENTINFO_AIM_5_0_2938 { \ - "AOL Instant Messenger, version 5.0.2938/WIN32", \ - 0x0109, \ - 0x0005, \ - 0x0000, \ - 0x0000, \ - 0x0b7a, \ - "us", \ - "en", \ + "AOL Instant Messenger, version 5.0.2938/WIN32", \ + 0x0109, \ + 0x0005, 0x0000, \ + 0x0000, 0x0b7a, \ + 0x00000000, \ + "us", "en", \ } +#define CLIENTINFO_AIM_5_1_3036 { \ + "AOL Instant Messenger, version 5.1.3036/WIN32", \ + 0x0109, \ + 0x0005, 0x0001, \ + 0x0000, 0x0bdc, \ + 0x000000d2, \ + "us", "en", \ +} + +/* Needs to be checked */ #define CLIENTINFO_ICQ_4_65_3281 { \ "ICQ Inc. - Product of ICQ (TM) 2000b.4.65.1.3281.85", \ 0x010a, \ - 0x0004, \ - 0x0041, \ - 0x0001, \ - 0x0cd1, \ - "us", \ - "en", \ + 0x0004, 0x0041, \ + 0x0001, 0x0cd1, \ + 0x00000055, \ + "us", "en", \ } +/* Needs to be checked */ #define CLIENTINFO_ICQ_5_34_3728 { \ "ICQ Inc. - Product of ICQ (TM).2002a.5.34.1.3728.85", \ 0x010a, \ - 0x0005, \ - 0x0022, \ - 0x0001, \ - 0x0e8f, \ - "us", \ - "en", \ + 0x0005, 0x0022, \ + 0x0001, 0x0e8f, \ + 0x00000055, \ + "us", "en", \ } -/* - * I would make 4.1.2010 the default, but they seem to have found - * an alternate way of breaking that one. - * - * 3.5.1670 should work fine, however, you will be subjected to the - * memory test, which may require you to have a WinAIM binary lying - * around. (see login.c::memrequest()) - */ +#define CLIENTINFO_ICQ_5_45_1_3777_85 { \ + "ICQ Inc. - Product of ICQ (TM).2003a.5.45.1.3777.85", \ + 0x010a, \ + 0x0005, 0x002d, \ + 0x0001, 0x0ec1, \ + 0x00000055, \ + "us", "en", \ +} + +#define CLIENTINFO_ICQBasic_14_3_1068 { \ + "ICQBasic", \ + 0x010a, \ + 0x0014, 0x0003, \ + 0x0000, 0x042c, \ + 0x0000043d, \ + "us", "en", \ +} + #define CLIENTINFO_AIM_KNOWNGOOD CLIENTINFO_AIM_3_5_1670 +/* define CLIENTINFO_AIM_KNOWNGOOD CLIENTINFO_AIM_5_1_3036 */ #define CLIENTINFO_ICQ_KNOWNGOOD CLIENTINFO_ICQ_4_65_3281 #ifndef TRUE
--- a/src/protocols/oscar/auth.c Fri Dec 13 03:36:33 2002 +0000 +++ b/src/protocols/oscar/auth.c Fri Dec 13 06:51:17 2002 +0000 @@ -179,7 +179,7 @@ aim_addtlvtochain16(&tl, 0x0018, (fu16_t)ci->minor); aim_addtlvtochain16(&tl, 0x0019, (fu16_t)ci->point); aim_addtlvtochain16(&tl, 0x001a, (fu16_t)ci->build); - aim_addtlvtochain32(&tl, 0x0014, 0x00000055); /* distribution chan */ + aim_addtlvtochain32(&tl, 0x0014, (fu32_t)ci->distrib); /* distribution chan */ aim_addtlvtochain_raw(&tl, 0x000f, strlen(ci->lang), ci->lang); aim_addtlvtochain_raw(&tl, 0x000e, strlen(ci->country), ci->country); @@ -202,46 +202,6 @@ * then the client information you send here must exactly match the * executable that you're pulling the data from. * - * WinAIM 4.8.2540 - * clientstring = "AOL Instant Messenger (SM), version 4.8.2540/WIN32" - * clientid = 0x0109 - * major = 0x0004 - * minor = 0x0008 - * point = 0x0000 - * build = 0x09ec - * t(0x0014) = 0x000000af - * t(0x004a) = 0x01 - * - * WinAIM 4.3.2188: - * clientstring = "AOL Instant Messenger (SM), version 4.3.2188/WIN32" - * clientid = 0x0109 - * major = 0x0400 - * minor = 0x0003 - * point = 0x0000 - * build = 0x088c - * unknown = 0x00000086 - * lang = "en" - * country = "us" - * unknown4a = 0x01 - * - * Latest WinAIM that libfaim can emulate without server-side buddylists: - * clientstring = "AOL Instant Messenger (SM), version 4.1.2010/WIN32" - * clientid = 0x0004 - * major = 0x0004 - * minor = 0x0001 - * point = 0x0000 - * build = 0x07da - * unknown= 0x0000004b - * - * WinAIM 3.5.1670: - * clientstring = "AOL Instant Messenger (SM), version 3.5.1670/WIN32" - * clientid = 0x0004 - * major = 0x0003 - * minor = 0x0005 - * point = 0x0000 - * build = 0x0686 - * unknown =0x0000002a - * * Java AIM 1.1.19: * clientstring = "AOL Instant Messenger (TM) version 1.1.19 for Java built 03/24/98, freeMem 215871 totalMem 1048567, i686, Linus, #2 SMP Sun Feb 11 03:41:17 UTC 2001 2.4.1-ac9, IBM Corporation, 1.1.8, 45.3, Tue Mar 27 12:09:17 PST 2001" * clientid = 0x0001 @@ -303,6 +263,7 @@ aim_addtlvtochain16(&tl, 0x0018, (fu16_t)ci->minor); aim_addtlvtochain16(&tl, 0x0019, (fu16_t)ci->point); aim_addtlvtochain16(&tl, 0x001a, (fu16_t)ci->build); + aim_addtlvtochain32(&tl, 0x0014, (fu32_t)ci->distrib); aim_addtlvtochain_raw(&tl, 0x000e, strlen(ci->country), ci->country); aim_addtlvtochain_raw(&tl, 0x000f, strlen(ci->lang), ci->lang);