aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2010-02-24 01:08:07 +0000
committerRob Austein <sra@hactrn.net>2010-02-24 01:08:07 +0000
commit2ecbf67ba206151a866a23f2861e0da26f393126 (patch)
tree2f158bd3956a21e327d67d2be814205284d9cc24
parenta202256cf2183a35ab649b766965c4c1f65abf8d (diff)
Checkpoint. <list_received_resources/> still not quite working yet, but getting closer.
svn path=/rpkid/irbe_cli.py; revision=3005
-rw-r--r--rpkid/irbe_cli.py2
-rw-r--r--rpkid/rpki/async.py13
-rw-r--r--rpkid/rpki/left_right.py6
-rw-r--r--rpkid/rpki/x509.py2
4 files changed, 16 insertions, 7 deletions
diff --git a/rpkid/irbe_cli.py b/rpkid/irbe_cli.py
index 12b509fd..0c329409 100644
--- a/rpkid/irbe_cli.py
+++ b/rpkid/irbe_cli.py
@@ -226,7 +226,7 @@ class report_error_elt(reply_elt_mixin, rpki.left_right.report_error_elt):
class left_right_msg(cmd_msg_mixin, rpki.left_right.msg):
pdus = dict((x.element_name, x)
for x in (self_elt, bsc_elt, parent_elt, child_elt, repository_elt,
- list_published_objects_elt, report_error_elt))
+ list_published_objects_elt, list_received_resources_elt, report_error_elt))
class left_right_sax_handler(rpki.left_right.sax_handler):
pdu = left_right_msg
diff --git a/rpkid/rpki/async.py b/rpkid/rpki/async.py
index c545a88f..603fa5be 100644
--- a/rpkid/rpki/async.py
+++ b/rpkid/rpki/async.py
@@ -323,8 +323,11 @@ class sync_wrapper(object):
raise ExitNow
def eb(self, err):
- exc_info = sys.exc_info()
- self.err = exc_info if exc_info[1] is err else err
+ if True:
+ exc_info = sys.exc_info()
+ self.err = exc_info if exc_info[1] is err else err
+ else:
+ self.err = err
raise ExitNow
def __call__(self, *args, **kwargs):
@@ -340,7 +343,11 @@ class sync_wrapper(object):
defer(thunk)
event_loop()
if self.err is not None:
- raise self.err
+ #print "Raising self.err: %r" % (self.err,)
+ if isinstance(self.err, tuple):
+ raise self.err[0], self.err[1], self.err[2]
+ else:
+ raise self.err
else:
return self.res
diff --git a/rpkid/rpki/left_right.py b/rpkid/rpki/left_right.py
index 9e3a6fed..d8aca123 100644
--- a/rpkid/rpki/left_right.py
+++ b/rpkid/rpki/left_right.py
@@ -997,7 +997,7 @@ class list_published_objects_elt(rpki.xml_utils.text_elt, left_right_namespace):
r_pdu.obj = obj.get_Base64()
return r_pdu
-class list_received_resources_elt(rpki.xml_utils.text_elt, left_right_namespace):
+class list_received_resources_elt(rpki.xml_utils.base_elt, left_right_namespace):
"""
<list_received_resources/> element.
"""
@@ -1018,6 +1018,7 @@ class list_received_resources_elt(rpki.xml_utils.text_elt, left_right_namespace)
ca_detail = ca.fetch_active()
if ca_detail is not None and ca_detail.latest_ca_cert is not None:
r_msg.append(self.make_reply(ca_detail.ca_cert_uri, ca_detail.latest_ca_cert))
+ #rpki.log.debug("Generated: %r" % r_msg[-1])
cb()
def make_reply(self, uri, cert):
@@ -1073,7 +1074,8 @@ class msg(rpki.xml_utils.msg, left_right_namespace):
# Dispatch table of PDUs for this protocol.
pdus = dict((x.element_name, x)
for x in (self_elt, child_elt, parent_elt, bsc_elt, repository_elt,
- list_resources_elt, list_roa_requests_elt, list_published_objects_elt,
+ list_resources_elt, list_roa_requests_elt,
+ list_published_objects_elt, list_received_resources_elt,
report_error_elt))
def serve_top_level(self, gctx, cb):
diff --git a/rpkid/rpki/x509.py b/rpkid/rpki/x509.py
index 779f370f..85f04c73 100644
--- a/rpkid/rpki/x509.py
+++ b/rpkid/rpki/x509.py
@@ -267,7 +267,7 @@ class DER_object(object):
Get the SIA extension from this object. Only works for subclasses
that support getExtension().
"""
- return (self.get_POWpkix().getExtension(rpki.oids.name2oid["subjectInfoAccess"]) or ((), 0, None))[2]
+ return (self.get_POWpkix().getExtension(rpki.oids.name2oid["authorityInfoAccess"]) or ((), 0, None))[2]
def get_basicConstraints(self):
"""