? dynamic_theme.patch
? files
? fix_sites.patch
? maintenance_theme.patch
? restore_maintenance_mode.patch
? profiles/InstallerAutolocale.zip
? sites/logrus.com.x
? sites/all/dynamic_text.tar.gz.txt
? sites/all/modules
? sites/all/themes
? sites/default/settings.php
? themes/bluemarine/install_page.tpl.php
? themes/bluemarine/maintenance_page.tpl.php
? themes/garland/maintenance_page.tpl.php
Index: install.php
===================================================================
RCS file: /cvs/drupal/drupal/install.php,v
retrieving revision 1.62
diff -u -p -r1.62 install.php
--- install.php	25 Jun 2007 12:44:11 -0000	1.62
+++ install.php	30 Jun 2007 01:35:20 -0000
@@ -107,12 +107,13 @@ function install_main() {
     drupal_install_profile($profile, $modules);
 
     // Warn about settings.php permissions risk
-    $settings_file = './'. conf_path() .'/settings.php';
-    if (!drupal_verify_install_file($settings_file, FILE_EXIST|FILE_READABLE|FILE_NOT_WRITABLE)) {
-      drupal_set_message(st('All necessary changes to %file have been made, so you should now remove write permissions to this file. Failure to remove write permissions to this file is a security risk.', array('%file' => $settings_file)), 'error');
+    $settings_dir = './'. conf_path();
+    $settings_file = $settings_dir .'/settings.php';
+    if (!drupal_verify_install_file($settings_file, FILE_EXIST|FILE_READABLE|FILE_NOT_WRITABLE) || !drupal_verify_install_file($settings_dir, FILE_NOT_WRITABLE, 'dir')) {
+      drupal_set_message(st('All necessary changes to %dir and %file have been made, so you should now remove write permissions to these files. Failure to remove write permissions to these files is a security risk.', array('%dir' => $settings_dir, '%file' => $settings_file)), 'error');
     }
     else {
-      drupal_set_message(st('All necessary changes to %file have been made. It has been set to read-only for security.', array('%file' => $settings_file)));
+      drupal_set_message(st('All necessary changes to %dir and %file have been made. They have been set to read-only for security.', array('%dir' => $settings_dir, '%file' => $settings_file)));
     }
   }
 
Index: modules/system/system.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.install,v
retrieving revision 1.124
diff -u -p -r1.124 system.install
--- modules/system/system.install	26 Jun 2007 20:24:19 -0000	1.124
+++ modules/system/system.install	30 Jun 2007 01:35:22 -0000
@@ -66,12 +66,20 @@ function system_requirements($phase) {
 
   // Test settings.php file writability
   if ($phase == 'runtime') {
-    if (!drupal_verify_install_file(conf_path() .'/settings.php', FILE_EXIST|FILE_READABLE|FILE_NOT_WRITABLE)) {
+    $conf_dir = drupal_verify_install_file(conf_path(), FILE_NOT_WRITABLE, 'dir');
+    $conf_file = drupal_verify_install_file(conf_path() .'/settings.php', FILE_EXIST|FILE_READABLE|FILE_NOT_WRITABLE);
+    if (!$conf_dir || !$conf_file) {
       $requirements['settings.php'] = array(
         'value' => $t('Not protected'),
         'severity' => REQUIREMENT_ERROR,
-        'description' => $t('The file %file is not protected from modifications and poses a security risk. You must change the file\'s permissions to be non-writable.', array('%file' => conf_path() .'/settings.php')),
+        'description' => '',
       );
+      if (!$conf_dir) {
+        $requirements['settings.php']['description'] .= $t('The directory %file is not protected from modifications and poses a security risk. You must change the directory\'s permissions to be non-writable. ', array('%file' => conf_path()));
+      }
+      if (!$conf_file) {
+        $requirements['settings.php']['description'] .= $t('The file %file is not protected from modifications and poses a security risk. You must change the file\'s permissions to be non-writable.', array('%file' => conf_path() .'/settings.php'));
+      }
     }
     else {
       $requirements['settings.php'] = array(
