diff options
author | Rob Austein <sra@hactrn.net> | 2009-06-26 19:54:23 +0000 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2009-06-26 19:54:23 +0000 |
commit | 4b9abcb124788f7d864996783371f293787aaf23 (patch) | |
tree | 6ccadd904148f25674eed15010ba971018361aa5 /myrpki/xml-parse-test.py | |
parent | bb95e97e562258bb4f80f23c69d5c57f57d49257 (diff) |
Checkpoint
svn path=/myrpki/myrpki.py; revision=2541
Diffstat (limited to 'myrpki/xml-parse-test.py')
-rwxr-xr-x | myrpki/xml-parse-test.py | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/myrpki/xml-parse-test.py b/myrpki/xml-parse-test.py index 862289ef..27c2c0cf 100755 --- a/myrpki/xml-parse-test.py +++ b/myrpki/xml-parse-test.py @@ -1,6 +1,6 @@ # $Id$ -import lxml.etree, rpki.resource_set +import lxml.etree, rpki.resource_set, base64, subprocess rng = lxml.etree.RelaxNG(lxml.etree.parse("myrpki.rng")) @@ -30,6 +30,7 @@ for x in tree.getiterator(tag("child")): print " IPv4: ", rpki.resource_set.resource_set_ipv4(x.get("v4")) print " Valid: ", x.get("valid_until") showitems(x) +print print "ROA requests:" for x in tree.getiterator(tag("roa_request")): @@ -38,15 +39,24 @@ for x in tree.getiterator(tag("roa_request")): print " IPv4:", rpki.resource_set.roa_prefix_set_ipv4(x.get("v4")) print " IPv6:", rpki.resource_set.roa_prefix_set_ipv6(x.get("v6")) showitems(x) +print + +def showpem(label, b64, kind): + cmd = ("openssl", kind, "-noout", "-text", "-inform", "DER") + p = subprocess.Popen(cmd, stdin = subprocess.PIPE, stdout = subprocess.PIPE) + text = p.communicate(input = base64.b64decode(b64))[0] + if p.returncode != 0: + raise subprocess.CalledProcessError(returncode = p.returncode, cmd = cmd) + print label, text ca = tree.findtext(tag("bpki_ca_certificate")) if ca: - print "CA certificate:", ca + showpem("CA", ca, "x509") ee = tree.findtext(tag("bpki_ee_certificate")) if ee: - print "EE certificate:", ee + showpem("EE", ee, "x509") crl = tree.findtext(tag("bpki_crl")) if crl: - print "CRL:", crl + showpem("CA", crl, "crl") |