[Pidgin] #6031: ASCII control characters cause problems with libpurple clients

Pidgin trac at pidgin.im
Sun Jul 13 15:07:46 EDT 2008


#6031: ASCII control characters cause problems with libpurple clients
---------------------+------------------------------------------------------
  Reporter:  dhawes  |       Owner:  deryni
      Type:  defect  |      Status:  closed
  Priority:  minor   |   Milestone:        
 Component:  XMPP    |     Version:  2.4.2 
Resolution:  fixed   |    Keywords:        
   Pending:  0       |  
---------------------+------------------------------------------------------
Comment (by evands):

 [http://trac.adiumx.com/ticket/10382 Adium Trac #10382] discusses this
 issue, too.  iChat apparently allows resource names with invalid
 characters, such as ''RIGHT SINGLE QUOTATION MARK'' (`U+2019`, `0xe2 0x80
 0x99`).

 Besides fixing Pidgin not to attempt to send such things, we need to be
 able to handle receiving them as gracefully as possible.  My change in
 [d879d22351a06d6edbf90dada7a8c3e289f28653] made us actually throw the "XML
 Parse Error" disconnection error when receiving them.  I thought that
 ignoring invalid characters would be okay, but it turns out the the
 'error: document ended' error is what occurs.
 Previously, we silently entered a failed state.

 The new behavior, in which we disconnect, means that any non-compliant
 client, such as iChat, can perform a DOS on any libpurple client if the
 server doesn't do proper checking, as Openfire apparently doesn't.

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


More information about the Tracker mailing list