diff options
author | Stanislav Malyshev <stas@php.net> | 2007-09-18 20:19:34 +0000 |
---|---|---|
committer | Stanislav Malyshev <stas@php.net> | 2007-09-18 20:19:34 +0000 |
commit | 280e6464e892d03cb976f46982c9ffa2764a7769 (patch) | |
tree | a851eca8b16836c7ae122a716e1408a52ad1334f /ext | |
parent | 785b9d76f8bb373a05b52b8c60e391eb0e7b6263 (diff) | |
download | php-git-280e6464e892d03cb976f46982c9ffa2764a7769.tar.gz |
limit dl() argument length (patch by Christian Hoffmann)
Diffstat (limited to 'ext')
-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 7b2f5df87f..a31f1b4b1b 100644 --- a/ext/standard/dl.c +++ b/ext/standard/dl.c @@ -73,6 +73,11 @@ PHP_FUNCTION(dl) RETURN_FALSE; } + 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; + } + if ((strncmp(sapi_module.name, "cgi", 3)!=0) && (strcmp(sapi_module.name, "cli")!=0) && (strncmp(sapi_module.name, "embed", 5)!=0)) { |