Jive Software Open Source

  • Log In Access more options
    • Online Help
    • Keyboard Shortcuts
    • About JIRA
    • JIRA Credits
    • What’s New
  • Dashboards Access more options (Alt+d)
  • Projects Access more options (Alt+p)
  • Issues Access more options (Alt+i)
  • Openfire
  • OF-346

BOSH uses incorrect Namespace

  • Log In
  • Views
    • XML
    • Word
    • Printable

Details

  • Type: Bug Bug
  • Status: Resolved Resolved
  • Priority: Blocker Blocker
  • Resolution: Fixed
  • Affects Version/s: 3.6.4
  • Fix Version/s: 3.7.0 beta
  • Component/s: Connection Manager, Core
  • Labels:
    None
  • Ignite Forum URL:
    http://www.igniterealtime.org/community/message/200716
  • Acceptance Test - Add?:
    No

Description

BOSH should return iq, message and presence stanzas within
{{{
jabber:client
}}}

instead of
{{{ http://jabber.org/protocol/httpbind }}}

Issue Links

is related to

Improvement - An improvement or enhancement to an existing feature or task. TINDER-40 Support setup the namespace of IQ, Presence and Message Packets

  • Major - Major loss of function.
  • Open - The issue is open and ready for the assignee to start work on it.

Activity

Ascending order - Click to sort in descending order
  • All
  • Comments
  • Work Log
  • History
  • Activity
  • Source
  • Reviews
  • Builds
Hide
Permalink
Guenther Niess added a comment - 02/10/10 07:30 AM

Openfire don't specify any namespace of an IQ, Message or Presence stanza explicitly. This means for BOSH that all normal stanzas are within the 'http://jabber.org/protocol/httpbind' namespace. From XEP: XMPP Over BOSH:

If the BOSH <body/> wrapper is not empty, then it SHOULD contain ... One or more complete <message/>, <presence/>, and/or <iq/> elements qualified by the 'jabber:client' namespace.

but also

Note: Many existing XMPP-specific implementations of BOSH clients and connection managers do not specify the namespace of <message/>, <presence/>, or <iq/> elements, since that allows them to forward stanzas without modification (the XMPP <stream:stream/> wrapper element used with TCP typically sets the default namespace to 'jabber:client'). They instead simply assume that the full content of the 'jabber:client' namespace is a subset of the 'http://jabber.org/protocol/httpbind' namespace.

So I think maybe we should state the 'jabber:client' namespace explicitly but the clients should also work without it.

Show
Guenther Niess added a comment - 02/10/10 07:30 AM Openfire don't specify any namespace of an IQ, Message or Presence stanza explicitly. This means for BOSH that all normal stanzas are within the 'http://jabber.org/protocol/httpbind' namespace. From XEP: XMPP Over BOSH:
If the BOSH <body/> wrapper is not empty, then it SHOULD contain ... One or more complete <message/>, <presence/>, and/or <iq/> elements qualified by the 'jabber:client' namespace.
but also
Note: Many existing XMPP-specific implementations of BOSH clients and connection managers do not specify the namespace of <message/>, <presence/>, or <iq/> elements, since that allows them to forward stanzas without modification (the XMPP <stream:stream/> wrapper element used with TCP typically sets the default namespace to 'jabber:client'). They instead simply assume that the full content of the 'jabber:client' namespace is a subset of the 'http://jabber.org/protocol/httpbind' namespace.
So I think maybe we should state the 'jabber:client' namespace explicitly but the clients should also work without it.
Hide
Permalink
Guenther Niess added a comment - 02/10/10 08:28 AM

Committed a patch to revision 11617.

Show
Guenther Niess added a comment - 02/10/10 08:28 AM Committed a patch to revision 11617.
Hide
Permalink
Guenther Niess added a comment - 02/12/10 04:46 AM

See also the discussion on the XMPP standards mailing list.

Show
Guenther Niess added a comment - 02/12/10 04:46 AM See also the discussion on the XMPP standards mailing list.
Hide
Permalink
Guenther Niess added a comment - 02/13/10 07:32 AM

See http://www.igniterealtime.org/community/message/200809#200809

Show
Guenther Niess added a comment - 02/13/10 07:32 AM See http://www.igniterealtime.org/community/message/200809#200809
Hide
Permalink
Guenther Niess added a comment - 02/13/10 09:10 AM

I've reverted my former patch.

Show
Guenther Niess added a comment - 02/13/10 09:10 AM I've reverted my former patch.
Hide
Permalink
Alexander Gnauck added a comment - 02/13/10 07:23 PM

you have to rewrite the complete xml tree like most servers do on s2s and component links.
Or use string functions to build the body instead of a xml dom, this is easier in most cases and performs better.

Show
Alexander Gnauck added a comment - 02/13/10 07:23 PM you have to rewrite the complete xml tree like most servers do on s2s and component links. Or use string functions to build the body instead of a xml dom, this is easier in most cases and performs better.
Hide
Permalink
Guenther Niess added a comment - 02/18/10 09:16 AM

Committed a patch (revision 11636 and 11637) which uses string manipulation in order to perform the namespace rewriting.

Show
Guenther Niess added a comment - 02/18/10 09:16 AM Committed a patch (revision 11636 and 11637) which uses string manipulation in order to perform the namespace rewriting.
Hide
Permalink
Guenther Niess added a comment - 02/18/10 05:49 PM

Guus, please review this patch.

Show
Guenther Niess added a comment - 02/18/10 05:49 PM Guus, please review this patch.

People

  • Assignee:
    Guus der Kinderen
    Reporter:
    Daryl Herzmann
Vote (2)
Watch (5)

Dates

  • Created:
    02/10/10 12:20 AM
    Updated:
    02/18/10 05:49 PM
    Resolved:
    02/18/10 09:16 AM
  • Atlassian JIRA (v5.0.4#731-sha1:3aa7374)
  • Report a problem
  • Powered by a free Atlassian JIRA open source license for igniterealtime.org. Try JIRA - bug tracking software for your team.