From 8933bf2780d861c0a3930f2dbbd5cc5d3d0bcb9a Mon Sep 17 00:00:00 2001 From: George Hazan Date: Sun, 23 Dec 2012 14:50:33 +0000 Subject: Jasmine detection git-svn-id: http://svn.miranda-ng.org/main/trunk@2813 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- protocols/IcqOscarJ/src/icq_clients.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'protocols/IcqOscarJ') diff --git a/protocols/IcqOscarJ/src/icq_clients.cpp b/protocols/IcqOscarJ/src/icq_clients.cpp index bb1ebb5621..2220d649ac 100644 --- a/protocols/IcqOscarJ/src/icq_clients.cpp +++ b/protocols/IcqOscarJ/src/icq_clients.cpp @@ -151,6 +151,7 @@ const capstr capBayan = {'b', 'a', 'y', 'a', 'n', 'I', 'C', 'Q', 0, 0, 0, 0, const capstr capJabberJIT = {'J', 'I', 'T', ' ', 0x76, 0x2E, 0x31, 0x2E, 0x78, 0x2E, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00}; const capstr capIcqKid2 = {'I', 'c', 'q', 'K', 'i', 'd', '2', 0x00, 0x05, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}; const capstr capWebIcqPro = {'W', 'e', 'b', 'I', 'c', 'q', 'P', 'r', 'o', ' ', 0, 0, 0, 0, 0, 0}; +const capstr capJasmine = {0x4A, 0x61, 0x73, 0x6D, 0x69, 0x6E, 0x65, 0x20, 0x76, 0x65, 0x72, 0xFF, 0x00, 0x00, 0x00, 0x00}; const capstr capMraJava = {0x4a, 0x32, 0x4d, 0x45, 0x20, 0x6d, 0x40, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x00, 0x00, 0x00, 0x00}; const capstr capMacIcq = {0xdd, 0x16, 0xf2, 0x02, 0x84, 0xe6, 0x11, 0xd4, 0x90, 0xdb, 0x00, 0x10, 0x4b, 0x9b, 0x4b, 0x7d}; const capstr capIs2001 = {0x2e, 0x7a, 0x64, 0x75, 0xfa, 0xdf, 0x4d, 0xc8, 0x88, 0x6f, 0xea, 0x35, 0x95, 0xfd, 0xb6, 0xdf}; @@ -396,6 +397,11 @@ const char* CIcqProto::detectUserClient(HANDLE hContact, int nIsICQ, WORD wUserC szClient = MirandaModToString(szClientBuf, capId, dwFT3 == 0x80000000, "ICQ Plus"); bMirandaIM = TRUE; } + else if (capId = MatchCapability(caps, wLen, &capJasmine, 12)) + { + BYTE *p = (*capId) + 12; + szClient = makeClientVersion(szClientBuf, "Jasmine IM v", p[0], p[1], p[2], p[3]); + } else if (capId = MatchCapability(caps, wLen, &capMraJava, 12)) { unsigned ver1 = (*capId)[13]; -- cgit v1.2.3