Protocols/MSNP/Clients

From NINA Wiki
Jump to navigation Jump to search
MSNP Protocol
IntroductionTermsClients
Reference
Error ListCommandsRelying Party SuiteSpotlife
Services
XMPPHTTP GatewayTabsActivities
Documentation
Development ToolsMSNP Grid
PolygamyURLs used by MSN
Documents
Protocol Versions
Version 21
Version 18
Version 16
Version 15
Version 14
Version 13
Version 12
Version 11
Version 9
Version 8
Version 2
MSNC
IntroductionP2PObject DescriptorDisplay PicturesFile Transfer
Scenarios
Microsoft Messenger for Mac
MSNP on WebTV (MSNTV)

Client information. For downloads, click here. For third party client addons, visit Clients/Third Party.

Compatibility

MSN Messenger

1.0

1.0.0863, 1.0.0889, 1.0.0893
Compatible with Windows 95 onwards
Uses MD5/CTP authentication
Compatible with Escargot

2.X

2.0.0083, 2.0.0085, 2.1.1047, 2.2.1053
Compatible with Windows 95 onwards
Uses MD5 authentication
Compatible with Escargot

3.X

3.0.0283, 3.0.0286, 3.5.0077, 3.6.0024, 3.6.0025, 3.6.0026, 3.6.0038, 3.6.0039
Compatible with Windows 95 onwards
Uses MD5 authentication
Compatible with Escargot

5.X

5.0.0124, 5.0.0317, 5.0.0322, 5.0.0327, 5.0.0340, 5.0.0515, 5.0.0527, 5.0.0537, 5.0.0540, 5.0.0544, 5.0.0575
Compatible with Windows 98 onwards
Uses MD5/TWN up to 5.0.0340, TWN only 5.0.0515+
Compatible with Escargot

6.X

6.0.0250, 6.0.0256, 6.0.0268, 6.0.0602, 6.1.0114, 6.1.0128, 6.1.0150, 6.1.0211, 6.2.0133, 6.2.0137, 6.2.0205, 6.2.0208
Compatible with Windows 98 onwards
Uses TWN authentication
Compatible with Escargot

7.0

7.0.0205, 7.0.0225, 7.0.0332, 7.0.0425, 7.0.0429, 7.0.0604, 7.0.0632, 7.0.0732, 7.0.0777, 7.0.0813, 7.0.0816, 7.0.0820
Compatible with Windows 98 onwards
Uses TWN authentication
Compatible with Escargot

7.5

7.5.0160, 7.5.0162, 7.5.0244, 7.5.0299, 7.5.0303P, 7.5.0306, 7.5.0311, 7.5.0319P, 7.5.0320P, 7.5.0322, 7.5.0324
Compatible with Windows XP onwards
Uses TWN authentication
Compatible with Escargot


MSN Messenger / Windows Messenger

4.X

4.0.0135, 4.0.0146, 4.0.0155, 4.5.0121, 4.5.0127, 4.6.0071, 4.6.0073, 4.6.0076, 4.6.0077, 4.6.0078, 4.6.0079, 4.6.0082, 4.6.0083, 4.7.0031, 4.7.0034, 4.7.0041, 4.7.0101, 4.7.0105, 4.7.2009, 4.7.3000, 4.7.3001
Compatible with Windows 95 onwards, untested on versions 4.7.2009+
Uses MD5 auth on versions prior to 4.7.2009, TWN 4.7.2009+ (uses HTTPS)
Compatible with Escargot


Windows Messenger

5.X

5.0.0149, 5.0.0482, 5.1.0701, 5.1.0715
Compatible with Windows XP onwards
Uses TWN authentication
Compatible with Escargot

6.X

6.0.0101, 6.0.4074
Compatible with Windows XP onwards
Uses TWN authentication
Compatible with Escargot

Windows Live Messenger

8.X

8.0.0290, 8.0.0328, 8.0.0363, 8.0.0365, 8.0.0369, 8.0.0562, 8.0.0566, 8.0.0683, 8.0.0689, 8.0.0787, 8.0.0792, 8.0.0812, 8.1.0064, 8.1.0068, 8.1.0106, 8.1.0168, 8.1.0178, 8.5.1235, 8.5.1288, 8.5.1302
Compatible with Windows XP onwards
Uses TWN auth on versions prior to 8.1.0064, SSO 8.1.0064+ (uses HTTPS, RPS)
Compatible with Escargot

9.X

'Not to be confused with 2009.'

9.0.1407
Compatible with Windows XP onwards
Uses SSO authentication
Compatible with Escargot

2009

14.0.3921, 14.0.5027, 14.0.8050, 14.0.8089, 14.0.8117
Compatible with Windows XP onwards
Uses SSO authentication
Compatible with Escargot

2010

15.2.2585
Compatible with Windows Vista onwards
Uses SSO authentication
Not compatible with Escargot yet.

2011

15.4.3001, 15.4.3538, 15.4.3555
Compatible with Windows Vista onwards
Uses SSO authentication
Not compatible with Escargot yet.

2012

