I have compiled libstrophe as a DLL for Windows.
During authorisation with the Jabber server DecryptMessage()
is called three times as stanzas are passed back and forth. On the first two calls it returns 0 (SEC_E_OK)
, but on the third call it returns 0x80090302 (SEC_E_UNSUPPORTED_FUNCTION)
. The problem is, according to the documentation SEC_E_UNSUPPORTED_FUNCTION
is not a valid return value. This happens both on Windows 7 and Windows XP.
I tried replacing the incoming encrypted string with garbage to see what was the return value, and it was 0x80090318 (SEC_E_INCOMPLETE_MESSAGE)
, so I know it's not simply a case of "garbage in - garbage out". I've also checked the JID is correct by logging in with the same JID using Pidgin.
Can anyone offer any enlightenment please?