aboutsummaryrefslogtreecommitdiff
path: root/scripts/rpkid.py
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2007-09-15 19:18:58 +0000
committerRob Austein <sra@hactrn.net>2007-09-15 19:18:58 +0000
commit83026a28974cdab8b386b818de99f60eecd707e2 (patch)
tree90ded5529f5f248d3d9d8fe68d6d947b908ec569 /scripts/rpkid.py
parent36bea8f05a830427f277c91568fd1b76b3be083a (diff)
Checkpoint
svn path=/scripts/irbe-cli.py; revision=965
Diffstat (limited to 'scripts/rpkid.py')
-rwxr-xr-xscripts/rpkid.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/scripts/rpkid.py b/scripts/rpkid.py
index 9398575b..be3c8bec 100755
--- a/scripts/rpkid.py
+++ b/scripts/rpkid.py
@@ -18,24 +18,26 @@ def encode(msg, cms_key, cms_certs):
def left_right_handler(query, path):
- def fetch_maybe():
+ def fetch_maybe(q_pdu):
if rpki.left_right.self_elt.sql_cache_find(q_pdu.self_id) is None:
rpki.left_right.self_elt.sql_fetch(db, cur, { "self_id" : q_pdu.self_id })
- def make_reply(r_pdu = q_pdu.__class__()):
+ def make_reply(q_pdu, r_pdu=None):
+ if r_pdu is None:
+ r_pdu = q_pdu.__class__()
r_pdu.action = q_pdu.action
r_pdu.type = "reply"
return r_pdu
def destroy_handler(q_pdu):
- r_pdu = make_reply()
+ r_pdu = make_reply(q_pdu)
r_pdu.self_id = q_pdu.self_id
setattr(r_pdu, q_pdu.sql_id_name, getattr(q_pdu, q_pdu.sql_id_name))
q_pdu.sql_delete()
r_msg.append(r_pdu)
def create_handler(q_pdu):
- r_pdu = make_reply()
+ r_pdu = make_reply(q_pdu)
q_pdu.sql_store(db, cur)
r_pdu.self_id = q_pdu.self_id
setattr(r_pdu, q_pdu.sql_id_name, getattr(q_pdu, q_pdu.sql_id_name))
@@ -71,6 +73,7 @@ def left_right_handler(query, path):
except Exception, data:
if show_traceback:
traceback.print_exc()
+ raise
return 500, "Unhandled exception %s" % data
def up_down_handler(query, path):