German "Umlauts" like ü, ö, ä, ... are currently disallowed by the JID class, leading to the following error, which prevents users to login to Openfire with resources containing german umlauts, e.g. "Büro" (== "office").
Resource parts in JIDs follow the rule:
The resourcepart of a JID is an instance of the OpaqueString profile
of the PRECIS FreeformClass, which is specified in RFC7613
The FreeFormClass is specified here and allows "LetterDigits" which include the Unicode category "Ll - Lowercase_Letter".
"ü", "ä", "ö", etc. are in this Unicode category and therefore should be allowed in resource parts.
The JID class should be upgraded to RFC 7622 because it uses the old RFC 6122 and the obsolete Stringprep spec, which has been superseded by PRECIS.
(This issue can probably be moved to Tinder project, but I have no rights to do so).
I've moved this issue from the Openfire project to the Tinder project.
Note that once applied, persisted data (in the Openfire database) needs to be scrubbed. See https://tools.ietf.org/html/rfc7613#section-6
You are right. I took a wrong assumption just from reading the stacktrace, but it was probably some other encoding issue, like this:
(which fails).
I'll give another example:
OGHAM SPACE MARK' (U+1680) is allowed in PRECIS (mapped to normal space 0020), but is disallowed by the current implementation (tested with Tinder 1.3.0)
Ah, thanks for this. I thought I was loosing my sanity.
Although this might be an entirely different issue: what caused your original stack trace? As far as I know, all paths (in Openfire/Tinder) that lead to resourceprep use UTF-8, not another encoding.
I am wondering about the stacktrace, too. I assume it was a client encoding issue then.