From: kaliko Date: Fri, 27 Jun 2014 09:29:08 +0000 (+0200) Subject: Better file access controls X-Git-Tag: 0.12.2~5 X-Git-Url: http://git.kaliko.me/?a=commitdiff_plain;h=7e91245ee4c550a2eb6ba7d6735ba3d0c6760ff9;hp=d62b8c3db5a87accb40a49d0347255bfe467911b;p=mpd-sima.git Better file access controls --- 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.