#28878 [Csd]: Setting of inikey's in obj.conf fails

From: Date: Thu, 24 Jun 2004 03:53:43 +0000
Subject: #28878 [Csd]: Setting of inikey's in obj.conf fails
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-61228@lists.php.net to get a copy of this message
ID: 28878 User updated by: michaelw at webcentral dot com dot au Reported By: michaelw at webcentral dot com dot au Status: Closed Bug Type: iPlanet related Operating System: Solaris 9 PHP Version: 4.3.7 New Comment: The php4-STABLE-latest.tar.gz appears to work correctly, and allows me to set open_basedir as I would expect. Thanks. Previous Comments: ------------------------------------------------------------------------ [2004-06-23 15:09:48] thetaphi@php.net Please try using this CVS snapshot: http://snaps.php.net/php4-STABLE-latest.tar.gz For Windows: http://snaps.php.net/win32/php4-win32-STABLE-latest.zip You can set all php.ini settings now. Also: * Using of "bucket" parameter to php4_execute for performance tests will not write warning message to server-log from now on * Double CONTENT_TYPE server variables in POST request eleminated ------------------------------------------------------------------------ [2004-06-23 12:03:02] thetaphi@php.net We are discussing that at the moment. The problem is that SYSTEM values are for the whole PHP library and are not thread specific (I think so), so changing this in a php4_execute directive changes that value for all currently running requests -> problem. After discussing that i will decide to change this. All other multithreaded SAPIs do it in that way (PHP_INI_USER) doc_root can in PHP scripts accessed via $_SERVER['DOCUMENT_ROOT'] ------------------------------------------------------------------------ [2004-06-23 02:19:13] michaelw at webcentral dot com dot au I've done a quick test, and the latest CVS STABLE release appears to work correctly with regards to the ok &= line, although I haven't got time to test it as fully as I would like to, so it would be nice if someone else can confirm this... The latest CVS STABLE release still checks the key you are attempting to set against PHP_INI_USER (and thus won't allow you to set things such as open_basedir and doc_root), when I believe (as it is being set in a system level file) that it should allow everything from PHP_INI_SYSTEM (which will allow you to set open_basedir and doc_root) ? ------------------------------------------------------------------------ [2004-06-22 17:38:24] thetaphi@php.net Please try using this CVS snapshot: http://snaps.php.net/php4-STABLE-latest.tar.gz For Windows: http://snaps.php.net/win32/php4-win32-STABLE-latest.zip The logic here is incorrect, could be better to change code to yours or the following -- sorry: ok&=(strcasecmp(entry->param->name,nsapi_exclude_from_ini_entries[j])!=0); What should be checked: there is a list of values that should not be ini-values because they are normal parameters of the php4_execute function ("script", "type",...). This for loop goes through the list of this entries, if one of the entries is entry->param->name (strcasecmp==0) then this should turn to "FALSE". Ilia: Your thing works, but will not do what is wanted. ------------------------------------------------------------------------ [2004-06-22 16:24:05] iliaa@php.net Does it work if you change ok&=(!strcasecmp(entry->param->name,nsapi_exclude_from_ini_entries[j])); to ok=(!strcasecmp(entry->param->name,nsapi_exclude_from_ini_entries[j])); ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/28878 -- Edit this bug report at http://bugs.php.net/?id=28878&edit=1

« previous php.bugs (#61228) next »