diff options
author | plegall <plg@piwigo.org> | 2016-02-15 15:02:16 +0100 |
---|---|---|
committer | plegall <plg@piwigo.org> | 2016-02-15 15:02:16 +0100 |
commit | a9a17a27cb75155a5bb798495e801840735ea215 (patch) | |
tree | 883ec658b436923df4c9a540cd830c5340e4c3ef /admin/include | |
parent | e03dff12b15fde7f5326e1e3fe9dd42102b55fe2 (diff) |
feature #295, proxy support for fetchRemote
Diffstat (limited to 'admin/include')
-rw-r--r-- | admin/include/functions.php | 13 |
1 files changed, 13 insertions, 0 deletions
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); |