Android设备中curl配置HTTPS时CURLOPT_CAPATH失效问题求助
Android下curl CURLOPT_CAPATH无法生效问题
- 环境信息:curl 7.78.0,OpenSSL 1.1.1k,Android设备,系统证书路径为
/system/etc/security/cacerts - 测试代码:
curl_easy_setopt(curl_.get(), CURLOPT_SSL_VERIFYPEER, 1L); curl_easy_setopt(curl_.get(), CURLOPT_CAPATH, "/system/etc/security/cacerts");
问题现象
使用CURLOPT_CAINFO指定单个pem文件时,SSL peer验证可正常工作;但设置CURLOPT_CAPATH指向系统证书目录后,无论目录内是否存在对应pem文件,该验证均无法生效。
已尝试的无效方案
- 编译curl时添加编译选项
-DCURL_CA_PATH=/system/etc/security/cacerts - 修改OpenSSL源码
by_dir.c中的X509_NAME_hash为X509_NAME_hash_old
内容的提问来源于stack exchange,提问作者BirdQAQ
相关产品推荐
相关产品推荐

