[Pidgin] #48: Make SIP/SIMPLE work with Microsoft Live Communication Server

Pidgin trac at pidgin.im
Fri Nov 21 08:35:38 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 djflux):

 There seems to be some issue with bad-data trapping in
 sipe_add_lcs_contacts and/or purple_utf8_strcasecmp.  I think I have some
 corrupt entries in my LCS server-based contact list and when Pidgin tries
 to setup my contact list it gets non-standard (read non UTF8) characters
 in the list it gets back from the server.

 I can probably remove the corrupt Group from my contact list, but I wanted
 to leave it around so that we might be able to trap the problem so that it
 doesn't cause pidgin to core dump/backtrace.

 Here's some debug output:


 {{{
 (08:20:06) sipe: name_group->General
 (08:20:06) sipe: name_group->_Infrastructure
 (08:20:06) sipe: name_group->JusticeLeague
 (08:20:06) sipe: name_group->PMO
 (08:20:06) sipe: name_group->DBA
 (08:20:06) sipe: name_group->BSM
 (08:20:06) sipe: name_group->Analytics
 (08:20:06) sipe: name_group->AppDev
 (08:20:06) sipe: name_group->SoftwareSupport
 (08:20:06) sipe: name_group->ITNerveShack
 (08:20:06) sipe: name_group->QA
 (08:20:06) sipe: name_group->DataManagement
 (08:20:06) sipe: name_group->Officers
 (08:20:06) sipe: name_group->OnBase
 (08:20:06) purple_utf8_strcasecmp: One or both parameters are invalid UTF8
 (08:20:06) purple_utf8_strcasecmp: One or both parameters are invalid UTF8
 (08:20:06) purple_utf8_strcasecmp: One or both parameters are invalid UTF8
 (08:20:06) sipe: id->ПD
 H�D
 ȠD
 X�D
 h�D
 x�D
 6)
 (08:20:06) sipe: id->General
 (08:20:06) sipe: id->2
 (08:20:06) sipe: id->_Infrastructure
 (08:20:06) sipe: id->3
 (08:20:06) sipe: id->JusticeLeague
 (08:20:06) sipe: id->4
 (08:20:06) sipe: id->PMO
 (08:20:06) sipe: id->5
 (08:20:06) sipe: id->DBA
 (08:20:06) sipe: id->6
 (08:20:06) sipe: id->BSM
 (08:20:06) sipe: id->7
 (08:20:06) sipe: id->Analytics
 (08:20:06) sipe: id->8
 (08:20:06) sipe: id->AppDev
 (08:20:06) sipe: id->9
 (08:20:06) sipe: id->SoftwareSupport
 (08:20:06) sipe: id->10
 (08:20:06) sipe: id->ITNerveShack
 (08:20:06) sipe: id->11
 (08:20:06) sipe: id->QA
 (08:20:06) sipe: id->12
 (08:20:06) sipe: id->DataManagement
 (08:20:06) sipe: id->13
 (08:20:06) sipe: id->Officers
 (08:20:06) sipe: id->14
 (08:20:06) sipe: id->OnBase

 ... snip addresses ...(08:20:06) sipe: Found
 Groups->gr[i].id(2),gr[i].name_group (_Infrastructure)
 *** glibc detected *** pidgin: corrupted double-linked list: 0x0a433960
 ***
 ======= Backtrace: =========
 /lib/libc.so.6[0xa0039f]
 /lib/libc.so.6[0xa01ead]
 /lib/libc.so.6[0xa02fc1]
 /lib/libc.so.6(__libc_memalign+0xe5)[0xa03f05]
 /lib/libc.so.6(posix_memalign+0x8f)[0xa040ef]
 /lib/libglib-2.0.so.0[0x5b819cf]
 /lib/libglib-2.0.so.0(g_slice_alloc+0x723)[0x5b831b3]
 /lib/libglib-2.0.so.0[0x5b563e4]
 /usr/lib/libpurple.so.0(purple_dbus_register_pointer+0xc9)[0x2b4919]
 /usr/lib/libpurple.so.0(purple_status_new+0x5c)[0x26c79c]
 /usr/lib/libpurple.so.0(purple_prpl_get_statuses+0x59)[0x2593e9]
 /usr/lib/libpurple.so.0(purple_presence_new_for_buddy+0x5d)[0x26b86d]
 /usr/lib/libpurple.so.0(purple_buddy_new+0x81)[0x21c321]
 /usr/lib/pidgin/libsipe.so[0x7a8e04]
 /usr/lib/pidgin/libsipe.so[0x7a66ae]
 /usr/lib/pidgin/libsipe.so[0x7a7656]
 /usr/lib/libpurple.so.0[0x26df49]
 pidgin[0x80aa5be]
 /lib/libglib-2.0.so.0[0x5b9a9ad]
 /lib/libglib-2.0.so.0(g_main_context_dispatch+0x1e8)[0x5b64008]
 /lib/libglib-2.0.so.0[0x5b676b3]
 /lib/libglib-2.0.so.0(g_main_loop_run+0x1d2)[0x5b67bd2]
 /usr/lib/libgtk-x11-2.0.so.0(gtk_main+0xe0)[0x6bd5d45]
 pidgin(main+0x8a6)[0x80c6986]
 /lib/libc.so.6(__libc_start_main+0xe6)[0x9a85d6]
 pidgin[0x8069761]

 }}}

 I'll take a look and see if I can trap for the bad characters before we
 try to add the contact/group.

-- 
Ticket URL: <http://developer.pidgin.im/ticket/48#comment:185>
Pidgin <http://pidgin.im>
Pidgin


More information about the Tracker mailing list