diff options
| author | Guillaume Horel <guillaume.horel@gmail.com> | 2012-01-18 12:27:37 -0500 |
|---|---|---|
| committer | Guillaume Horel <guillaume.horel@gmail.com> | 2012-01-18 12:27:37 -0500 |
| commit | f70165ef6229a92bf8cfa6f16eff980a4a7491fe (patch) | |
| tree | e2954759f71c0b4c482334ba9b278a4224e97197 /alias_server/user.py | |
| parent | 0ce9f4fb84693f34113630c59610b47a082ae71a (diff) | |
| download | alias-f70165ef6229a92bf8cfa6f16eff980a4a7491fe.tar.gz | |
Added setup.py and big reorg of the source tree
this should fix tickets #10 and #11
Diffstat (limited to 'alias_server/user.py')
| -rw-r--r-- | alias_server/user.py | 45 |
1 files changed, 45 insertions, 0 deletions
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 |
