# vi: encoding=utf-8 ts=8 sts=4 sw=4 et
-import ConfigParser
+import sys
+if sys.version_info[0] == 2:
+ import ConfigParser
+else:
+ import configparser as ConfigParser
import string
import fnmatch
import os
self.change_requester = False
if p.has_option(login, "gpg_emails"):
- self.gpg_emails = string.split(p.get(login, "gpg_emails"))
+ self.gpg_emails = p.get(login, "gpg_emails").split()
else:
log.panic("acl: [%s] has no gpg_emails" % login)
self.change_requester = True
if p.has_option(login, "privs"):
- for p in string.split(p.get(login, "privs")):
- l = string.split(p, ":")
+ for p in p.get(login, "privs").split():
+ l = p.split(":")
if len(l) == 2:
p+=":*"
if len(l) not in (2,3) or l[0] == "" or l[1] == "":
p.readfp(open(path.acl_conf))
self.users = {}
for login in p.sections():
- if self.users.has_key(login):
+ if login in self.users:
log.panic("acl: duplicate login: %s" % login)
continue
user = User(p, login)
for e in user.gpg_emails:
- if self.users.has_key(e):
+ if e in self.users:
log.panic("acl: user email colision %s <-> %s" % \
(self.users[e].login, login))
else:
def user_by_email(self, ems):
for e in ems:
- if self.users.has_key(e):
+ if e in self.users:
return self.users[e]
return None
return self.users[l]
def user(self, l):
- if not self.users.has_key(l):
+ if not l in self.users:
log.panic("no such user: %s" % l)
return self.users[l]