Create PID directory if it is missing
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
0.9.4 UNRELEASED
|
||||
- Create PID directory if it is missing
|
||||
|
||||
0.9.3 2018-03-02
|
||||
- Fixup csl dataset processing for single item lists
|
||||
|
||||
@@ -86,6 +86,15 @@ def write_pid(milterconfig):
|
||||
try:
|
||||
f = open(milterconfig.get('PidFile'), 'w')
|
||||
except IOError as e:
|
||||
if str(e)[:35] == '[Errno 2] No such file or directory':
|
||||
piddir = milterconfig.get('PidFile').rsplit('/', 1)[0]
|
||||
os.mkdir(piddir)
|
||||
user, group = user_group(milterconfig.get('UserID'))
|
||||
os.chown(piddir, user, group)
|
||||
f = open(milterconfig.get('PidFile'), 'w')
|
||||
if milterconfig.get('Syslog'):
|
||||
syslog.syslog('Missing pid dir created: {0}'.format(piddir))
|
||||
else:
|
||||
if milterconfig.get('Syslog'):
|
||||
syslog.syslog('Unable to write pidfle {0}. IOError: {1}'.format(milterconfig.get('PidFile'), e))
|
||||
raise
|
||||
|
||||
Reference in New Issue
Block a user