iliaa           Fri Aug 11 15:09:43 2006 UTC

  Modified files:              
    /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.218&r2=1.219&diff_format=u
Index: php-src/ext/imap/php_imap.c
diff -u php-src/ext/imap/php_imap.c:1.218 php-src/ext/imap/php_imap.c:1.219
--- php-src/ext/imap/php_imap.c:1.218   Fri Aug  4 20:34:37 2006
+++ php-src/ext/imap/php_imap.c Fri Aug 11 15:09:43 2006
@@ -26,7 +26,7 @@
    | PHP 4.0 updates:  Zeev Suraski <[EMAIL PROTECTED]>                       |
    +----------------------------------------------------------------------+
  */
-/* $Id: php_imap.c,v 1.218 2006/08/04 20:34:37 iliaa Exp $ */
+/* $Id: php_imap.c,v 1.219 2006/08/11 15:09:43 iliaa Exp $ */
 
 #define IMAP41
 
@@ -824,6 +824,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

Reply via email to