From 4613456a8ab2928954d7255b7e0df7387ab71c71 Mon Sep 17 00:00:00 2001 From: Lukas Reschke Date: Tue, 12 May 2015 12:00:56 +0200 Subject: [PATCH] Check if cURL supports the desired features MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Older versions of cURL that are unfortunately still bundled by distributors don't support these features which will result in errors and other possibly unpredictable behaviour. Fixes https://github.com/owncloud/core/issues/16179 for master – stable8 requires another patch. --- lib/private/files/storage/dav.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/private/files/storage/dav.php b/lib/private/files/storage/dav.php index 3d9d48c7763c..0ddfde150473 100644 --- a/lib/private/files/storage/dav.php +++ b/lib/private/files/storage/dav.php @@ -346,8 +346,12 @@ public function fopen($path, $mode) { curl_setopt($curl, CURLOPT_URL, $this->createBaseUri() . $this->encodePath($path)); curl_setopt($curl, CURLOPT_FILE, $fp); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); - curl_setopt($curl, CURLOPT_PROTOCOLS, CURLPROTO_HTTP | CURLPROTO_HTTPS); - curl_setopt($curl, CURLOPT_REDIR_PROTOCOLS, CURLPROTO_HTTP | CURLPROTO_HTTPS); + if(defined('CURLOPT_PROTOCOLS')) { + curl_setopt($curl, CURLOPT_PROTOCOLS, CURLPROTO_HTTP | CURLPROTO_HTTPS); + } + if(defined('CURLOPT_REDIR_PROTOCOLS')) { + curl_setopt($curl, CURLOPT_REDIR_PROTOCOLS, CURLPROTO_HTTP | CURLPROTO_HTTPS); + } if ($this->secure === true) { curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, true); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2);