[Pidgin] #10261: crash when adding account without @ in jabber

Pidgin trac at pidgin.im
Wed Sep 9 12:24:23 EDT 2009


#10261: crash when adding account without @ in jabber
------------------+---------------------------------------------------------
Reporter:  ekse   |        Type:  defect   
  Status:  new    |   Component:  libpurple
 Version:  2.6.2  |    Keywords:  crash    
------------------+---------------------------------------------------------
 Steps to reproduce:
 1- Contacts \ Add Contact
 2- in "Username", type contact
 3- press enter. pidgin crashes

 Here is the relevant stacktrace from WinDBG:
 0022e658 6861e907 msvcrt!strlen+0x20
 0022e678 68616094 libglib_2_0_0!g_win32_locale_filename_from_utf8+0x1d37
 0022e698 68602f36 libglib_2_0_0!g_vasprintf+0x24
 0022e6b8 68602f58 libglib_2_0_0!g_strdup_vprintf+0x26
 0022e6c8 018ac5ca libglib_2_0_0!g_strdup_printf+0x18
 0022e6e8 018c941b libjabber!jabber_chat_find+0x4a
 0022e728 67cc4a81 libjabber!jabber_roster_add_buddy+0x5b
 0022e748 64a514f5 libpurple!purple_account_add_buddy+0xa1
 0022e788 63a43955
 pidgin_64a40000!pidgin_blist_update_refresh_timeout+0x1025

 The trace is pointing in the purple_account_add_buddy() method which is
 calling libjabber and is crashing is strlen.

 I saw in Ollydbg the string "%s@%s" on the stack frame of strlen. My guess
 is that since pidgin is looking in memory until it finds an @ and since it
 is not in the string it results in a memory read violation.

 libpurple should make sure there is a @ character prior to trying adding a
 username.

-- 
Ticket URL: <http://developer.pidgin.im/ticket/10261>
Pidgin <http://pidgin.im>
Pidgin


More information about the Tracker mailing list