From a9a17a27cb75155a5bb798495e801840735ea215 Mon Sep 17 00:00:00 2001 From: plegall Date: Mon, 15 Feb 2016 15:02:16 +0100 Subject: feature #295, proxy support for fetchRemote --- admin/include/functions.php | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'admin') diff --git a/admin/include/functions.php b/admin/include/functions.php index 04a83d0bc..9a827d1d6 100644 --- a/admin/include/functions.php +++ b/admin/include/functions.php @@ -2076,6 +2076,8 @@ function cat_admin_access($category_id) */ function fetchRemote($src, &$dest, $get_data=array(), $post_data=array(), $user_agent='Piwigo', $step=0) { + global $conf; + // Try to retrieve data from local file? if (!url_is_remote($src)) { @@ -2111,6 +2113,17 @@ function fetchRemote($src, &$dest, $get_data=array(), $post_data=array(), $user_ if (function_exists('curl_init') && function_exists('curl_exec')) { $ch = @curl_init(); + + if (isset($conf['use_proxy']) && $conf['use_proxy']) + { + @curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, 0); + @curl_setopt($ch, CURLOPT_PROXY, $conf['proxy_server']); + if (isset($conf['proxy_auth']) && !empty($conf['proxy_auth'])) + { + @curl_setopt($ch, CURLOPT_PROXYUSERPWD, $conf['proxy_auth']); + } + } + @curl_setopt($ch, CURLOPT_URL, $src); @curl_setopt($ch, CURLOPT_HEADER, 1); @curl_setopt($ch, CURLOPT_USERAGENT, $user_agent); -- cgit v1.2.3