[Pidgin] #12170: Pidgin repeatedly disconnects from jabber, if there're messages containing  in a conference

Pidgin trac at pidgin.im
Wed Jun 16 02:14:47 EDT 2010


#12170: Pidgin repeatedly disconnects from jabber, if there're messages containing
 in a conference
----------------------------------------------------+-----------------------
 Reporter:  sergem                                  |        Owner:  deryni   
     Type:  rejected_patch                          |       Status:  closed   
Milestone:                                          |    Component:  XMPP     
  Version:  2.7.0                                   |   Resolution:  duplicate
 Keywords:  xmpp jabber disconnect chat conference  |  
----------------------------------------------------+-----------------------

Comment(by darkrain42):

 Replying to [comment:3 sergem]:
 > Are there any reasons not to fix it?

 Yes, fixing it is in violation of the RFC (and is a pretty ugly hack,
 resulting in "missing" messages).

 > > An XMPP entity MUST NOT generate data that is not XML-well-formed. ...
 >
 > BTW, why these 4 characters () form a message, that is not XML-well-
 formed?

  represents the ASCII control character 0x01 (SOH - Start of Heading).

 From the [http://www.w3.org/TR/REC-xml/#sec-references XML 1.0
 specification]:
 {{{
 [66]    CharRef    ::=          '&#' [0-9]+ ';'
 | '&#x' [0-9a-fA-F]+ ';'        [WFC: Legal Character]
 }}}

 [http://www.w3.org/TR/REC-xml/#wf-Legalchar WFC: Legal Character]:
 {{{
 Well-formedness constraint: Legal Character
 Characters referred to using character references must match the
 production for Char.
 }}}

 [http://www.w3.org/TR/REC-xml/#NT-Char Char]:
 {{{
 [2]     Char       ::=          #x9 | #xA | #xD |
                                 [#x20-#xD7FF] | [#xE000-#xFFFD] |
                                 [#x10000-#x10FFFF]
                                 /* any Unicode character, excluding the
 surrogate blocks, FFFE, and FFFF. */
 }}}

 As you can see, ASCII control characters other than 0x09 (Horizontal Tab),
 0x0A (newline), and 0x0D (Carriage Return) are not allowed as a Char, and
 therefore cannot be present in an entity-encoded fashion, either.

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


More information about the Tracker mailing list