From 4564898c288ab4cd221eeba91ab728331f12dba5 Mon Sep 17 00:00:00 2001 From: thomas Date: Mon, 12 Nov 2012 15:37:44 +0100 Subject: [PATCH] Use curl to get remote file content --- lib/ocsclient.php | 30 ++++++++++++++++++++---------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/lib/ocsclient.php b/lib/ocsclient.php index b6b5ad8f0a9..283f95d5851 100644 --- a/lib/ocsclient.php +++ b/lib/ocsclient.php @@ -55,19 +55,29 @@ class OC_OCSClient{ * This function calls an OCS server and returns the response. It also sets a sane timeout */ private static function getOCSresponse($url) { - // set a sensible timeout of 10 sec to stay responsive even if the server is down. - $ctx = stream_context_create( - array( - 'http' => array( - 'timeout' => 10 - ) - ) - ); - $data=@file_get_contents($url, 0, $ctx); + $data = self::fileGetContentCurl($url); return($data); } - + /** + * @Brief Get file content via curl. + * @return string of the response + * This function get the content of a page via curl. + */ + + private static function fileGetContentCurl($url){ + $curl = curl_init(); + + curl_setopt($curl, CURLOPT_HEADER, 0); + curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); + curl_setopt($curl, CURLOPT_URL, $url); + + $data = curl_exec($curl); + curl_close($data); + + return $data; + } + /** * @brief Get all the categories from the OCS server * @returns array with category ids -- 2.39.5