aboutsummaryrefslogtreecommitdiff
path: root/scripts/rpki/left_right.py
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/rpki/left_right.py')
-rw-r--r--scripts/rpki/left_right.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/scripts/rpki/left_right.py b/scripts/rpki/left_right.py
index 820f506e..a282a7b8 100644
--- a/scripts/rpki/left_right.py
+++ b/scripts/rpki/left_right.py
@@ -474,7 +474,16 @@ class child_elt(data_elt):
q_msg = rpki.up_down.sax_handler.saxify(q_elt)
if q_msg.sender != str(self.child_id):
raise rpki.exceptions.NotFound, "Unexpected XML sender %s" % q_msg.sender
- r_msg = q_msg.serve_top_level(gctx, self)
+ try:
+ r_msg = q_msg.serve_top_level(gctx, self)
+ except Exception, data:
+ traceback.print_exc()
+ r_msg = q_msg.serve_error(data)
+ #
+ # Exceptions from this point on are problematic, as we have no
+ # sane way of reporting errors in the error reporting mechanism.
+ # May require refactoring, ignore the issue for now.
+ #
r_elt = r_msg.toXML()
rpki.relaxng.up_down.assertValid(r_elt)
return rpki.cms.xml_sign(r_elt, bsc.private_key_id, bsc.signing_cert)