aboutsummaryrefslogtreecommitdiff
path: root/rpkid
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2009-05-06 19:19:12 +0000
committerRob Austein <sra@hactrn.net>2009-05-06 19:19:12 +0000
commit96559dfbdc2070b8ef4e582801c3bafb8f14208f (patch)
treee9388ef54cc02f1e556fd6f5349e1e8336a409af /rpkid
parentee2d119f8a9fe5f0511f007f6642e71f4d5db450 (diff)
Wasn't handling ExitNow correctly
svn path=/rpkid/rpki/https.py; revision=2406
Diffstat (limited to 'rpkid')
-rw-r--r--rpkid/rpki/https.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/rpkid/rpki/https.py b/rpkid/rpki/https.py
index cdaa4c64..9858b81f 100644
--- a/rpkid/rpki/https.py
+++ b/rpkid/rpki/https.py
@@ -313,6 +313,8 @@ class http_server(http_stream):
if error is None:
try:
handler(self.msg.body, self.msg.path, self.send_reply)
+ except asyncore.ExitNow:
+ raise
except Exception, edata:
self.send_error(500, "Unhandled exception %s" % edata)
else:
@@ -409,6 +411,8 @@ class http_client(http_stream):
else:
self.log("Delivering HTTPS client result")
msg.callback(self.msg.body)
+ except asyncore.ExitNow:
+ raise
except Exception, data:
self.log("Unhandled exception from callback")
rpki.log.error(traceback.format_exc())
@@ -495,6 +499,8 @@ class http_queue(object):
else:
try:
self.queue[0].retry()
+ except asyncore.ExitNow:
+ raise
except:
self.log("Queue is not empty, but request has already been transmitted, giving up")
self.client = None