diff mcabber/src/settings.c @ 362:d8f147d6e872

Check directory and config file permissions * Check history directory and configuration file permissions, and correct them to 0700 and 0600 if necessary. * Warn when mcabber main directory ($HOME/.mcabber) has bad permissions * Reset UseFileLogging & FileLoadLogs when the log dir does not exist
author Mikael Berthe <mikael@lilotux.net>
date Sun, 24 Jul 2005 14:37:27 +0100
parents dea407d53fe6
children 33b8e801ffa6
line wrap: on
line diff
--- a/mcabber/src/settings.c	Sat Jul 23 21:50:06 2005 +0100
+++ b/mcabber/src/settings.c	Sun Jul 24 14:37:27 2005 +0100
@@ -92,11 +92,20 @@
         return -1;
       }
     }
+    // Check configuration file permissions
+    // As it could contain sensitive data, we make it user-readable only
+    checkset_perm(filename, TRUE);
+    // Check mcabber dir.  There we just warn, we don't change the modes
+    sprintf(filename, "%s/.mcabber/", home);
+    checkset_perm(filename, FALSE);
     g_free(filename);
-  }
-  else if ((fp = fopen(filename, "r")) == NULL) {
-    perror("fopen (cfg_file())");
-    return -1;
+  } else {
+    if ((fp = fopen(filename, "r")) == NULL) {
+      perror("fopen (cfg_file())");
+      return -1;
+    }
+    // Check configuration file permissions (see above)
+    checkset_perm(filename, TRUE);
   }
 
   buf = g_new(char, 512);