自己编译了一个openssl的动态库,在测试时调用PEM_read_RSA_PUBKEY发现出现崩溃,查看堆栈如下:
查看一下0x00d1c688内存,发现内存不对
在libssl.lib中会将fp和lib中的一个全局变量进行比较,这个时候因为不同的模块有不同的内存空间和全局变量,因此fp和libssl.lib中的值比较非法,就出现错误了。。
解决办法:openssl的动态库中使用到FILE的接口,将file参数换成文件路径,在内部转为file传递即可
自己编译了一个openssl的动态库,在测试时调用PEM_read_RSA_PUBKEY发现出现崩溃,查看堆栈如下:
查看一下0x00d1c688内存,发现内存不对
在libssl.lib中会将fp和lib中的一个全局变量进行比较,这个时候因为不同的模块有不同的内存空间和全局变量,因此fp和libssl.lib中的值比较非法,就出现错误了。。
解决办法:openssl的动态库中使用到FILE的接口,将file参数换成文件路径,在内部转为file传递即可