[Curl] Make the cipher suites, the signing algorithms and the curve lists configurable.
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 11 May 2018 08:31:48 +0000 (08:31 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 11 May 2018 08:31:48 +0000 (08:31 +0000)
commit59fdb8b7a6c8850c7822f1928e17d3bfce2cdf77
tree6747cf15a16c3595a48e8153f244cf88b36b209f
parentb9450f00c286c42f576a7671f4a3239710ae2590
[Curl] Make the cipher suites, the signing algorithms and the curve lists configurable.
https://bugs.webkit.org/show_bug.cgi?id=185139

Add interface to configure the cipher suites, the signing algorithms and the curve lists
used by OpenSSL and libcurl to exchange, to sign or to verify keys.

Patch by Basuke Suzuki <Basuke.Suzuki@sony.com> on 2018-05-11
Reviewed by Youenn Fablet.

No new tests in public. Have tested internally.

* platform/network/curl/CurlContext.cpp:
(WebCore::CurlHandle::setSslCipherList):
* platform/network/curl/CurlContext.h:
* platform/network/curl/CurlRequest.cpp:
(WebCore::CurlRequest::setupTransfer):
(WebCore::CurlRequest::willSetupSslCtx):
* platform/network/curl/CurlSSLHandle.cpp:
(WebCore::CurlSSLHandle::getCACertPathEnv):
* platform/network/curl/CurlSSLHandle.h:
(WebCore::CurlSSLHandle::getCipherList const):
(WebCore::CurlSSLHandle::getSignatureAlgorithmsList const):
(WebCore::CurlSSLHandle::getCurvesList const):
(WebCore::CurlSSLHandle::setCipherList):
(WebCore::CurlSSLHandle::setSignatureAlgorithmsList):
(WebCore::CurlSSLHandle::setCurvesList):
(WebCore::CurlSSLHandle::getCACertPath const):
(WebCore::CurlSSLHandle::setCACertPath):
* platform/network/curl/CurlSSLVerifier.cpp:
(WebCore::CurlSSLVerifier::CurlSSLVerifier):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@231696 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore/ChangeLog
Source/WebCore/platform/network/curl/CurlContext.cpp
Source/WebCore/platform/network/curl/CurlContext.h
Source/WebCore/platform/network/curl/CurlRequest.cpp
Source/WebCore/platform/network/curl/CurlSSLHandle.cpp
Source/WebCore/platform/network/curl/CurlSSLHandle.h
Source/WebCore/platform/network/curl/CurlSSLVerifier.cpp