[Pidgin] #8453: Off-the-Record communication to Miranda clients has encoding errors

Pidgin trac at pidgin.im
Wed Feb 18 10:59:54 EST 2009


#8453: Off-the-Record communication to Miranda clients has encoding errors
----------------------------------------------+-----------------------------
 Reporter:  Tayku                             |           Owner:  lschiere
     Type:  defect                            |          Status:  new     
Component:  unclassified                      |         Version:  2.5.4   
 Keywords:  OTR,off-the-record,adium,miranda  |   Launchpad_bug:          
----------------------------------------------+-----------------------------
 Hello!
 Please do not mark this ticket as invalid, for I am not considering it as
 a problem related to the Pidgin OTR plugin, but to Pidgin/libpurple
 itself.

 When using Pidgin during an Off-the-Record (OTR) session to a Miranda
 client, there is a wrong encoding for some characters and HTML tags. The
 following characters are only visible as HTML entities on a Miranda
 client, when sending a message from Pidgin to Miranda: ampersand,
 quotation marks, less-than and greater-than. In short: & " < >. They will
 be displayed as &, ", < and >. Also some special characters
 like a simple newline will be displayed as <br>.

 I tested the communication in plain text mode, it's no problem at all. I
 used Wireshark to see the transmitted contents. In plain text, it is
 really plain text. You have all characters like &, " and also \n (Code
 0x0A) for a newline.
 In OTR mode I can't see what's really transmitted since it's encrypted,
 but assuming the OTR plugin just encrypts (and decrypts) the to-be-sent
 message, there has to be a difference. It occurs to be me as if Pidgin is
 indeed creating HTML coded messages '''but''' is also decoding them to
 plain text right before sending. The problem is: when using OTR, the
 (HTML) message is encrypted before Pidgin's HTML-to-plain-text filter is
 called. :(

 I presume the error is on Pidgin's side. A Miranda client has no problems
 with other clients using OTR. A pidgin client has no other problems with
 other clients if they are based on libpurple (tested with Pidgin and
 Adium). This confirms my thesis with HTML to plain text conversion before
 sending.

 What can be done? It would be great if Pidgin/libpurple would create a
 plain text message from scratch, before any message-changing plugins comes
 along, like Pidgin OTR. This is only a solution if my thesis is correct.
 It is also possible that there is another explanation for the strange
 behaviour... but e.g. Adium (based on libpurple) has no problem using OTR
 because OTR is built-in and therefore can control any filtering and
 conversion before encryption starting.


 ----
 Additional facts:
 The problem ist independent from the used protocol (tested with ICQ and
 XMPP).

 Sending messages from Miranda to Pidgin (OTR encrypted) will be
 interpreted not as plain text but as HTML text. E.g. if I'm sending "<br>"
 from Miranda as plain text, it will be displayed as text on Pidgin's side.
 If I'm sending the same text OTR encrypted, Pidgin will display a new
 line.


 Thanks for reading,
 Tayku

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


More information about the Tracker mailing list