Re: PHP 4.0 Bug #7175 Updated: "perdir" ini settings are not per dir

From: 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/

« previous php.dev (#34968) next »