If jabberd server supports nick name with spaces like “Nickname with spaces”, xiff client cannot pass authorization for such user, because it sends not escaped data.
current code:
public function Plain( connection:XMPPConnection )
{
//should probably use the escaped form, but flex/as handles \ weirdly for unknown reasons
var jid:UnescapedJID = connection.jid;
var authContent:String = jid.bareJID;
authContent += ‘\u0000’;
authContent += jid.node;
authContent += ‘\u0000’;
authContent += connection.password;
…
should be:
public function Plain( connection:XMPPConnection )
{
//should probably use the escaped form, but flex/as handles \ weirdly for unknown reasons
var jid:UnescapedJID = connection.jid;
var authContent:String = jid.escaped.bareJID;
authContent += ‘\u0000’;
authContent += jid.escaped.node;
authContent += ‘\u0000’;
authContent += connection.password;
authContent = Base64.encode(authContent);