1
0
mirror of https://github.com/php/php-src.git synced 2026-03-26 17:22:15 +01:00

Fixed incorrect handling of files starting with a .

This commit is contained in:
Ilia Alshanetsky
2002-10-20 20:44:10 +00:00
parent c33a695f85
commit fef922307c

View File

@@ -1518,7 +1518,16 @@ PHPAPI php_stream *_php_stream_fopen_with_path(char *filename, char *mode, char
filename_length = strlen(filename);
/* Relative path open */
if (*filename == '.') {
if (*filename == '.' && (*(filename+1) == '/' || *(filename+1) == '.')) {
/* further checks, we could have ....... filenames */
ptr = filename + 1;
if (ptr == '.') {
while (*(++ptr) == '.');
if (ptr != '/') { /* not a relative path after all */
goto not_relative_path;
}
}
if (php_check_open_basedir(filename TSRMLS_CC)) {
return NULL;
@@ -1535,6 +1544,8 @@ PHPAPI php_stream *_php_stream_fopen_with_path(char *filename, char *mode, char
* safe mode GID/UID checks
*/
not_relative_path:
/* Absolute path open */
if (IS_ABSOLUTE_PATH(filename, filename_length)) {