1 回答
TA贡献1799条经验 获得超6个赞
关于使用 HTTPS URL,请注意 HTTP 传输可能存在分配器/释放器不匹配的问题,该问题已在 Git 2.25(2020 年第一季度)中得到纠正。
因此,如果您使用的是 Git 2.24,http.extraheader
无论如何都不会工作。
请参阅Johannes Schindelin ( ) 的提交 4d17fd2(2019 年 11 月 6 日)。(由Junio C Hamano 合并——在提交 bad5ed3中,2019 年 12 月 1 日)dscho
gitster
remote-curl
: 使用自定义分配器解开 http.extraHeader签字人:约翰内斯·辛德林
在93b980e58f5 ("
http
: use xmalloc with cURL", 2019-08-15, Git v2.24.0-rc0 -- merge列在第 3 批中) 中,我们开始要求 cURL 使用xmalloc()
,如果使用 nedmalloc 编译,则意味着隐式与系统分配器不同的分配器。这意味着所有 cURL 的分配和释放现在
_need
_ 使用该分配器。但是,
http_options()
用于slist_append()
添加任何已配置的额外 HTTP 标头的函数_before
_ 要求 cURL 使用xmalloc()
,http_cleanup()
并将释放它们,_afterwards_,
即在存在自定义分配器的情况下,cURL 将尝试使用错误的分配器来释放内存。修复此问题的天真尝试会将调用移至
curl_global_init()
_before
_ 解析配置(即在调用 之前slist_append()
)。但是,这不起作用,因为我们
_also
_ 解析配置设置http.sslbackend
,如果找到,则调用必须在之前调用curl_global_sslset()
,详情请参阅:https ://curl.haxx.se/libcurl/c/curl_global_sslset.htmlcurl_global_init()
因此,让我们改为让配置解析完全独立于 cURL 的数据结构。顺便说一句,这比它引入的多删除了两行,这很好。
对于自签名证书,全局禁用 SSL 验证可能会被视为安全风险,应仅用于测试。
引用自签名证书GIT_SSL_CAINFO
更安全。
- 1 回答
- 0 关注
- 95 浏览
添加回答
举报