mirror of
https://github.com/Mikaela/Limnoria.git
synced 2024-11-23 11:09:23 +01:00
Updated again.
This commit is contained in:
parent
92a7ae1028
commit
dce0378a8c
@ -18,6 +18,7 @@ class IrcUser:
|
||||
def __init__(self, **kwargs):
|
||||
self.__dict__.update(kwargs)
|
||||
|
||||
IrcChannel = IrcUser
|
||||
UserCapabilitySet = list
|
||||
CapabilitySet = list
|
||||
|
||||
@ -28,46 +29,51 @@ def write(fd, s):
|
||||
if __name__ == '__main__':
|
||||
shutil.copy(userFile, userFile + '.bak')
|
||||
shutil.copy(channelFile, channelFile + '.bak')
|
||||
# Users.conf.
|
||||
fd = file(userFile)
|
||||
s = fd.read().strip()
|
||||
(_, L) = eval(s, locals(), globals())
|
||||
fd = file(userFile, 'w')
|
||||
for (i, u) in enumerate(L):
|
||||
if i == 0 or u is None:
|
||||
continue
|
||||
write(fd, 'user %s' % i)
|
||||
write(fd, ' name %s' % u.name)
|
||||
write(fd, ' ignore %s' % u.ignore)
|
||||
write(fd, ' secure %s' % u.secure)
|
||||
write(fd, ' hashed %s' % u.hashed)
|
||||
write(fd, ' password %s' % u.password)
|
||||
for capability in u.capabilities:
|
||||
try:
|
||||
(channel, capability) = rsplit(capability, '.', 1)
|
||||
capability = ','.join(channel, capability)
|
||||
except ValueError:
|
||||
pass
|
||||
write(fd, ' capability %s' % capability)
|
||||
for hostmask in u.hostmasks:
|
||||
write(fd, ' hostmask %s' % hostmask)
|
||||
write(fd, '')
|
||||
fd.close()
|
||||
try:
|
||||
# Users.conf.
|
||||
fd = file(userFile)
|
||||
s = fd.read().strip()
|
||||
(_, L) = eval(s, locals(), globals())
|
||||
fd = file(userFile, 'w')
|
||||
for (i, u) in enumerate(L):
|
||||
if i == 0 or u is None:
|
||||
continue
|
||||
write(fd, 'user %s' % i)
|
||||
write(fd, ' name %s' % u.name)
|
||||
write(fd, ' ignore %s' % u.ignore)
|
||||
write(fd, ' secure %s' % u.secure)
|
||||
write(fd, ' hashed %s' % u.hashed)
|
||||
write(fd, ' password %s' % u.password)
|
||||
for capability in u.capabilities:
|
||||
try:
|
||||
(channel, capability) = rsplit(capability, '.', 1)
|
||||
capability = ','.join([channel, capability])
|
||||
except ValueError:
|
||||
pass
|
||||
write(fd, ' capability %s' % capability)
|
||||
for hostmask in u.hostmasks:
|
||||
write(fd, ' hostmask %s' % hostmask)
|
||||
write(fd, '')
|
||||
fd.close()
|
||||
|
||||
# Channels.conf.
|
||||
fd = file(channelFile)
|
||||
s = fd.read().strip()
|
||||
d = eval(s, locals(), globals())
|
||||
fd = file(channelFile, 'w')
|
||||
for (name, c) in d.iteritems():
|
||||
write(fd, 'channel %s' % name)
|
||||
write(fd, ' defaultAllow %s' % c.defaultAllow)
|
||||
write(fd, ' lobotomized %s' % c.lobotomized)
|
||||
for capability in c.capabilities:
|
||||
write(fd, ' capability %s' % capability)
|
||||
for ban in c.bans:
|
||||
write(fd, ' ban %s' % ban)
|
||||
for ignore in c.ignores:
|
||||
write(fd, ' ignore %s' % ignore)
|
||||
write(fd, '')
|
||||
|
||||
# Channels.conf.
|
||||
fd = file(channelFile)
|
||||
s = fd.read().strip()
|
||||
d = eval(s, locals(), globals())
|
||||
fd = file(channelFile, 'w')
|
||||
for (name, c) in d.iteritems():
|
||||
write(fd, 'channel %s' % name)
|
||||
write(fd, ' defaultAllow %s' % c.defaultAllow)
|
||||
write(fd, ' lobotomized %s' % c.lobotomized)
|
||||
for capability in c.capabilities:
|
||||
write(fd, ' capability %s' % capability)
|
||||
for ban in c.bans:
|
||||
write(fd, ' ban %s' % ban)
|
||||
for ignore in c.ignores:
|
||||
write(fd, ' ignore %s' % ignore)
|
||||
write(fd, '')
|
||||
except Exception, e:
|
||||
print 'Exception raised, restoring backups.'
|
||||
shutil.copy(userFile + '.bak', userFile)
|
||||
shutil.copy(channelFile + '.bak', channelFile)
|
||||
raise
|
||||
|
Loading…
Reference in New Issue
Block a user