From f70165ef6229a92bf8cfa6f16eff980a4a7491fe Mon Sep 17 00:00:00 2001 From: Guillaume Horel Date: Wed, 18 Jan 2012 12:27:37 -0500 Subject: Added setup.py and big reorg of the source tree this should fix tickets #10 and #11 --- alias_server/user.py | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 alias_server/user.py (limited to 'alias_server/user.py') diff --git a/alias_server/user.py b/alias_server/user.py new file mode 100644 index 0000000..f6800f9 --- /dev/null +++ b/alias_server/user.py @@ -0,0 +1,45 @@ +import os +import os.path +import shutil +import hashlib +import logging +logger = logging.getLogger(__name__) +from object import * +import base64 + +class User: + + def __init__(self, jid): + self.jid = jid + self.hash = hashlib.sha256(jid).hexdigest() + #self.hash = hashlib.md5(jid).hexdigest() + + def register(self, registration): + ObjectWriter('pubkey', self.jid, split_name = False).write(self.jid, registration['pubkey']) + #everybody can read the pubkey + ObjectWriter('pubkey', self.jid, split_name = False).add_user('*', READ) + ObjectWriter('privkey', self.jid, split_name = False).write(self.jid, registration['privkey']) + ObjectWriter(self.hash, self.jid) + + def get_registration(self): + registration = {} + registration['pubkey'], ignore = ObjectReader('pubkey',self.jid, split_name = False).get_content(self.jid) + registration['privkey'], ignore = ObjectReader('privkey',self.jid, split_name = False).get_content(self.jid) + return registration + + def is_registered(self): + return Object(self.hash, self.jid).exists() + + def unregister(self, jid): + pass + +class UserHandler: + + def __init__(self, root): + self.root = root + + def get_user_list(self): + return os.listdir(self.root) + +if __name__ == '__main__': + print UserHandler('/var/lib/alias').get_user_list() \ No newline at end of file -- cgit v1.2.3-70-g09d2