Re: PHP 4.0 Bug #7175 Updated: "perdir" ini settings are not per dir
| From: | Zeev Suraski | Date: | Sat, 14 Oct 2000 01:46:50 +0000 |
| Subject: | Re: PHP 4.0 Bug #7175 Updated: "perdir" ini settings are not per dir | ||
| References: | 1 | Groups: | php.dev |
| Request: | Send a blank email to php-dev+get-34968@lists.php.net to get a copy of this message | ||
The code is ok, in this context, per_dir_entry.type contains only one
value, it's never OR'd.
Zeev
On 14 Oct 2000, Bug Database wrote:
> ID: 7175
> User Update by: rick@eastcore.net
> Old-Status: Open
> Status: Closed
> Bug Type: PHP options/info functions
> Description: "perdir" ini settings are not per dir
>
> Zeev's fixes in CVS (which include changes in the suspicious
> area in sapi/apache/mod_php4.c) resolve this issue (tested on the original reporting system).
>
> This bug should be closed.
>
>
> Previous Comments:
> ---------------------------------------------------------------------------
>
> [2000-10-13 04:45:12] rick@eastcore.net
> The code in php-4.0.3/sapi/apache/mod_php4.c (line 551) looks suspicious:
>
> static zend_bool should_overwrite_per_dir_entry(php_per_dir_entry *orig_per_dir_entry,
> php_per_dir_entry *new_per_dir_entry)
> {
> if (orig_per_dir_entry->type==PHP_INI_SYSTEM
> && new_per_dir_entry->type!=PHP_INI_SYSTEM) {
> return 0;
> } else {
> return 1;
> }
> }
>
>
>
> ---------------------------------------------------------------------------
>
> [2000-10-13 03:52:29] rick@eastcore.net
> Given the apache (1.3.12) virtual hosts definitions:
>
>
> <VirtualHost 1.2.3.4>
> ServerAdmin webmaster@domain.com
> ServerName www.domain.com
> ServerAlias *.domain.com domain.com
> DocumentRoot /home/domain/htdocs
> ScriptAlias /cgi-bin/ /home/domain/cgi-bin/
> php_value include_path /home/domain/phpinc
> php_value auto_prepend_file dom_prepend.php3
> TransferLog /var/log/httpd/access_log.domain
> ErrorLog /var/log/httpd/error_log.domain
> </VirtualHost>
>
> <VirtualHost 1.2.3.4>
> ServerAdmin webmaster@network.net
> ServerName www.network.net
> ServerAlias network.net *.network.net
> DocumentRoot /home/rick/network/htdocs
> ScriptAlias /cgi-bin/ /home/rick/network/cgi-bin/
> php_value include_path /home/rick/network/phpinc
> php_value auto_prepend_file net_prepend.php3
> TransferLog /var/log/httpd/access_log.network
> ErrorLog /var/log/httpd/error_log.network
> </VirtualHost>
>
> both running a freshly compiled php3.0.4
> (configure line:
>
> ./configure'
> '--with-apache=/usr/src/apache_1.3.12'
> '--with-mysql=/usr' '--with-xml')
>
> Virtual host network.net has the same 'include_path'
> and 'auto_prepend_file' settings as domain.com. These
> were systems that had no such problem prior to the upgrade
> (from 4.0.1pl2).
>
> I dug through the source for a few hours and decided that
> it is most likely to do with php_alter_ini_entry for ini
> values set to PHP_INI_PERDIR or PHP_INI_ALL in main/main.c,
> but I couldn't make headway beyond this.
>
> If this is true, this is a show-stopper for a lot of users.
>
>
>
> ---------------------------------------------------------------------------
>
>
> Full Bug description available at: http://bugs.php.net/?id=7175
>
>
>
--
Zeev Suraski <zeev@zend.com>
http://www.zend.com/