Trouble connecting from C using Strophe

I’m trying out Strophe as a C client to connect to our Openfire server that is running fine with our web Flash clients, and other Jabber clients like Adium. When I run a basic connectivity test using Strophe, I don’t get past the SASL phase. From what I see, Strophe appears not to be waiting for the stream:features tag, and goes ahead sending before it should.

I am new to XMPP so I would appreciate any pointers, or any experiences others have had using Strophe. Also, if there’s another C library that is recommended, please let me know.

conn DEBUG SENT: <?xml version="1.0"?><stream:stream to=“proto.challengegames.com” xml:lang=“en” version=“1.0” xmlns=“jabber:client” xmlns:stream=“http://etherx.jabber.org/streams”>

xmpp DEBUG RECV: <stream:stream xmlns:stream=“http://etherx.jabber.org/streams” xmlns=“jabber:client” from=“proto.challengegames.com” id=“f07456bc” xml:lang=“en” version=“1.0”>

xmpp DEBUG TLS successful, proceeding with SASL

conn DEBUG SENT:

xmpp DEBUG RECV: stream:featuresDIGEST-MD5PLAINCRAM-MD5zlib</stream:features>

**xmpp DEBUG handle digest-md5 (challenge) called for stream:features
**

xmpp ERROR Got unexpected reply to SASL DIGEST-MD5authentication.

Hello Nimai.

Did you get answers to your problem?

I got the same and I really don’t know how to handle it.

Thank you in advance

Etienne