16.4.3528
Compatible with Windows 7 onwards
Uses SSO authentication
Not compatible with Escargot yet.

Windows 8.0 Messaging

16.4.4206
Compatible only with Windows 8.0
Uses WEB authentication
Not compatible with Escargot yet.

Microsoft Messenger for Mac

1.X

1.0r065
Compatible with Mac OS 9, up to Mac OS X 10.4 (with Classic)
Uses MD5 authentication
Compatible with Escargot

2.X

2.0r037, 2.0r44, 2.1.0, 2.5.1
Compatible with Mac OS 9, up to Mac OS X 10.4 (with Classic)
All versions use MD5 authentication apart from 2.5.1, which uses TWN
Compatible with Escargot, 2.5.1 untested

3.X

3.0.0, 3.5.1
Unknown compatible versions
3.0.0 uses MD5 authentication (untested), 3.5.1 uses TWN
Untested

4.X

4.0.1
Unknown compatible versions
Uses TWN authentication
Untested

5.X

5.1.1
Unknown compatible versions
Uses TWN authentication
Untested

6.X

6.0.3
Unknown compatible versions
Uses TWN authentication
Untested

7.X

7.0.1, 7.0.2, 7.0.3
Unknown compatible versions
Uses TWN authentication
Untested

8.X

8.0.0, 8.0.1, 8.0.2
Unknown compatible versions
Uses TWN authentication
Not compatible with Escargot yet.

Identify Version from Setup

Here is a simple pseudo code of my PHP tool which identify the version and the language of a Messenger setup:

MSI file

Language & Version: Read ProductLanguage and ProductVersion from the MSI file by querying its internal database: SELECT Value FROM Property WHERE Property = % (Windows users can use this tool: http://windowsitpro.com/systems-management/get-information-about-msi-files-just-few-clicks)

MSP file

You have a patch and not a full version. - Language: VS_VERSION_INFO struct > VarFileInfo > Translation of the setup file (not the msp file) - Version: Find the VS_VERSION_INFO (by hand?) struct, parse it and use VS_VERSION_INFO struct > StringFileInfo > FileVersion

EXE file - First

Try to extract file msmsgs.exe from your setup file using WinRAR.

If it works: - Version: VS_VERSION_INFO struct > StringFileInfo > FileVersion. - Language: Extract msgslang.dll and use language from the VS_VERSION_INFO struct > VarFileInfo > Translation (first 2 bytes are the language code).

EXE file - Second

Try to extract file MsnMsgs.msi from your setup file using WinRAR.

If if works: - Language & Version: Read ProductLanguage and ProductVersion from the MSI file by querying its internal database: SELECT Value FROM Property WHERE Property = %

EXE file - Third

Try to extract file MsnMsgs.msp from your setup file using WinRAR.

If it works: You have a patch and not a full version. - Language: VS_VERSION_INFO struct > VarFileInfo > Translation of the setup file (not the msp file) - Version: Find the VS_VERSION_INFO (by hand?) struct and use VS_VERSION_INFO struct > StringFileInfo > FileVersion

– Work in progress –

EXE file - Fourth

Check presence of resource BOOTSTRAPPAYLOAD > MANIFEST.XML and extract it.

If it works: You have a Live installer which may be a web installer (without anything in it) or an offline installer which may contains lot of programs of the Windows Live suite (including or not Messenger). - Check first 4 bytes: if they are MSCF, the XML config file is in a CAB file. Use CabArc.exe to extract the XML config file. Else, you probably already have a XML file. - Open XML file. - Jump to XML file - First

EXE file - Fifth

Check presence of resource CATALOG > DEFAULT and extract it.

If it works: You have a Live installer which may be a web installer (without anything in it) or an offline installer which may contains lot of programs of ther Windows Live suite (including or not Messenger). - Check first 4 bytes: if they are MSCF, the XML config file is in a CAB file. Use CabArc.exe to extract the XML config file. Else, you probably already have a XML file. - Open XML file. - Jump to XML file - First

XML file - First

  • Search for packages with id starting with Messenger (xpath: /catalog/package[starts-with(@id, "Messenger")]).
  • Filter the ones with the source property starting with x-wlspkg://
  • If you are left with one result with a language property set to a language code, it means the Messenger setup includes its language pack.
  • If you have 2 results, one with language set to neutral and one with language set to one language code, it means the Messenger setup and its language pack are in the ressource of the setup file: you need to extract both.
  • If present, xsFileName is the filename of the file containing the extracted resource data. It can be a 7z file which needs to be uncompressed to give you another CAB file containing the final setup file. If absent, you should assume the file is a CAB file containing an msi file (just check the engine property).

XML file - Second

  • Search for a package with id="Messenger" (xpath: /Products/Product[@id="{A26D7C8B-875D-48E2-BED1-7168268D022A}"]). If SourceLocation starts with resource:, the Messenger setup includes its language pack and is in the ressource of the setup file. If not, Messenger setup is not included. xsFileName is the filename of the Messenger setup.

EXE file - Sixth

Default to the data contained in the VS_VERSION_INFO struct of the setup file.