summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbwarsaw1998-11-03 23:37:30 +0000
committerbwarsaw1998-11-03 23:37:30 +0000
commitaf3e186ebc9e566d6d738b40fb3a50e693ca33c2 (patch)
treefbb31a6b11f2da7e9a506e1c91d8cd417b736ee5
parentdeed68a0a021736f07b127ac277f8c276d6c66ae (diff)
downloadmailman-af3e186ebc9e566d6d738b40fb3a50e693ca33c2.tar.gz
mailman-af3e186ebc9e566d6d738b40fb3a50e693ca33c2.tar.zst
mailman-af3e186ebc9e566d6d738b40fb3a50e693ca33c2.zip
__openIndices(): Wrap the os.mkdir() call in a umask setting of 0 and
don't set the mod of the directory to 700. (permissions on the parent directory are sufficient).
-rw-r--r--Mailman/Archiver/pipermail.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/Mailman/Archiver/pipermail.py b/Mailman/Archiver/pipermail.py
index c4bdec1cb..84de46c18 100644
--- a/Mailman/Archiver/pipermail.py
+++ b/Mailman/Archiver/pipermail.py
@@ -537,8 +537,14 @@ class BSDDBdatabase(Database):
self.__closeIndices()
# print 'opening indices for [%s]' % (repr(archive),)
arcdir=os.path.join(self.basedir, 'database')
- try: os.mkdir(arcdir, 0700)
- except os.error: pass
+## try: os.mkdir(arcdir, 0700)
+## except os.error: pass
+ uo = os.umask(0)
+ try:
+ try: os.mkdir(arcdir)
+ except os.error: pass
+ finally:
+ os.umask(ou)
for i in ['date', 'author', 'subject', 'article', 'thread']:
t=bsddb.btopen(os.path.join(arcdir, archive+'-'+i), 'c')
setattr(self, i+'Index', t)