diff options
author | Rob Austein <sra@hactrn.net> | 2007-12-04 18:10:24 +0000 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2007-12-04 18:10:24 +0000 |
commit | e970e3b6125319b2fe102c4e7a4430c199a27a5f (patch) | |
tree | bb657be221ac142406fe3adde42826080cfe84be /scripts | |
parent | 744c8b46a87569229e4afc33a4adb63f64d894cf (diff) |
Add sender_name and recipient_name to parent object
svn path=/docs/left-right-xml; revision=1358
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/Makefile | 4 | ||||
-rw-r--r-- | scripts/apnic-poke-2.sh | 4 | ||||
-rw-r--r-- | scripts/biz-certs/Bob-CA.srl | 2 | ||||
-rw-r--r-- | scripts/left-right-protocol-samples/pdu.021.xml | 2 | ||||
-rw-r--r-- | scripts/left-right-schema.rnc | 2 | ||||
-rw-r--r-- | scripts/left-right-schema.rng | 14 | ||||
-rw-r--r-- | scripts/rpki/left_right.py | 9 | ||||
-rw-r--r-- | scripts/rpki/relaxng.py | 18 | ||||
-rw-r--r-- | scripts/rpki/up_down.py | 2 | ||||
-rw-r--r-- | scripts/testpoke.py | 12 | ||||
-rw-r--r-- | scripts/testroot.sh | 4 |
11 files changed, 60 insertions, 13 deletions
diff --git a/scripts/Makefile b/scripts/Makefile index 60deeb3c..0de12c78 100644 --- a/scripts/Makefile +++ b/scripts/Makefile @@ -16,7 +16,9 @@ all:: up-down-schema.rng up-down-schema.rng: up-down-schema.rnc trang up-down-schema.rnc up-down-schema.rng -#test:: all ; python xml-parse-test.py +test:: relaxng + +test:: all ; python xml-parse-test.py dont-run-trang: touch *.rng diff --git a/scripts/apnic-poke-2.sh b/scripts/apnic-poke-2.sh index cb2764ca..f6d3fd47 100644 --- a/scripts/apnic-poke-2.sh +++ b/scripts/apnic-poke-2.sh @@ -76,7 +76,9 @@ python irbe-cli.py parent --self_id 1 --action create --bsc_id 1 --repository_id --peer_contact_uri https://mirin.apnic.net/cgi-bin/up-down-parent.cgi \ --cms_ta apnic.pem \ --https_ta apnic.pem \ - --sia_base rsync://wombat.invalid/ + --sia_base rsync://wombat.invalid/ \ + --recipient_name PARENT \ + --sender_name CHILD rm -f apnic.pem diff --git a/scripts/biz-certs/Bob-CA.srl b/scripts/biz-certs/Bob-CA.srl index f8fc30ce..c1da31de 100644 --- a/scripts/biz-certs/Bob-CA.srl +++ b/scripts/biz-certs/Bob-CA.srl @@ -1 +1 @@ -90801F1ED19454FE +90801F1ED1945503 diff --git a/scripts/left-right-protocol-samples/pdu.021.xml b/scripts/left-right-protocol-samples/pdu.021.xml index 8388956e..41bc67af 100644 --- a/scripts/left-right-protocol-samples/pdu.021.xml +++ b/scripts/left-right-protocol-samples/pdu.021.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="US-ASCII"?> <!--Automatically generated, do not edit.--> <msg xmlns="http://www.hactrn.net/uris/rpki/left-right-spec/" version="1"> - <parent action="create" type="query" self_id="42" peer_contact_uri="https://re.bar.example/bandicoot/" sia_base="rsync://repo.foo.example/wombat/" bsc_id="17" repository_id="120"> + <parent action="create" type="query" self_id="42" peer_contact_uri="https://re.bar.example/bandicoot/" sia_base="rsync://repo.foo.example/wombat/" bsc_id="17" repository_id="120" sender_name="tweedledee" recipient_name="tweedledum"> <cms_ta> MIIDGzCCAgOgAwIBAgIJAKi+/+wUhQlxMA0GCSqGSIb3DQEBBQUAMCQxIjAgBgNV BAMTGVRlc3QgQ2VydGlmaWNhdGUgQm9iIFJvb3QwHhcNMDcwODAxMTk1MzEwWhcN diff --git a/scripts/left-right-schema.rnc b/scripts/left-right-schema.rnc index 813c1710..903c2995 100644 --- a/scripts/left-right-schema.rnc +++ b/scripts/left-right-schema.rnc @@ -106,6 +106,8 @@ parent_payload = (attribute peer_contact_uri { xsd:anyURI { maxLength="1024" } } attribute sia_base { xsd:anyURI { maxLength="1024" } }?, attribute bsc_id { xsd:token { maxLength="1024" } }?, attribute repository_id { xsd:token { maxLength="1024" } }?, + attribute sender_name { xsd:token { maxLength="1024" } }?, + attribute recipient_name { xsd:token { maxLength="1024" } }?, cms_ta?, https_ta?) diff --git a/scripts/left-right-schema.rng b/scripts/left-right-schema.rng index e431da7d..f3638762 100644 --- a/scripts/left-right-schema.rng +++ b/scripts/left-right-schema.rng @@ -449,6 +449,20 @@ </attribute> </optional> <optional> + <attribute name="sender_name"> + <data type="token"> + <param name="maxLength">1024</param> + </data> + </attribute> + </optional> + <optional> + <attribute name="recipient_name"> + <data type="token"> + <param name="maxLength">1024</param> + </data> + </attribute> + </optional> + <optional> <ref name="cms_ta"/> </optional> <optional> diff --git a/scripts/rpki/left_right.py b/scripts/rpki/left_right.py index 73e4222a..94022985 100644 --- a/scripts/rpki/left_right.py +++ b/scripts/rpki/left_right.py @@ -485,13 +485,13 @@ class parent_elt(data_elt): element_name = "parent" attributes = ("action", "type", "self_id", "parent_id", "bsc_id", "repository_id", - "peer_contact_uri", "sia_base") + "peer_contact_uri", "sia_base", "sender_name", "recipient_name") elements = ("cms_ta", "https_ta") booleans = ("rekey", "reissue", "revoke") sql_template = rpki.sql.template("parent", "parent_id", "self_id", "bsc_id", "repository_id", ("cms_ta", rpki.x509.X509), ("https_ta", rpki.x509.X509), - "peer_contact_uri", "sia_base") + "peer_contact_uri", "sia_base", "sender_name", "recipient_name") cms_ta = None https_ta = None @@ -577,7 +577,10 @@ class parent_elt(data_elt): bsc = self.bsc(gctx) if bsc is None: raise rpki.exceptions.BSCNotFound, "Could not find BSC %s" % self.bsc_id - q_msg = rpki.up_down.message_pdu.make_query(q_pdu) + q_msg = rpki.up_down.message_pdu.make_query( + payload = q_pdu, + sender = self.sender_name, + recipient = self.recipient_name) q_elt = q_msg.toXML() rpki.relaxng.up_down.assertValid(q_elt) q_cms = rpki.cms.xml_sign(q_elt, bsc.private_key_id, bsc.signing_cert, encoding = "UTF-8") diff --git a/scripts/rpki/relaxng.py b/scripts/rpki/relaxng.py index 31874eb8..290b1da3 100644 --- a/scripts/rpki/relaxng.py +++ b/scripts/rpki/relaxng.py @@ -6,7 +6,7 @@ import lxml.etree ## Parsed RelaxNG left_right schema left_right = lxml.etree.RelaxNG(lxml.etree.fromstring('''<?xml version="1.0" encoding="UTF-8"?> <!-- - $Id: left-right-schema.rng 1287 2007-11-14 04:17:16Z sra $ + $Id: left-right-schema.rnc 1287 2007-11-14 04:17:16Z sra $ RelaxNG (Compact Syntax) Schema for RPKI left-right protocol. @@ -455,6 +455,20 @@ left_right = lxml.etree.RelaxNG(lxml.etree.fromstring('''<?xml version="1.0" enc </attribute> </optional> <optional> + <attribute name="sender_name"> + <data type="token"> + <param name="maxLength">1024</param> + </data> + </attribute> + </optional> + <optional> + <attribute name="recipient_name"> + <data type="token"> + <param name="maxLength">1024</param> + </data> + </attribute> + </optional> + <optional> <ref name="cms_ta"/> </optional> <optional> @@ -921,7 +935,7 @@ left_right = lxml.etree.RelaxNG(lxml.etree.fromstring('''<?xml version="1.0" enc ## Parsed RelaxNG up_down schema up_down = lxml.etree.RelaxNG(lxml.etree.fromstring('''<?xml version="1.0" encoding="UTF-8"?> <!-- - $Id: up-down-schema.rnc 1353 2007-12-04 06:19:01Z sra $ + $Id: up-down-schema.rng 1354 2007-12-04 06:20:10Z sra $ RelaxNG (Compact Syntax) Scheme for up-down protocol, extracted from APNIC Wiki. diff --git a/scripts/rpki/up_down.py b/scripts/rpki/up_down.py index b241a30f..1e14a422 100644 --- a/scripts/rpki/up_down.py +++ b/scripts/rpki/up_down.py @@ -478,7 +478,7 @@ class message_pdu(base_elt): return r_msg @classmethod - def make_query(cls, payload, sender = "CHILD", recipient = "PARENT"): + def make_query(cls, payload, sender, recipient): """Construct one message PDU.""" assert not cls.type2name[type(payload)].endswith("_response") self = cls() diff --git a/scripts/testpoke.py b/scripts/testpoke.py index f6fc531d..ca476ef8 100644 --- a/scripts/testpoke.py +++ b/scripts/testpoke.py @@ -66,11 +66,19 @@ def get_PEM_chain(name, cert = None): return chain def query_up_down(q_pdu): - q_msg = rpki.up_down.message_pdu.make_query(q_pdu, sender = yaml_data["sender-id"], recipient = yaml_data["recipient-id"]) + q_msg = rpki.up_down.message_pdu.make_query( + payload = q_pdu, + sender = yaml_data["sender-id"], + recipient = yaml_data["recipient-id"]) q_elt = q_msg.toXML() rpki.relaxng.up_down.assertValid(q_elt) q_cms = rpki.cms.xml_sign(q_elt, cms_key, cms_certs, encoding = "UTF-8") - r_cms = rpki.https.client(x509TrustList = https_tas, privateKey = https_key, certChain = https_certs, msg = q_cms, url = yaml_data["posturl"]) + r_cms = rpki.https.client( + x509TrustList = https_tas, + privateKey = https_key, + certChain = https_certs, + msg = q_cms, + url = yaml_data["posturl"]) r_xml = rpki.cms.verify(r_cms, cms_ta) r_elt = lxml.etree.fromstring(r_xml) rpki.relaxng.up_down.assertValid(r_elt) diff --git a/scripts/testroot.sh b/scripts/testroot.sh index bdd19386..d8b9b1d3 100644 --- a/scripts/testroot.sh +++ b/scripts/testroot.sh @@ -53,7 +53,9 @@ time python irbe-cli.py parent --self_id 1 --action create --bsc_id 1 --reposito --peer_contact_uri https://localhost:44333/ \ --cms_ta biz-certs/Elena-Root.cer \ --https_ta biz-certs/Elena-Root.cer \ - --sia_base rsync://wombat.invalid/ + --sia_base rsync://wombat.invalid/ \ + --sender_name tweedledee \ + --recipient_name tweedledum # Create a child context |