diff options
author | Rob Austein <sra@hactrn.net> | 2009-06-28 22:25:11 +0000 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2009-06-28 22:25:11 +0000 |
commit | 9eb1fa68077e1c572ee88cb260e61f2cb01f8d29 (patch) | |
tree | 6f885b60a63c13d18b840bbba3819f8032427980 | |
parent | 603dc8f93d32378242bcb43670656bef61b2754e (diff) |
Checkpoint
svn path=/myrpki/Makefile; revision=2550
-rw-r--r-- | myrpki/Makefile | 17 | ||||
-rw-r--r-- | myrpki/myirbe.py | 2 | ||||
-rw-r--r-- | myrpki/myrpki.py | 35 | ||||
-rwxr-xr-x | myrpki/xml-parse-test.py | 11 |
4 files changed, 49 insertions, 16 deletions
diff --git a/myrpki/Makefile b/myrpki/Makefile index b0cdc6b1..f86c00c3 100644 --- a/myrpki/Makefile +++ b/myrpki/Makefile @@ -1,7 +1,9 @@ # $Id$ -all: myrpki.xml lint parse - +all:: myrpki.xml +all:: lint +#all:: parse +all:: load myrpki.xml: myrpki.py asns.csv prefixes.csv roas.csv validity.csv python myrpki.py @@ -15,5 +17,16 @@ myrpki.rng: myrpki.rnc parse: myrpki.xml myrpki.rng python xml-parse-test.py +load: myrpki.xml myrpki.rng + python myirbe.py + clean: rm -f *.xml *.pem + +relatives: mom.pem dad.pem bro.pem sis.pem + +mom.pem dad.pem bro.pem sis.pem: + openssl req -new -sha256 -x509 -verbose -config myrpki.conf -extensions req_x509_ext -newkey rsa:2048 -nodes -keyout /dev/null -subj CN=$@ -out $@ + +format: myrpki.xml + xmllint --format myrpki.xml diff --git a/myrpki/myirbe.py b/myrpki/myirbe.py index e37c984f..f055e457 100644 --- a/myrpki/myirbe.py +++ b/myrpki/myirbe.py @@ -160,4 +160,4 @@ def showcerts(): if crl: showpem("CA", crl, "crl") -showcerts() +#showcerts() diff --git a/myrpki/myrpki.py b/myrpki/myrpki.py index 8bdcef4b..afded205 100644 --- a/myrpki/myrpki.py +++ b/myrpki/myrpki.py @@ -44,6 +44,9 @@ class roa_request(object): self.v4 = comma_set() self.v6 = comma_set() + def __repr__(self): + return "<%s asn %s v4 %s v6 %s>" % (self.__class__.__name__, self.asn, self.v4, self.v6) + def add(self, prefix): if self.v4re.match(prefix): self.v4.add(prefix) @@ -90,6 +93,9 @@ class child(object): self.validity = None self.ta = None + def __repr__(self): + return "<%s v4 %s v6 %s asns %s validity %s ta %s>" % (self.__class__.__name__, self.v4, self.v6, self.asns, self.validity, self.ta) + def add(self, prefix = None, asn = None, validity = None, ta = None): if prefix is not None: if self.v4re.match(prefix): @@ -106,15 +112,15 @@ class child(object): self.ta = ta def xml(self, e): - e = SubElement(e, "child", - handle = self.handle, - valid_until = self.validity, - asns = str(self.asns), - v4 = str(self.v4), - v6 = str(self.v6)) + e2 = SubElement(e, "child", + handle = self.handle, + valid_until = self.validity, + asns = str(self.asns), + v4 = str(self.v4), + v6 = str(self.v6)) if self.ta: - PEMElement(e, "bpki_ta", self.ta) - return e + PEMElement(e2, "bpki_ta", self.ta) + return e2 class children(dict): @@ -148,6 +154,9 @@ class parent(object): self.uri = None self.ta = None + def __repr__(self): + return "<%s uri %s ta %s>" % (self.__class__.__name__, self.uri, self.ta) + def add(self, uri = None, ta = None): if uri is not None: self.uri = uri @@ -155,12 +164,12 @@ class parent(object): self.ta = ta def xml(self, e): - e = SubElement(e, "parent", - handle = self.handle, - uri = self.uri) + e2 = SubElement(e, "parent", + handle = self.handle, + uri = self.uri) if self.ta: - PEMElement(e, "bpki_ta", self.ta) - return e + PEMElement(e2, "bpki_ta", self.ta) + return e2 class parents(dict): diff --git a/myrpki/xml-parse-test.py b/myrpki/xml-parse-test.py index a4608059..81ae5ea8 100755 --- a/myrpki/xml-parse-test.py +++ b/myrpki/xml-parse-test.py @@ -67,6 +67,17 @@ def showpem(label, b64, kind): raise subprocess.CalledProcessError(returncode = p.returncode, cmd = cmd) print label, text +for x in tree.getiterator(tag("child")): + ta = x.findtext(tag("bpki_ta")) + if ta: + showpem("Child", ta, "x509") + +for x in tree.getiterator(tag("parent")): + print "Parent URI:", x.get("uri") + ta = x.findtext(tag("bpki_ta")) + if ta: + showpem("Parent", ta, "x509") + ca = tree.findtext(tag("bpki_ca_certificate")) if ca: showpem("CA", ca, "x509") |