OpenSSL SSL_CTX_load_verify_locations Windows

时间:2017-08-10 01:53:49

标签: c windows visual-studio openssl

我正在尝试在C中使用OpenSSL来发出https请求。 我的代码在OSX和Linux中运行得很好。它在Windows中存在严重问题。 我在下面的https://wiki.openssl.org/index.php/SSL/TLS_Client(页面底部)

中使用下载中的示例代码

我可以从中获得一个好的(可能),所有后续尝试都失败了。

在visual studio中运行debug时,它会在int行失败。 Visual Studio只是告诉我堆已损坏。我检查了文件权限,我检查了路径,在异常调试时检查变量,看起来所有变量都很好,但它似乎没有通过验证。我正在使用LibreSSL SDK。

SSL_CTX_load_verify_locations

我注意到如果我能够通过它,在那些罕见的事件上,而不是完全让它完成,只是停止调试,我可以再次运行到同一点而没有问题。

我尝试过使用不同的pem文件,以确保它不仅仅是被锁定的文件,但这并没有什么区别。

我很高兴调试更多,但我需要一些关于如何从VS获取更多信息的指示。

以下相关代码段:

const char *file_loc = "C:\\Users\\{USER}\\Desktop\\trusted-roots.pem";
res = SSL_CTX_load_verify_locations(ctx, file_loc, NULL);

0 个答案:

没有答案