我对Libstrophe有些问题。我能够在linux(fedora)中使用它,但似乎Windows不会那么容易。
运行basic.exe我有以下输出(服务器是dukgo.com):
TLSS DEBUG QuerySecurityPackageInfo() success
TLSS DEBUG AcquireCredentialsHandle() success
conn DEBUG SENT: <starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"/>
xmpp DEBUG RECV: <proceed xmlns="urn:ietf:params:xml:ns:xmpp-tls"/>
xmpp DEBUG handle proceedtls called for proceed
xmpp DEBUG proceeding with TLS
TLSS DEBUG QuerySecurityPackageInfo() success
TLSS DEBUG AcquireCredentialsHandle() success
xmpp DEBUG Couldn't start TLS! error -2146893018
conn DEBUG SENT: </stream:stream>
xmpp DEBUG Socket closed by remote host.
xmpp DEBUG Closing socket.
DEBUG: disconnected
event DEBUG Stopping event loop.
event DEBUG Event loop completed.
问题似乎位于src \ tls_schannel.c:331
ret = tls->sft->InitializeSecurityContextA(&(tls->hcred), &(tls->hctxt), name,
ctxtreq, 0, 0, &sbdin, 0,
&(tls->hctxt), &sbdout,
&ctxtattr, NULL);
}
if (ret == SEC_E_OK) {
ret值为-2146893018而不是SEC_E_OK。我看到一些关于这个问题的帖子,我改为OpenSLL,但没有用,仍然没有用。同样在那些情况下提到了DecryptMessage(),到目前为止我从未到达代码行。 DecryptMessage returning SEC_E_UNSUPPORTED_FUNCTION
如果有人对此有所了解,我会非常感激,我试图解决这个问题超过一个星期,但仍然没有。
谢谢,费德里科。
pd。:我有警告,例如&#34;警告LNK4006:__NULL_IMPORT_DESCRIPTOR已在libeay32MTd.lib(LIBEAY32.dll)中定义;忽略第二个定义&#34;我认为openssl无论如何都在工作