disable FOLLOWLOCATION when under open_basedir

This commit is contained in:
Andrew Dolgov 2013-04-16 20:40:14 +04:00
parent e2261e177b
commit 438a3ecb04
2 changed files with 4 additions and 4 deletions

View File

@ -324,7 +324,7 @@
if (!defined('NO_CURL') && function_exists('curl_init') && !ini_get("open_basedir")) { if (!defined('NO_CURL') && function_exists('curl_init') && !ini_get("open_basedir")) {
if (ini_get("safe_mode")) { if (ini_get("safe_mode") || ini_get("open_basedir")) {
$ch = curl_init(geturl($url)); $ch = curl_init(geturl($url));
} else { } else {
$ch = curl_init($url); $ch = curl_init($url);
@ -337,7 +337,7 @@
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout ? $timeout : FILE_FETCH_CONNECT_TIMEOUT); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout ? $timeout : FILE_FETCH_CONNECT_TIMEOUT);
curl_setopt($ch, CURLOPT_TIMEOUT, $timeout ? $timeout : FILE_FETCH_TIMEOUT); curl_setopt($ch, CURLOPT_TIMEOUT, $timeout ? $timeout : FILE_FETCH_TIMEOUT);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, !ini_get("safe_mode")); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, !ini_get("safe_mode") && !ini_get("open_basedir"));
curl_setopt($ch, CURLOPT_MAXREDIRS, 20); curl_setopt($ch, CURLOPT_MAXREDIRS, 20);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true); curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

View File

@ -29,7 +29,7 @@ class Af_Unburn extends Plugin {
if (strpos($article["plugin_data"], "unburn,$owner_uid:") === FALSE) { if (strpos($article["plugin_data"], "unburn,$owner_uid:") === FALSE) {
if (ini_get("safe_mode")) { if (ini_get("safe_mode") || ini_get("open_basedir")) {
$ch = curl_init(geturl($article["link"])); $ch = curl_init(geturl($article["link"]));
} else { } else {
$ch = curl_init($article["link"]); $ch = curl_init($article["link"]);
@ -38,7 +38,7 @@ class Af_Unburn extends Plugin {
curl_setopt($ch, CURLOPT_TIMEOUT, 5); curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, true); curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, !ini_get("safe_mode")); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, !ini_get("safe_mode") && !ini_get("open_basedir"));
curl_setopt($ch, CURLOPT_USERAGENT, SELF_USER_AGENT); curl_setopt($ch, CURLOPT_USERAGENT, SELF_USER_AGENT);
$contents = @curl_exec($ch); $contents = @curl_exec($ch);