[Pidgin] #9015: Incorrect Implementation of XMPP Ping
Pidgin
trac at pidgin.im
Thu Apr 23 13:44:11 EDT 2009
#9015: Incorrect Implementation of XMPP Ping
-------------------------+--------------------------------------------------
Reporter: niraj19july | Owner: deryni
Type: defect | Status: pending
Milestone: | Component: XMPP
Version: 2.5.5 | Resolution:
Keywords: |
-------------------------+--------------------------------------------------
Changes (by deryni):
* status: new => pending
Comment:
There is no point to disabling the pings because we get an error, the
error response is *exactly* as valid of a pong as the XEP-indicated pong
response. Compare what they indicate about the connection to the server.
Either we get an IQ result, which tells us we are connected to the server
or we get an IQ error, which tells us (that's right) that we are connected
to the server. So which we get is entirely unimportant.
Your suggestion of falling back to TCP pings in case of error would move
pidgin from getting a response of actual XMPP connectivity (which the
errors give us) to simply getting whether we can still talk over the
socket (which may or may not mean anything for quite a while as the TCP
timeout period is rather high). I see no benefit to this change and only
harm.
What makes you think an error response from the server *isn't* the same as
a pong? What about sending a ping to a server that doesn't support it is
problematic (given the requirements on IQ stanzas and the purpose of this
XEP)?
Why do you think falling back to TCP pings is better? What does this gain
anyone?
In general you are correct that clients should not use features that are
not supported by the remote entity, this case is however different.
We aren't forcing anyone to support anything, that's the entire point of
this XEP it always works, on all servers, no matter what.
--
Ticket URL: <http://developer.pidgin.im/ticket/9015#comment:4>
Pidgin <http://pidgin.im>
Pidgin
More information about the Tracker
mailing list