Actions
Bug #75908
closedRespect ssl_verify_peer, ssl_verify_host and ssl_capath settings for curl requests not only in case of using curlProxyServer
Status:
Rejected
Priority:
Should have
Assignee:
Category:
Backend API
Target version:
Start date:
2016-04-25
Due date:
% Done:
0%
Estimated time:
TYPO3 Version:
7
PHP Version:
Tags:
Complexity:
Is Regression:
No
Sprint Focus:
Description
In contrast to solution in #75038 I think the 'ssl_verify_*'
option in configuration should be respected not only when option 'curlProxyServer'
is set:
Index: typo3/sysext/core/Classes/Utility/GeneralUtility.php <+>UTF-8 =================================================================== --- typo3/sysext/core/Classes/Utility/GeneralUtility.php (revision ) +++ typo3/sysext/core/Classes/Utility/GeneralUtility.php (revision ) @@ -2474,11 +2474,13 @@ if (is_array($requestHeaders)) { curl_setopt($ch, CURLOPT_HTTPHEADER, $requestHeaders); } + + curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, (bool)$GLOBALS['TYPO3_CONF_VARS']['HTTP']['ssl_verify_host']); + curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, (bool)$GLOBALS['TYPO3_CONF_VARS']['HTTP']['ssl_verify_peer']); + // (Proxy support implemented by Arco <arco@appeltaart.mine.nu>) if ($GLOBALS['TYPO3_CONF_VARS']['SYS']['curlProxyServer']) { curl_setopt($ch, CURLOPT_PROXY, $GLOBALS['TYPO3_CONF_VARS']['SYS']['curlProxyServer']); - curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, (bool)$GLOBALS['TYPO3_CONF_VARS']['HTTP']['ssl_verify_host']); - curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, (bool)$GLOBALS['TYPO3_CONF_VARS']['HTTP']['ssl_verify_peer']); if ($GLOBALS['TYPO3_CONF_VARS']['HTTP']['ssl_verify_peer']) { if ($GLOBALS['TYPO3_CONF_VARS']['HTTP']['ssl_cafile']) { curl_setopt($ch, CURLOPT_CAINFO, $GLOBALS['TYPO3_CONF_VARS']['HTTP']['ssl_cafile']);
Reason:
It's an annoying problem in environments where a self signed certificate is used, e.G. while developing or testing. I guess many developers work with such a certificate. So they have to change core files for running code which uses GeneralUtility::getUrl() or switch back to http:, which in my case (and in surely in some others) also means to change .htaccess where https: is forced.
Actions