aboutsummaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2007-12-04 18:10:24 +0000
committerRob Austein <sra@hactrn.net>2007-12-04 18:10:24 +0000
commite970e3b6125319b2fe102c4e7a4430c199a27a5f (patch)
treebb657be221ac142406fe3adde42826080cfe84be /scripts
parent744c8b46a87569229e4afc33a4adb63f64d894cf (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/Makefile4
-rw-r--r--scripts/apnic-poke-2.sh4
-rw-r--r--scripts/biz-certs/Bob-CA.srl2
-rw-r--r--scripts/left-right-protocol-samples/pdu.021.xml2
-rw-r--r--scripts/left-right-schema.rnc2
-rw-r--r--scripts/left-right-schema.rng14
-rw-r--r--scripts/rpki/left_right.py9
-rw-r--r--scripts/rpki/relaxng.py18
-rw-r--r--scripts/rpki/up_down.py2
-rw-r--r--scripts/testpoke.py12
-rw-r--r--scripts/testroot.sh4
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