Openfire 3.6.0 and XMLSocket

Can I somehow connect to the openfire 3.6.0 server via XMLSocket in ActionScript 2? The Disallowed character exception is always thrown.

My flash chat application works fine with the previos server version.

Is this related to change #10646? http://www.igniterealtime.org/fisheye/changelog/svn-org/openfire?cs=10646

No, it is not. My xml is correct. It is because flash sends null byte at the end.

“Null”, as in “0x00” ?

The fix for JM-1421 shows:

if (ch < 0x20 && ch != 0x9 && ch != 0xA && ch != 0xD)

{ … }

00 < 20, and 00 != 09, and 00 != 0A, and 00 != 0D. Seems to match, thorws the error you mention, and this fix was not part of 3.5.3, but was merged to 3.6.0. You would see the behavior changing only when you changed to 3.6.0 or later.

If you like, I can provide a 3.5.2 patched for this error alone, you can compare the behavior with/without this change… I currently have it built for RH-5.1.

I’ve installed 3.5.2 and it works fine. But in 3.6.0 it does not. Maybe there is some property I need to change

JM-1421 merges at 3.6.0, AFTER 3.5.2, so 3.5.2 and 3.5.3 should not show any problem.

I can send you a 3.5.2 that has changeset 10646 applied, which I called 3.5.2.1 in my realm, and I expect it to fail because the only difference from 3.5.2 is changeset 10646 applied.

Its a bug and no one cares:

Seems to be a bug in Adobe?

The wire protocol at this point is XML, right? So your comment about an Adobe product that sends a 0x00 as an XML character is probably a bug in that Adobe thing. Not sure how much OpenFire should then adapt to another’s bug, but we might get around that by a filter that converts 0x00 to … a smiley face? Hmm. What character is most appropriate for fixing another’s error by corrupting the data?

OK, I’m joking, mostly; as I understand it, “no one cares” within the Adobe camp, and “no one cares to corrupt conformant behavior” in the OF camp.

Typo was edited by: chickenandporn