stas Thu Jul 9 00:21:18 2009 UTC
Modified files: (Branch: PHP_5_3)
/php-src/main main.c
Log:
fix mail.log openbasedir interaction with .htaccess
http://cvs.php.net/viewvc.cgi/php-src/main/main.c?r1=1.640.2.23.2.57.2.56&r2=1.640.2.23.2.57.2.57&diff_format=u
Index: php-src/main/main.c
diff -u php-src/main/main.c:1.640.2.23.2.57.2.56
php-src/main/main.c:1.640.2.23.2.57.2.57
--- php-src/main/main.c:1.640.2.23.2.57.2.56 Tue Jul 7 16:42:11 2009
+++ php-src/main/main.c Thu Jul 9 00:21:17 2009
@@ -18,7 +18,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: main.c,v 1.640.2.23.2.57.2.56 2009/07/07 16:42:11 jani Exp $ */
+/* $Id: main.c,v 1.640.2.23.2.57.2.57 2009/07/09 00:21:17 stas Exp $ */
/* {{{ includes
*/
@@ -367,6 +367,26 @@
/* {{{ PHP_INI_MH
*/
+static PHP_INI_MH(OnUpdateMailLog)
+{
+ /* Only do the safemode/open_basedir check at runtime */
+ if (stage == PHP_INI_STAGE_RUNTIME || stage == PHP_INI_STAGE_HTACCESS) {
+ if (PG(safe_mode) && (!php_checkuid(new_value, NULL,
CHECKUID_CHECK_FILE_AND_DIR))) {
+ return FAILURE;
+ }
+
+ if (PG(open_basedir) && php_check_open_basedir(new_value
TSRMLS_CC)) {
+ return FAILURE;
+ }
+
+ }
+ OnUpdateString(entry, new_value, new_value_length, mh_arg1, mh_arg2,
mh_arg3, stage TSRMLS_CC);
+ return SUCCESS;
+}
+/* }}} */
+
+/* {{{ PHP_INI_MH
+ */
static PHP_INI_MH(OnChangeMailForceExtra)
{
/* Don't allow changing it in htaccess */
@@ -487,7 +507,7 @@
PHP_INI_ENTRY("SMTP",
"localhost",PHP_INI_ALL, NULL)
PHP_INI_ENTRY("smtp_port", "25",
PHP_INI_ALL, NULL)
STD_PHP_INI_BOOLEAN("mail.add_x_header", "0",
PHP_INI_SYSTEM|PHP_INI_PERDIR, OnUpdateBool,
mail_x_header, php_core_globals, core_globals)
- STD_PHP_INI_ENTRY("mail.log", NULL,
PHP_INI_SYSTEM|PHP_INI_PERDIR, OnUpdateString,
mail_log, php_core_globals, core_globals)
+ STD_PHP_INI_ENTRY("mail.log", NULL,
PHP_INI_SYSTEM|PHP_INI_PERDIR, OnUpdateMailLog,
mail_log, php_core_globals, core_globals)
PHP_INI_ENTRY("browscap", NULL,
PHP_INI_SYSTEM, NULL)
PHP_INI_ENTRY("memory_limit", "128M",
PHP_INI_ALL, OnChangeMemoryLimit)
PHP_INI_ENTRY("precision", "14",
PHP_INI_ALL, OnSetPrecision)
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php