From: Stanislav Malyshev Date: Thu, 13 Sep 2007 01:16:24 +0000 (+0000) Subject: MFB: docs say dl() parameter can be filename only - enforce it X-Git-Tag: RELEASE_2_0_0a1~1827 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=45a25008bdb152461c88534e6ea2e8210fd5dd91;p=php MFB: docs say dl() parameter can be filename only - enforce it --- diff --git a/ext/standard/dl.c b/ext/standard/dl.c index aecdf24ee6..4695a42dca 100644 --- a/ext/standard/dl.c +++ b/ext/standard/dl.c @@ -115,6 +115,13 @@ void php_dl(zval *file, int type, zval *return_value, int start_now TSRMLS_DC) if (extension_dir && extension_dir[0]){ int extension_dir_len = strlen(extension_dir); + if(type == MODULE_TEMPORARY) { + if(strchr(filename, '/') != NULL || strchr(filename, DEFAULT_SLASH) != NULL) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Temporary module name should contain only filename"); + RETURN_FALSE; + } + } + if (IS_SLASH(extension_dir[extension_dir_len-1])) { spprintf(&libpath, 0, "%s%s", extension_dir, filename); /* SAFE */ } else {