diff options
| author | Stanislav Malyshev <stas@php.net> | 2007-09-18 20:21:04 +0000 |
|---|---|---|
| committer | Stanislav Malyshev <stas@php.net> | 2007-09-18 20:21:04 +0000 |
| commit | a8f965bf80632664b84fdf83cdb0a5abee9496d1 (patch) | |
| tree | 3e7436e14afa604156ef2d53c60c5ee0786e3bdd | |
| parent | c701d46a4b1f883af0ea788d495b98613dd1c302 (diff) | |
| download | php-git-a8f965bf80632664b84fdf83cdb0a5abee9496d1.tar.gz | |
limit dl() argument length (patch by Christian Hoffmann)
| -rw-r--r-- | ext/standard/dl.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/ext/standard/dl.c b/ext/standard/dl.c index 5de1780eac..4e4c8c2d3f 100644 --- a/ext/standard/dl.c +++ b/ext/standard/dl.c @@ -63,6 +63,11 @@ PHP_FUNCTION(dl) return; } + if (Z_STRLEN_PP(file) >= MAXPATHLEN) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "File name exceeds the maximum allowed length of %d characters", MAXPATHLEN); + RETURN_FALSE; + } + php_dl(filename, MODULE_TEMPORARY, return_value, 0 TSRMLS_CC); EG(full_tables_cleanup) = 1; } |
