19 lines
977 B
Diff
19 lines
977 B
Diff
Kodi doesn't set the CAPATH and CAINFO parameters for libcurl. To make HTTPS
|
|
connections work we can set them based on SSL_CERT_DIR and SSL_CERT_FILE.
|
|
|
|
--- a/xbmc/filesystem/CurlFile.cpp
|
|
+++ b/xbmc/filesystem/CurlFile.cpp
|
|
@@ -626,8 +626,12 @@
|
|
if (!m_cipherlist.empty())
|
|
g_curlInterface.easy_setopt(h, CURLOPT_SSL_CIPHER_LIST, m_cipherlist.c_str());
|
|
|
|
+ // Load certificate data from environment paths
|
|
+ g_curlInterface.easy_setopt(m_state->m_easyHandle, CURLOPT_CAPATH, getenv("SSL_CERT_DIR"));
|
|
+ g_curlInterface.easy_setopt(m_state->m_easyHandle, CURLOPT_CAINFO, getenv("SSL_CERT_FILE"));
|
|
+
|
|
if (CServiceBroker::GetSettingsComponent()->GetAdvancedSettings()->m_curlDisableHTTP2)
|
|
g_curlInterface.easy_setopt(h, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
|
|
else
|
|
// enable HTTP2 support. default: CURL_HTTP_VERSION_1_1. Curl >= 7.62.0 defaults to CURL_HTTP_VERSION_2TLS
|
|
g_curlInterface.easy_setopt(h, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2TLS);
|