Move many configs to datadir

This commit is contained in:
Stuart Gathman
2013-03-15 23:04:38 +00:00
parent a8f373ea65
commit 5330047902
+6 -4
View File
@@ -1,4 +1,5 @@
from ConfigParser import ConfigParser from ConfigParser import ConfigParser
import os.path
class MilterConfigParser(ConfigParser): class MilterConfigParser(ConfigParser):
@@ -20,7 +21,7 @@ class MilterConfigParser(ConfigParser):
return [q.strip() for q in self.get(sect,opt).split(',')] return [q.strip() for q in self.get(sect,opt).split(',')]
return [] return []
def getaddrset(self,sect,opt): def getaddrset(self,sect,opt,dir=''):
if not self.has_option(sect,opt): if not self.has_option(sect,opt):
return {} return {}
s = self.get(sect,opt) s = self.get(sect,opt)
@@ -29,13 +30,14 @@ class MilterConfigParser(ConfigParser):
q = q.strip() q = q.strip()
if q.startswith('file:'): if q.startswith('file:'):
domain = q[5:].lower() domain = q[5:].lower()
d[domain] = d.setdefault(domain,[]) + open(domain,'r').read().split() fname = os.path.join(dir,domain)
d[domain] = d.setdefault(domain,[]) + open(fname,'r').read().split()
else: else:
user,domain = q.split('@') user,domain = q.split('@')
d.setdefault(domain.lower(),[]).append(user) d.setdefault(domain.lower(),[]).append(user)
return d return d
def getaddrdict(self,sect,opt): def getaddrdict(self,sect,opt,dir=''):
if not self.has_option(sect,opt): if not self.has_option(sect,opt):
return {} return {}
d = {} d = {}
@@ -46,7 +48,7 @@ class MilterConfigParser(ConfigParser):
for addr in l.split(','): for addr in l.split(','):
addr = addr.strip() addr = addr.strip()
if addr.startswith('file:'): if addr.startswith('file:'):
fname = addr[5:] fname = os.path.join(dir,addr[5:])
for a in open(fname,'r').read().split(): for a in open(fname,'r').read().split():
d[a] = q d[a] = q
else: else: