aboutsummaryrefslogtreecommitdiff
path: root/rpkid/rpki/up_down.py
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2010-08-29 03:39:59 +0000
committerRob Austein <sra@hactrn.net>2010-08-29 03:39:59 +0000
commit376316916567bf253a57a909d0cd53d2bd53583d (patch)
treeb76113eb3c4d5dc6dfd13ae401c9e0f1cc4a076e /rpkid/rpki/up_down.py
parent64de2f733ac0c0d1ceffe52209ebde2f60cb6f5f (diff)
Break XML packet dumps into multiple lines when logging schema
validation errors. svn path=/rpkid/rpki/publication.py; revision=3431
Diffstat (limited to 'rpkid/rpki/up_down.py')
-rw-r--r--rpkid/rpki/up_down.py17
1 files changed, 7 insertions, 10 deletions
diff --git a/rpkid/rpki/up_down.py b/rpkid/rpki/up_down.py
index 42dc4acb..225c0bd4 100644
--- a/rpkid/rpki/up_down.py
+++ b/rpkid/rpki/up_down.py
@@ -75,14 +75,12 @@ class base_elt(object):
elt.set(key, str(val))
return elt
- def make_b64elt(self, elt, name, value=None):
+ def make_b64elt(self, elt, name, value):
"""
Construct a sub-element with Base64 text content.
"""
- if value is None:
- value = getattr(self, name, None)
- if value is not None:
- lxml.etree.SubElement(elt, "{%s}%s" % (xmlns, name), nsmap=nsmap).text = base64.b64encode(value)
+ if value is not None and not value.empty():
+ lxml.etree.SubElement(elt, "{%s}%s" % (xmlns, name), nsmap=nsmap).text = value.get_Base64()
def serve_pdu(self, q_msg, r_msg, child, callback, errback):
"""Default PDU handler to catch unexpected types."""
@@ -145,7 +143,7 @@ class certificate_elt(base_elt):
Handle text content of a <certificate/> element.
"""
assert name == "certificate", "Unexpected name %s, stack %s" % (name, stack)
- self.cert = rpki.x509.X509(Base64=text)
+ self.cert = rpki.x509.X509(Base64 = text)
stack.pop()
def toXML(self):
@@ -193,7 +191,7 @@ class class_elt(base_elt):
Handle <class/> elements and their children.
"""
if name == "issuer":
- self.issuer = rpki.x509.X509(Base64=text)
+ self.issuer = rpki.x509.X509(Base64 = text)
else:
assert name == "class", "Unexpected name %s, stack %s" % (name, stack)
stack.pop()
@@ -206,8 +204,7 @@ class class_elt(base_elt):
"resource_set_ipv4", "resource_set_ipv6",
"resource_set_notafter", "suggested_sia_head")
elt.extend([i.toXML() for i in self.certs])
- if self.issuer is not None:
- self.make_b64elt(elt, "issuer", self.issuer.get_DER())
+ self.make_b64elt(elt, "issuer", self.issuer)
return elt
def to_resource_bag(self):
@@ -334,7 +331,7 @@ class issue_pdu(base_elt):
Handle "issue" PDU.
"""
assert name == "request", "Unexpected name %s, stack %s" % (name, stack)
- self.pkcs10 = rpki.x509.PKCS10(Base64=text)
+ self.pkcs10 = rpki.x509.PKCS10(Base64 = text)
stack.pop()
def toXML(self):