After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 306369 - Gossip doesn't casefold JIDs.
Gossip doesn't casefold JIDs.
Status: RESOLVED FIXED
Product: gossip
Classification: Deprecated
Component: General
0.8.90
Other All
: Low normal
: ---
Assigned To: Gossip Maintainers
Gossip Maintainers
: 333726 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2005-06-03 13:18 UTC by Paul van Tilburg
Modified: 2006-06-17 10:34 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Paul van Tilburg 2005-06-03 13:18:23 UTC
Please describe the problem:
Gossips considers "foo@domain.tld" and "Foo@domain.tld" to be two different
persons.  When "foo@domain.tld" has been added to the roster before and the
remote user uses "Foo@domain.tld" to login, Gossip gets confused.

Steps to reproduce:
Let someone login with a for example capitalized version of his/her
JID (the node part).


Actual results:


Expected results:


Does this happen every time?
Yes

Other information:
I couldn't trace the fact that the node part of the JID is meant to be
case-insensitive back to a section of the XMPP standard.  But as far as I know
both jabberd1.4 and jabberd2.0 treat them as case-folded JIDs.
Comment 1 Martyn Russell 2005-06-04 10:21:35 UTC
Yea, the fact that you couldn't trace it back to the XMPP standard and the fact
that it is not explicitly defined we need to be case insensitive means it is
more than likely a buggy Jabber server?

Not sure how much this affects ALL users of Gossip, unfortunately it is not top
of the pops for us to fix at the moment.
Comment 2 Paul van Tilburg 2005-06-17 12:25:39 UTC
It is in fact traceable, see
http://www.xmpp.org/specs/rfc3920.html#security-stringprep and the Stringprep
RFC: ftp://ftp.isi.edu/in-notes/rfc3454.txt.

Bit of explaining log with one of the XMPP familiar people:

paul: do you know if there is something in XMPP about JID-case-insensitivity?
paul: I looked for it but couldn't find it
Matthias: yes there is
Matthias: it's called 'stringprep profile'
paul: yes completely did not understand that part
Matthias: just a big table about what unicode codepoint has to be mapped to
which other codepoint to normalize JIDs
Matthias: an part of it is that big characters are mapped to their lowercase
equivalents
Matthias: others are the 'ß' has to be mapped to 'ss' ... therefore
straße@example.com is equivalent to strasse@example.com
Matthias: there are three different stringprep profiles used for XMPP
Matthias: one for the user part of a JID (the node),  one for the domain and one
for the resource
Matthias: the domain is mapped with the same profile as IDNs ...
Matthias: the node part is very similar but does allow/forbid other characters
Matthias: the resource part is case sensitive!!
paul: do you have a XMPP.org link?
Matthias: you have to read the stringprep RFC ... the XMPP-core RFC does contain
references to this RFC ... by just listing which tables of this RFC have to be
used for nodes/resources
Comment 3 Martyn Russell 2006-03-07 09:56:38 UTC
*** Bug 333726 has been marked as a duplicate of this bug. ***
Comment 4 Richard Hult 2006-06-17 10:34:24 UTC
I have made the node part casefolded (the part before @), according to the nodeprep profile. 

We are still not doing the full stringprep stuff yet of course (normalization missing), but I think I will close this bug since the fix should make foo@ and Foo @ be treated correctly. If you can test and confirm or reopen that would be great.