[Standards] XEP-0124: which error if sid invalid?
mridul at sun.com
Wed Aug 15 13:41:50 UTC 2007
Stefan Strigler wrote:
> Hi, guess I hit a bug in xep-0124.
> states that
> "All HTTP codes except 200 have been superseded by Terminal Binding
> Conditions to allow clients to determine whether the source of errors is
> the connection manager application or an HTTP intermediary."
> "If the client did not include a 'ver' attribute in its session creation
> request then the connection manager SHOULD send a deprecated HTTP Error
> Condition instead of this terminal binding condition."
> But in the case that a given sid attribute is unknown or invalid a
> connection manager can not determine if the session has been
> instantiated with a 'ver' attribute for obvious reasons.
Intermediaries wont send a 404, which is what (i recall) the xep asks
httpbind to send back in case of unknown/invalid sid. So we dont need to
know the ver in this case (since httpbind assigns sid & not client, this
Hence if we get 404 for initial handshake request, it means httpbind is
not running on that webserver/ctxroot, if we get 404 for any other
request, it means session is not longer valid/exists.
So from what I see, this should not be a problem.
Or am I missing something here ?
> Possible fixes that came to my mind:
> * Define this to be a special case and demand to send an HTTP error
> condition. Breaks with concept of separating error conditions at the
> protocol level (you can't tell anymore whether the error is HTTP or BOSH
> * Make clients send a 'ver' attribute with every request. Consumes more
> Cheers, Steve
More information about the Standards