iliaa Fri Aug 11 15:07:30 2006 UTC
Modified files: (Branch: PHP_5_2)
/php-src/ext/imap php_imap.c
Log:
MFB: Extend safe_mode/open_basedir checks to imap_reopen() as well.
http://cvs.php.net/viewvc.cgi/php-src/ext/imap/php_imap.c?r1=1.208.2.7.2.2&r2=1.208.2.7.2.3&diff_format=u
Index: php-src/ext/imap/php_imap.c
diff -u php-src/ext/imap/php_imap.c:1.208.2.7.2.2
php-src/ext/imap/php_imap.c:1.208.2.7.2.3
--- php-src/ext/imap/php_imap.c:1.208.2.7.2.2 Fri Aug 4 20:31:19 2006
+++ php-src/ext/imap/php_imap.c Fri Aug 11 15:07:29 2006
@@ -26,7 +26,7 @@
| PHP 4.0 updates: Zeev Suraski <[EMAIL PROTECTED]> |
+----------------------------------------------------------------------+
*/
-/* $Id: php_imap.c,v 1.208.2.7.2.2 2006/08/04 20:31:19 iliaa Exp $ */
+/* $Id: php_imap.c,v 1.208.2.7.2.3 2006/08/11 15:07:29 iliaa Exp $ */
#define IMAP41
@@ -826,6 +826,14 @@
}
imap_le_struct->flags = cl_flags;
}
+
+ /* local filename, need to perform open_basedir and safe_mode checks */
+ if (Z_STRVAL_PP(mailbox)[0] != '{' &&
+ (php_check_open_basedir(Z_STRVAL_PP(mailbox) TSRMLS_CC)
||
+ (PG(safe_mode) && !php_checkuid(Z_STRVAL_PP(mailbox),
NULL, CHECKUID_CHECK_FILE_AND_DIR)))) {
+ RETURN_FALSE;
+ }
+
imap_stream = mail_open(imap_le_struct->imap_stream,
Z_STRVAL_PP(mailbox), flags);
if (imap_stream == NIL) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Couldn't re-open
stream");
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php