tags:

views:

87

answers:

1

I am working on XMPP server development and trying to get ichat work with our server. The authentication mechanism used is DIGEST-MD5.

At login, the client seems to close the connection as soon as it receives the challenge from the server. I would like to understand whats happening on ichat side and why it doesn't respond.

Any pointers would really help.

Thanks.

+1  A: 

Did you implement DIGEST-MD5 yourself, or are you using a 3rd-party SASL library?

If you're using someone else's library, you might not have told it what realm to offer -- that's the most common mistake.

If you wrote your own, re-read RFC 2831 really carefully, and debug print the base64 decode of your challenge. You probably made a syntax error that you thought wasn't important, e.g., not escaping a double quote in a qdstr-val.

Finally, start implementing SCRAM, because that's likely to be mandatory in RFC 3920bis.

Joe Hildebrand
We are implementing own DIGEST-MD5. I will try it today and post my output.Thanks a lot.
mithuna
I verified the decoded string and everything seems fine from my eye :), but still the ichat client does not respond for the challenge. Is there any way you could help me on this or point me where i can publish my logs and ask for help? I am a newbie on mac and deubgging ichat whithout any logs is complicating. The irony is exodus works fine, only ichat has issues.
mithuna
Aside: Exodus's DIGEST-MD5 implementation was probably the very first XMPP/SASL client code in existence. I remember sitting around PGM's dining room table with Dizzy, Jer, and DW when we were trying to decide if the complexity of SASL was worth the hassle, back when we first took XMPP to the IETF. If it's still the same code, it's likely to be *very* forgiving of odd server implementations, since that was PGM's style.I'd suggest posting your decoded challenge here -- we may as well pick it apart in public.
Joe Hildebrand