From 7e91245ee4c550a2eb6ba7d6735ba3d0c6760ff9 Mon Sep 17 00:00:00 2001
From: kaliko <kaliko@azylum.org>
Date: Fri, 27 Jun 2014 11:29:08 +0200
Subject: [PATCH] Better file access controls

---
 sima/utils/config.py | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/sima/utils/config.py b/sima/utils/config.py
index cd16a14..74c789a 100644
--- a/sima/utils/config.py
+++ b/sima/utils/config.py
@@ -129,22 +129,23 @@ class ConfMan(object):  # CONFIG MANAGER CLASS
         """TODO: redundant with startopt cli args controls
         """
         ok = True
-        for ftochk in [self.config['log']['logfile'],
-                self.config['daemon']['pidfile'],]:
+        for op, ftochk in [('log', self.config['log']['logfile']),
+                           ('pidfile', self.config['daemon']['pidfile']),]:
+            if not ftochk:
+                continue
             if not exists(ftochk):
                 # Is parent directory writable then
                 filedir = dirname(ftochk)
                 if not access(filedir, W_OK):
-                    self.log.critical('no write access to "{0}"'.format(filedir))
+                    self.log.critical('no write access to "{0}" ({1})'.format(filedir, op))
                     ok = False
             else:
                 if not access(ftochk, W_OK):
-                    self.log.critical('no write access to "{0}"'.format(ftochk))
+                    self.log.critical('no write access to "{0}" ({1}))'.format(ftochk, op))
                     ok = False
         if not ok:
             sys.exit(2)
 
-
     def control_mod(self):
         """
         Controls conf file permissions.
-- 
2.39.5