diff --git a/NEWS b/NEWS index 0271685f149..9d16f9ab62d 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,8 @@ PHP NEWS ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ?? ??? 2006, PHP 5.2.0 +- Disable realpath cache when open_basedir or safe_mode are enabled on a + per-request basis. (Ilia) - Optimized require_once/include_once (eliminated fopen() on second usage). (Dmitry) - Optimized request shutdown sequence. Restoring ini directives now diff --git a/main/main.c b/main/main.c index ab35f2ec3d9..9335f3dc731 100644 --- a/main/main.c +++ b/main/main.c @@ -1097,6 +1097,11 @@ int php_request_startup(TSRMLS_D) zend_set_timeout(PG(max_input_time)); } + /* Disable realpath cache if safe_mode or open_basedir are set */ + if (PG(safe_mode) || (PG(open_basedir) && *PG(open_basedir))) { + CWDG(realpath_cache_size_limit) = 0; + } + if (PG(expose_php)) { sapi_add_header(SAPI_PHP_VERSION_HEADER, sizeof(SAPI_PHP_VERSION_HEADER)-1, 1); }