def get_handler(environ): query = ht.parse_get_request(environ) cookies = ht.parse_cookies(environ) user_id = ht.get_required_cookie(cookies, 'user_id') session_id = ht.get_required_cookie(cookies, 'session_id') node_name = ht.get_required(query, 'node_name') group_id = ht.get_required(query, 'group_id') owner_id = ht.get_required(query, 'owner_id') post_id = ht.get_required(query, 'post_id') passphrase = ht.get_optional(query, 'passphrase') decrypt_post = ht.convert_bool(ht.get_optional(query, 'decrypt_post'), 'decrypt_post') conn = db.connect(config.db_path) try: c = db.cursor(conn) resp, validation = db.read_post(c, user_id, session_id, node_name, group_id, owner_id, post_id, passphrase, decrypt_post) raise ht.ok_json({'status' : 'ok', 'resp' : resp, 'validation' : validation}) except ex.SqueakException as e: raise ht.convert_squeak_exception(e) finally: db.close(conn)
def get_handler(environ): query = ht.parse_get_request(environ) cookies = ht.parse_cookies(environ) user_id = ht.get_required_cookie(cookies, 'user_id') session_id = ht.get_required_cookie(cookies, 'session_id') node_name = ht.get_required(query, 'node_name') message_id = ht.get_required(query, 'message_id') public_key_hash = ht.get_required(query, 'public_key_hash') passphrase = ht.get_optional(query, 'passphrase') to_key_passphrase = ht.get_optional(query, 'to_key_passphrase') decrypt_message = ht.convert_bool(ht.get_optional(query, 'decrypt_message'), 'decrypt_message') conn = db.connect(config.db_path) try: c = db.cursor(conn) resp, validation = db.read_message(c, user_id, session_id, node_name, message_id, public_key_hash, passphrase, to_key_passphrase, decrypt_message) raise ht.ok_json({'status' : 'ok', 'resp' : resp, 'validation' : validation}) except ex.SqueakException as e: raise ht.convert_squeak_exception(e) finally: db.close(conn)
def get_handler(environ): query = ht.parse_get_request(environ) action = ht.get_required(query, 'action') conn = db.connect(config.db_path) try: res = None if action == 'database': c = db.cursor(conn) res = db.read_database(c) elif action == 'integrity': all_local = ht.convert_bool(ht.get_required(query, 'all_local'), 'all_local') c1 = db.cursor(conn) c2 = db.cursor(conn) res = db.check_integrity(c1, c2, all_local) else: raise ht.BadFieldResponse('action', action) raise ht.ok_json({'status' : 'ok', 'res' : res}) except ex.SqueakException as e: raise ht.convert_squeak_exception(e) finally: db.close(conn)
def get_handler(environ): query = ht.parse_get_request(environ) cookies = ht.parse_cookies(environ) user_id = ht.get_required_cookie(cookies, 'user_id') session_id = ht.get_required_cookie(cookies, 'session_id') public_key_hash = ht.get_required(query, 'public_key_hash') only_public_part = ht.convert_bool(ht.get_optional(query, 'only_public_part'), 'only_public_part') allow_private_user_key = ht.convert_bool(ht.get_optional(query, 'allow_private_user_key'), 'allow_private_user_key') conn = db.connect(config.db_path) try: c = db.cursor(conn) key = db.read_private_key(c, user_id, session_id, public_key_hash, only_public_part, allow_private_user_key) raise ht.ok_json({'status' : 'ok', 'key' : key}) except ex.SqueakException as e: raise ht.convert_squeak_exception(e) finally: db.close(conn)
def post_handler(environ): query = ht.parse_post_request(environ) cookies = ht.parse_cookies(environ) user_id = ht.get_required_cookie(cookies, 'user_id') session_id = ht.get_required_cookie(cookies, 'session_id') node_name = ht.get_required(query, 'node_name') to_user = ht.get_required(query, 'to_user') to_user_key_hash = ht.get_optional(query, 'to_user_key_hash') from_user_key_hash = ht.get_optional(query, 'from_user_key_hash') message = ht.get_required(query, 'message') passphrase = ht.get_optional(query, 'passphrase') force_encryption = ht.convert_bool(ht.get_optional(query, 'force_encryption'), 'force_encryption') conn = db.connect(config.db_path) try: c = db.cursor(conn) resp, local_gen = db.send_message(c, user_id, session_id, node_name, to_user, to_user_key_hash, from_user_key_hash, message, passphrase, force_encryption) (message_id, timestamp, message_hash, from_signature, proof_of_work) = local_gen db.commit(conn) raise ht.ok_json({'status' : 'ok', 'resp' : resp, 'message_id' : message_id, 'timestamp' : timestamp, 'message_hash' : message_hash, 'from_signature' : from_signature, 'proof_of_work' : proof_of_work}) except ex.SqueakException as e: raise ht.convert_squeak_exception(e) finally: db.close(conn)
def post_handler(environ): query = ht.parse_post_request(environ) cookies = ht.parse_cookies(environ) user_id = ht.get_required_cookie(cookies, 'user_id') session_id = ht.get_required_cookie(cookies, 'session_id') node_name = ht.get_required(query, 'node_name') group_id = ht.get_required(query, 'group_id') owner_id = ht.get_required(query, 'owner_id') data = ht.get_required(query, 'data') passphrase = ht.get_optional(query, 'passphrase') force_encryption = ht.convert_bool(ht.get_optional(query, 'force_encryption'), 'force_encryption') conn = db.connect(config.db_path) try: c = db.cursor(conn) resp, local_gen = db.make_post(c, user_id, session_id, node_name, group_id, owner_id, data, passphrase, force_encryption) (post_id, timestamp, data_hash, post_signature, proof_of_work) = local_gen db.commit(conn) raise ht.ok_json({'status' : 'ok', 'resp' : resp, 'post_id' : post_id, 'timestamp' : timestamp, 'data_hash' : data_hash, 'post_signature' : post_signature, 'proof_of_work' : proof_of_work}) except ex.SqueakException as e: raise ht.convert_squeak_exception(e) finally: db.close(conn)