summaryrefslogtreecommitdiff
path: root/main/php_open_temporary_file.c
diff options
context:
space:
mode:
authorAnatol Belski <ab@php.net>2016-06-09 13:39:19 +0200
committerAnatol Belski <ab@php.net>2016-06-09 17:19:40 +0200
commit22f20e2868452493cebfc1a80858552055c9b764 (patch)
tree18427e26a057be40ac9c5ef1ed6947f2aa51da30 /main/php_open_temporary_file.c
parent978f74a848ef91e53e8a80d9a14a07565cecc895 (diff)
downloadphp-git-22f20e2868452493cebfc1a80858552055c9b764.tar.gz
add flags to suppress the verbosity
Diffstat (limited to 'main/php_open_temporary_file.c')
-rw-r--r--main/php_open_temporary_file.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/main/php_open_temporary_file.c b/main/php_open_temporary_file.c
index ee752b98ff..caddf1b390 100644
--- a/main/php_open_temporary_file.c
+++ b/main/php_open_temporary_file.c
@@ -19,6 +19,7 @@
/* $Id$ */
#include "php.h"
+#include "php_open_temporary_file.h"
#include <errno.h>
#include <sys/types.h>
@@ -249,7 +250,7 @@ PHPAPI const char* php_get_temporary_directory(void)
* This function should do its best to return a file pointer to a newly created
* unique file, on every platform.
*/
-PHPAPI int php_open_temporary_fd_ex(const char *dir, const char *pfx, zend_string **opened_path_p, zend_bool open_basedir_check)
+PHPAPI int php_open_temporary_fd_ex(const char *dir, const char *pfx, zend_string **opened_path_p, uint32_t flags)
{
int fd;
const char *temp_dir;
@@ -265,7 +266,7 @@ PHPAPI int php_open_temporary_fd_ex(const char *dir, const char *pfx, zend_strin
def_tmp:
temp_dir = php_get_temporary_directory();
- if (temp_dir && *temp_dir != '\0' && (!open_basedir_check || !php_check_open_basedir(temp_dir))) {
+ if (temp_dir && *temp_dir != '\0' && (!(flags & PHP_TMP_FILE_OPEN_BASEDIR_CHECK) || !php_check_open_basedir(temp_dir))) {
return php_do_open_temporary_file(temp_dir, pfx, opened_path_p);
} else {
return -1;
@@ -276,7 +277,9 @@ def_tmp:
fd = php_do_open_temporary_file(dir, pfx, opened_path_p);
if (fd == -1) {
/* Use default temporary directory. */
- php_error_docref(NULL, E_NOTICE, "file created in the system's temporary directory");
+ if (!(flags & PHP_TMP_FILE_SILENT)) {
+ php_error_docref(NULL, E_NOTICE, "file created in the system's temporary directory");
+ }
goto def_tmp;
}
return fd;