Index: modules/system/system.install =================================================================== RCS file: /cvs/drupal/drupal/modules/system/system.install,v retrieving revision 1.69.2.9 diff -u -p -r1.69.2.9 system.install --- modules/system/system.install 10 Jan 2008 22:14:24 -0000 1.69.2.9 +++ modules/system/system.install 13 Jan 2008 12:15:41 -0000 @@ -30,7 +30,7 @@ function system_requirements($phase) { 'value' => $software, ); - // Test PHP version + // Test PHP version. $requirements['php'] = array( 'title' => $t('PHP'), 'value' => ($phase == 'runtime') ? l(phpversion(), 'admin/logs/status/php') : phpversion(), @@ -39,9 +39,22 @@ function system_requirements($phase) { $requirements['php']['description'] = $t('Your PHP installation is too old. Drupal requires at least PHP %version.', array('%version' => DRUPAL_MINIMUM_PHP)); $requirements['php']['severity'] = REQUIREMENT_ERROR; } - if (ini_get('register_globals')) { - $requirements['php']['description'] = $t('register_globals is enabled. Drupal requires this configuration directive to be disabled. Your site may not be secure when register_globals is enabled. The PHP manual has instructions for how to change configuration settings.'); - $requirements['php']['severity'] = REQUIREMENT_ERROR; + + // Test register_globals setting. + // A boolean ini value of off will be returned as an empty string or "0" + // while a boolean ini value of on will be returned as "1". + // The function can also return the literal string of INI value. + $register_globals = ini_get('register_globals'); + $requirements['register_globals'] = array( + 'title' => $t('Register globals'), + ); + if (!empty($register_globals) && strtolower($register_globals) != 'off') { + $requirements['register_globals']['description'] = $t('register_globals is enabled. Drupal requires this configuration directive to be disabled. Your site may not be secure when register_globals is enabled. The PHP manual has instructions for how to change configuration settings.'); + $requirements['register_globals']['severity'] = REQUIREMENT_ERROR; + $requirements['register_globals']['value'] = $t('Enabled (%value)', array('%value' =>$register_globals)); + } + else { + $requirements['register_globals']['value'] = $t('Disabled (%value)', array('%value' => $register_globals)); } // Test DB version