[Pidgin] #48: Make SIP/SIMPLE work with Microsoft Live Communication Server
Pidgin
trac at pidgin.im
Fri Nov 7 08:30:42 EST 2008
#48: Make SIP/SIMPLE work with Microsoft Live Communication Server
---------------------------+------------------------------------------------
Reporter: MarkDoliner | Owner: shulman
Type: patch | Status: new
Milestone: | Component: SIMPLE
Version: 2.0 | Resolution:
Keywords: MS LCS SIMPLE |
---------------------------+------------------------------------------------
Comment(by kiraly):
Trivial question: is it possible to download latest sources (including
your path)?
Clicking on the link I see only the diff files.
Before signing however weneed to improve the NTLM authentication. Respect
the sipe original files:
tmsg->flags = 0x55828040;
become
tmsg->flags = 0x40808255;
Moreover the session key has to be generated correctly:
gensesskey(sesskey, NULL);
memcpy(tmp, sesskey, 0x10);
become
RC4PrepareKey((BYTE*)masterkey,0x10,&rc4_key);
gensesskey(sesskey, NULL);
memcpy(tmp, sesskey, 0x10);
RC4Encipher((BYTE*)tmp,0x10,&rc4_key);
where masterkey is a key previously calcolated:
gaim_cipher_context_append(context, (guchar*)nt_pw, 2*lennt);
gaim_cipher_context_digest(context, 21, (guchar*)nt_hpw, NULL);
gaim_cipher_context_destroy(context);
memset(nt_hpw+16, 0, 5);
//new code context2 is a md4 context
gaim_cipher_context_append(context2, (guchar*)nt_hpw, 0x10);
gaim_cipher_context_digest(context2, 0x10, (guchar*)masterkey, NULL);
gaim_cipher_context_destroy(context2);
//end new
The RC4 functions are very intuitive, you'll easy convert to your
scenario.
--
Ticket URL: <http://developer.pidgin.im/ticket/48#comment:148>
Pidgin <http://pidgin.im>
Pidgin
More information about the Tracker
mailing list