From 396ee7dfe08194ae47c002806042990e32cf171b Mon Sep 17 00:00:00 2001 From: Scott Kitterman Date: Tue, 13 Feb 2018 03:49:31 -0500 Subject: [PATCH] A round of bugfixing this thing into existence --- dkimpy_milter/__init__.py | 13 ++++++++----- dkimpy_milter/config.py | 10 +++++----- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/dkimpy_milter/__init__.py b/dkimpy_milter/__init__.py index 09eb8c4..32407e0 100644 --- a/dkimpy_milter/__init__.py +++ b/dkimpy_milter/__init__.py @@ -35,8 +35,8 @@ import StringIO import re from Milter.config import MilterConfigParser from Milter.utils import iniplist,parse_addr,parseaddr -import dkim_milter.config as config -from dkim_milter.util import drop_privileges +import dkimpy_milter.config as config +from dkimpy_milter.util import drop_privileges def read_config(list): "Return new config object." @@ -76,7 +76,7 @@ class dkimMilter(Milter.Base): def log(self,*msg): self.conf.log.info('[%d] %s' % (self.id,' '.join([str(m) for m in msg]))) - def __init__(self): + def __init__(self, milterconfig): self.mailfrom = None self.id = Milter.uniqueID() # we don't want config used to change during a connection @@ -265,14 +265,14 @@ class dkimMilter(Milter.Base): self.log('DKIM: Fail (saved as %s)'%fname) return res -if __name__ == "__main__": +def main(): configFile = '/etc/dkimpy-milter.conf' if len(sys.argv) > 1: if sys.argv[1] in ( '-?', '--help', '-h' ): print('usage: dkimpy-milter []') sys.exit(1) configFile = sys.argv[1] - milterconfig = dkimpy-milter.config._processConfigFile(filename = configFile) + milterconfig = config._processConfigFile(filename = configFile) drop_privileges(milterconfig) Milter.factory = dkimMilter(milterconfig) @@ -281,3 +281,6 @@ if __name__ == "__main__": socketname = milterconfig.get('Socket') sys.stdout.flush() Milter.runmilter(miltername,socketname,240) + +if __name__ == "__main__": + main() diff --git a/dkimpy_milter/config.py b/dkimpy_milter/config.py index 97db266..4851e62 100644 --- a/dkimpy_milter/config.py +++ b/dkimpy_milter/config.py @@ -53,23 +53,23 @@ class ConfigException(Exception): #################################################################### -def processConfigFile(filename = None, config = None, useSyslog = 1, +def _processConfigFile(filename = None, configdata = None, useSyslog = 1, useStderr = 0): '''Load the specified config file, exit and log errors if it fails, otherwise return a config dictionary.''' - import policydspfsupp - if config == None: config = policydspfsupp.defaultConfigData + import config + if configdata == None: configdata = config.defaultConfigData if filename != None: try: - readConfigFile(filename, config) + readConfigFile(filename, configdata) except Exception, e: if useSyslog: syslog.syslog(e.args[0]) if useStderr: sys.stderr.write('%s\n' % e.args[0]) sys.exit(1) - return(config) + return(configdata) #################