[Pidgin] #15528: BOSH http parser does not appear to check the Content-Length header
Pidgin
trac at pidgin.im
Mon Feb 25 11:03:56 EST 2013
#15528: BOSH http parser does not appear to check the Content-Length header
--------------------+---------------------
Reporter: Zash | Owner: deryni
Type: defect | Status: new
Milestone: | Component: XMPP
Version: 2.10.3 | Resolution:
Keywords: bosh |
--------------------+---------------------
Comment (by darkrain42):
An extremely quick glance at bosh.c suggests it is trying to process the
content-length (I make no statement as to whether it's doing it properly).
I think it's more likely (and again, a very quick skim seems to confirm
this) that the issue here is that it processes the first response and then
doesn't bother to check and see that there's more data remaining in the
buffer (to treat as a second response), and I think it then throws away
the data (oops...)
Consensus from the XSF summit was that pipelining should just not be used,
so the fix here is probably to just remove that functionality and always
start with two HTTP connections.
From Zash (re how to reproduce this):
{{{
(07:51:02) Zash: It sends a ping before getting a reply to a held request.
When the held request times out or has something to say, both request
return, as the later has a ping which gives a pong.
(07:51:44) Zash: And then the two replies get merged like that
}}}
--
Ticket URL: <https://developer.pidgin.im/ticket/15528#comment:1>
Pidgin <http://pidgin.im>
Pidgin
More information about the Tracker
mailing list