cvs: php4 /main fopen-wrappers.c safe_mode.h
| From: | Andi Gutmans | Date: | Thu, 02 Nov 2000 23:30:49 +0000 |
| Subject: | cvs: php4 /main fopen-wrappers.c safe_mode.h | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-2436@lists.php.net to get a copy of this message | ||
andi Thu Nov 2 15:30:49 2000 EDT
Modified files:
/php4/main fopen-wrappers.c safe_mode.h
Log:
- When mode is specified the flag is a don't care
Index: php4/main/fopen-wrappers.c
diff -u php4/main/fopen-wrappers.c:1.105 php4/main/fopen-wrappers.c:1.106
--- php4/main/fopen-wrappers.c:1.105 Thu Nov 2 15:19:48 2000
+++ php4/main/fopen-wrappers.c Thu Nov 2 15:30:48 2000
@@ -16,7 +16,7 @@
| Jim Winstead <jimw@php.net> |
+----------------------------------------------------------------------+
*/
-/* $Id: fopen-wrappers.c,v 1.105 2000/11/02 23:19:48 andi Exp $ */
+/* $Id: fopen-wrappers.c,v 1.106 2000/11/02 23:30:48 andi Exp $ */
#include "php.h"
#include "php_globals.h"
@@ -256,7 +256,7 @@
if (options & USE_PATH && PG(include_path) != NULL) {
return php_fopen_with_path(path, mode, PG(include_path), opened_path);
} else {
- if (options & ENFORCE_SAFE_MODE && PG(safe_mode) && (!php_checkuid(path,
mode, CHECKUID_DISALLOW_FILE_NOT_EXISTS))) {
+ if (options & ENFORCE_SAFE_MODE && PG(safe_mode) && (!php_checkuid(path,
mode, CHECKUID_CHECK_MODE_PARAM))) {
return NULL;
}
return php_fopen_and_set_opened_path(path, mode, opened_path);
@@ -373,14 +373,14 @@
/* Absolute & relative path open */
if ((*filename == '.') || (IS_ABSOLUTE_PATH(filename, filename_length))) {
- if (PG(safe_mode) && (!php_checkuid(filename, mode, CHECKUID_DISALLOW_FILE_NOT_EXISTS)))
{
+ if (PG(safe_mode) && (!php_checkuid(filename, mode, CHECKUID_CHECK_MODE_PARAM))) {
return NULL;
}
return php_fopen_and_set_opened_path(filename, mode, opened_path);
}
if (!path || (path && !*path)) {
- if (PG(safe_mode) && (!php_checkuid(filename, mode, CHECKUID_DISALLOW_FILE_NOT_EXISTS)))
{
+ if (PG(safe_mode) && (!php_checkuid(filename, mode, CHECKUID_CHECK_MODE_PARAM))) {
return NULL;
}
return php_fopen_and_set_opened_path(filename, mode, opened_path);
@@ -401,7 +401,7 @@
}
snprintf(trypath, MAXPATHLEN, "%s/%s", ptr, filename);
if (PG(safe_mode)) {
- if (V_STAT(trypath, &sb) == 0 && (!php_checkuid(trypath, mode,
CHECKUID_DISALLOW_FILE_NOT_EXISTS))) {
+ if (V_STAT(trypath, &sb) == 0 && (!php_checkuid(trypath, mode,
CHECKUID_CHECK_MODE_PARAM))) {
efree(pathbuf);
return NULL;
}
@@ -464,7 +464,7 @@
if (options & USE_PATH) {
fp = php_fopen_with_path((char *) path, mode, PG(include_path), opened_path);
} else {
- if (options & ENFORCE_SAFE_MODE && PG(safe_mode) && (!php_checkuid(path,
mode, CHECKUID_DISALLOW_FILE_NOT_EXISTS))) {
+ if (options & ENFORCE_SAFE_MODE && PG(safe_mode) && (!php_checkuid(path,
mode, CHECKUID_CHECK_MODE_PARAM))) {
fp = NULL;
} else {
fp = php_fopen_and_set_opened_path(path, mode, opened_path);
Index: php4/main/safe_mode.h
diff -u php4/main/safe_mode.h:1.5 php4/main/safe_mode.h:1.6
--- php4/main/safe_mode.h:1.5 Wed Nov 1 10:05:27 2000
+++ php4/main/safe_mode.h Thu Nov 2 15:30:48 2000
@@ -6,6 +6,7 @@
#define CHECKUID_ALLOW_FILE_NOT_EXISTS 1
#define CHECKUID_CHECK_FILE_AND_DIR 2
#define CHECKUID_ALLOW_ONLY_DIR 3
+#define CHECKUID_CHECK_MODE_PARAM 4
extern PHPAPI int php_checkuid(const char *filename, char *fopen_mode, int mode);
extern PHPAPI char *php_get_current_user(void);