用Delphi编写的Indy库升级到使用具有最新功能的最新OpenSSL库(例如TLS v1.3)的过程是什么?
我找到的Indy库的最后一个版本使用了libssl32.dll和ssleay32.dll DLL。最新的OpenSSL库生成libssl-1_1.dll和libcrypto-1_1.dll DLL。通过更改Indy libray中的DLL名称,OpenSSL DLL的动态加载失败,因为Indy中定义的许多函数与OpenSSL DLL的函数不匹配。因此,OpenSSL API发生了变化。
据我所知,Delphi源文件应该升级Indy库的IdSSL * .pas:
答案 0 :(得分:1)
OpenSSL库与最新功能1.1.x和支持的OpenSSL库1.0.x之间的API不兼容,必须重新设计Indy代码。这种升级没有简单/通用的过程。
答案 1 :(得分:1)
OpenSSL 1.1几乎可以与Indy的最新版本(主分支)一起使用。查看指向Indy github页面的此链接: https://github.com/IndySockets/Indy/pull/299