diff options
author | Rob Austein <sra@hactrn.net> | 2014-08-18 20:59:59 +0000 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2014-08-18 20:59:59 +0000 |
commit | 18a51b25b3e2513106e0cc3be83c5e33fadb2dfb (patch) | |
tree | f5d05ddb21fb9b31d3d36e2ba6bc05ff6e86b7cf /rpki/irdbd.py | |
parent | 951fcfdf0884cc295de42adaf31fced1dbf739f4 (diff) |
Start unwinding unnecessary uses of asynch I/O.
svn path=/branches/tk705/; revision=5920
Diffstat (limited to 'rpki/irdbd.py')
-rw-r--r-- | rpki/irdbd.py | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/rpki/irdbd.py b/rpki/irdbd.py index d53ae67c..bfc48d87 100644 --- a/rpki/irdbd.py +++ b/rpki/irdbd.py @@ -26,7 +26,7 @@ import time import logging import argparse import urlparse -import rpki.http +import rpki.http_simple import rpki.config import rpki.resource_set import rpki.relaxng @@ -104,7 +104,7 @@ class main(object): r_pdu.pkcs10 = ee_req.pkcs10 r_msg.append(r_pdu) - def handler(self, query, path, cb): + def handler(self, request, q_der): try: q_pdu = None r_msg = rpki.left_right.msg.reply() @@ -114,15 +114,13 @@ class main(object): serverCA = rpki.irdb.ServerCA.objects.get() rpkid = serverCA.ee_certificates.get(purpose = "rpkid") try: - q_cms = rpki.left_right.cms_msg(DER = query) + q_cms = rpki.left_right.cms_msg(DER = q_der) q_msg = q_cms.unwrap((serverCA.certificate, rpkid.certificate)) - self.cms_timestamp = q_cms.check_replay(self.cms_timestamp, path) + self.cms_timestamp = q_cms.check_replay(self.cms_timestamp, request.path) if not isinstance(q_msg, rpki.left_right.msg) or not q_msg.is_query(): raise rpki.exceptions.BadQuery("Unexpected %r PDU" % q_msg) for q_pdu in q_msg: self.dispatch(q_pdu, r_msg) - except (rpki.async.ExitNow, SystemExit): - raise except Exception, e: logger.exception("Exception while handling HTTP request") if q_pdu is None: @@ -130,12 +128,10 @@ class main(object): else: r_msg.append(rpki.left_right.report_error_elt.from_exception(e, q_pdu.self_handle, q_pdu.tag)) irdbd = serverCA.ee_certificates.get(purpose = "irdbd") - cb(200, body = rpki.left_right.cms_msg().wrap(r_msg, irdbd.private_key, irdbd.certificate)) - except (rpki.async.ExitNow, SystemExit): - raise + request.send_cms_response(rpki.left_right.cms_msg().wrap(r_msg, irdbd.private_key, irdbd.certificate)) except Exception, e: logger.exception("Unhandled exception while processing HTTP request") - cb(500, reason = "Unhandled exception %s: %s" % (e.__class__.__name__, e)) + request.send_error(500, "Unhandled exception %s: %s" % (e.__class__.__name__, e)) def dispatch(self, q_pdu, r_msg): try: @@ -261,7 +257,7 @@ class main(object): self.cms_timestamp = None - rpki.http.server( + rpki.http_simple.server( host = self.http_server_host, port = self.http_server_port, handlers = self.handler) |