aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2008-05-21 03:28:07 +0000
committerRob Austein <sra@hactrn.net>2008-05-21 03:28:07 +0000
commitcddca1f14aa982feae41e7a4492a5ca522158086 (patch)
treebcf821d24ec524b97c022ea4d2006fe65df0fc32
parentbd95eac333bb14c3718a9779db627d8d00b06f30 (diff)
Get rid of extension_preferences (YAGNI!).
svn path=/rpkid/irbe-cli.py; revision=1806
-rwxr-xr-xrpkid/irbe-cli.py9
-rw-r--r--rpkid/left-right-protocol-samples.xml19
-rw-r--r--rpkid/left-right-protocol-samples/pdu.001.xml5
-rw-r--r--rpkid/left-right-protocol-samples/pdu.003.xml3
-rw-r--r--rpkid/left-right-protocol-samples/pdu.006.xml3
-rw-r--r--rpkid/left-right-protocol-samples/pdu.008.xml9
-rw-r--r--rpkid/left-right-schema.rnc9
-rw-r--r--rpkid/left-right-schema.rng17
-rw-r--r--rpkid/rpki/__init__.py15
-rw-r--r--rpkid/rpki/left_right.py65
-rw-r--r--rpkid/rpki/relaxng.py17
-rw-r--r--rpkid/rpkid.sql8
12 files changed, 18 insertions, 161 deletions
diff --git a/rpkid/irbe-cli.py b/rpkid/irbe-cli.py
index 76e246e2..e50bdec6 100755
--- a/rpkid/irbe-cli.py
+++ b/rpkid/irbe-cli.py
@@ -77,14 +77,7 @@ class cmd_mixin(object):
print " %s: %s" % (i, getattr(self, i))
class self_elt(cmd_mixin, rpki.left_right.self_elt):
-
- def client_query_extension_preference(self, arg):
- """--extension_preferences option."""
- k,v = arg.split("=", 1)
- pref = rpki.left_right.extension_preference_elt()
- pref.name = k
- pref.value = v
- self.prefs.append(pref)
+ pass
class bsc_elt(cmd_mixin, rpki.left_right.bsc_elt):
diff --git a/rpkid/left-right-protocol-samples.xml b/rpkid/left-right-protocol-samples.xml
index 4f3d1b59..4fc8e798 100644
--- a/rpkid/left-right-protocol-samples.xml
+++ b/rpkid/left-right-protocol-samples.xml
@@ -23,10 +23,7 @@
<completely_gratuitous_wrapper_element_to_let_me_run_this_through_xmllint>
<msg version="1" type="query" xmlns="http://www.hactrn.net/uris/rpki/left-right-spec/">
- <self action="create" tag="a000">
- <extension_preference name="name">Launcelot</extension_preference>
- <extension_preference name="quest">Holy Grail</extension_preference>
- </self>
+ <self action="create" tag="a000"/>
</msg>
<msg version="1" type="reply" xmlns="http://www.hactrn.net/uris/rpki/left-right-spec/">
@@ -40,7 +37,6 @@
revoke="yes"
run_now="yes"
publish_world_now="yes"
- clear_extension_preferences="yes"
crl_interval="3600"
regen_margin="86400"
use_hsm="no">
@@ -82,7 +78,6 @@
YyMNrG2xMOtIC7T4+IOHgT8PgrNhaeDg9ctewj0X8Qi9nI9nXeinicLX8vj6hdEq
3ORv7RZMJNYqv1HQ3wUE2B7fCPFv7EUwzaCds1kgRQ==
</bpki_glue>
- <extension_preference name="color">Blue</extension_preference>
</self>
</msg>
@@ -134,9 +129,6 @@
YyMNrG2xMOtIC7T4+IOHgT8PgrNhaeDg9ctewj0X8Qi9nI9nXeinicLX8vj6hdEq
3ORv7RZMJNYqv1HQ3wUE2B7fCPFv7EUwzaCds1kgRQ==
</bpki_glue>
- <extension_preference name="name">Launcelot</extension_preference>
- <extension_preference name="quest">Holy Grail</extension_preference>
- <extension_preference name="color">Blue</extension_preference>
</self>
</msg>
@@ -184,15 +176,8 @@
YyMNrG2xMOtIC7T4+IOHgT8PgrNhaeDg9ctewj0X8Qi9nI9nXeinicLX8vj6hdEq
3ORv7RZMJNYqv1HQ3wUE2B7fCPFv7EUwzaCds1kgRQ==
</bpki_glue>
- <extension_preference name="name">Launcelot</extension_preference>
- <extension_preference name="quest">Holy Grail</extension_preference>
- <extension_preference name="color">Blue</extension_preference>
- </self>
- <self action="list" self_id="99">
- <extension_preference name="name">Arthur, King of the Britons</extension_preference>
- <extension_preference name="quest">Holy Grail</extension_preference>
- <extension_preference name="airspeed_velocity_of_an_unladen_swallow">African or European swallow?</extension_preference>
</self>
+ <self action="list" self_id="99"/>
</msg>
<msg version="1" type="query" xmlns="http://www.hactrn.net/uris/rpki/left-right-spec/">
diff --git a/rpkid/left-right-protocol-samples/pdu.001.xml b/rpkid/left-right-protocol-samples/pdu.001.xml
index 164308f6..ce2d6e92 100644
--- a/rpkid/left-right-protocol-samples/pdu.001.xml
+++ b/rpkid/left-right-protocol-samples/pdu.001.xml
@@ -1,8 +1,5 @@
<?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" type="query">
- <self action="create" tag="a000">
- <extension_preference name="name">Launcelot</extension_preference>
- <extension_preference name="quest">Holy Grail</extension_preference>
- </self>
+ <self action="create" tag="a000"/>
</msg>
diff --git a/rpkid/left-right-protocol-samples/pdu.003.xml b/rpkid/left-right-protocol-samples/pdu.003.xml
index c798144a..059adcad 100644
--- a/rpkid/left-right-protocol-samples/pdu.003.xml
+++ b/rpkid/left-right-protocol-samples/pdu.003.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" type="query">
- <self action="set" self_id="42" rekey="yes" reissue="yes" revoke="yes" run_now="yes" publish_world_now="yes" clear_extension_preferences="yes" crl_interval="3600" regen_margin="86400" use_hsm="no">
+ <self action="set" self_id="42" rekey="yes" reissue="yes" revoke="yes" run_now="yes" publish_world_now="yes" crl_interval="3600" regen_margin="86400" use_hsm="no">
<bpki_cert>
MIIDGzCCAgOgAwIBAgIJAKi+/+wUhQlxMA0GCSqGSIb3DQEBBQUAMCQxIjAgBgNV
BAMTGVRlc3QgQ2VydGlmaWNhdGUgQm9iIFJvb3QwHhcNMDcwODAxMTk1MzEwWhcN
@@ -40,6 +40,5 @@
YyMNrG2xMOtIC7T4+IOHgT8PgrNhaeDg9ctewj0X8Qi9nI9nXeinicLX8vj6hdEq
3ORv7RZMJNYqv1HQ3wUE2B7fCPFv7EUwzaCds1kgRQ==
</bpki_glue>
- <extension_preference name="color">Blue</extension_preference>
</self>
</msg>
diff --git a/rpkid/left-right-protocol-samples/pdu.006.xml b/rpkid/left-right-protocol-samples/pdu.006.xml
index 2024a757..2c78e044 100644
--- a/rpkid/left-right-protocol-samples/pdu.006.xml
+++ b/rpkid/left-right-protocol-samples/pdu.006.xml
@@ -40,8 +40,5 @@
YyMNrG2xMOtIC7T4+IOHgT8PgrNhaeDg9ctewj0X8Qi9nI9nXeinicLX8vj6hdEq
3ORv7RZMJNYqv1HQ3wUE2B7fCPFv7EUwzaCds1kgRQ==
</bpki_glue>
- <extension_preference name="name">Launcelot</extension_preference>
- <extension_preference name="quest">Holy Grail</extension_preference>
- <extension_preference name="color">Blue</extension_preference>
</self>
</msg>
diff --git a/rpkid/left-right-protocol-samples/pdu.008.xml b/rpkid/left-right-protocol-samples/pdu.008.xml
index a761b1fe..cc8ea03b 100644
--- a/rpkid/left-right-protocol-samples/pdu.008.xml
+++ b/rpkid/left-right-protocol-samples/pdu.008.xml
@@ -40,13 +40,6 @@
YyMNrG2xMOtIC7T4+IOHgT8PgrNhaeDg9ctewj0X8Qi9nI9nXeinicLX8vj6hdEq
3ORv7RZMJNYqv1HQ3wUE2B7fCPFv7EUwzaCds1kgRQ==
</bpki_glue>
- <extension_preference name="name">Launcelot</extension_preference>
- <extension_preference name="quest">Holy Grail</extension_preference>
- <extension_preference name="color">Blue</extension_preference>
- </self>
- <self action="list" self_id="99">
- <extension_preference name="name">Arthur, King of the Britons</extension_preference>
- <extension_preference name="quest">Holy Grail</extension_preference>
- <extension_preference name="airspeed_velocity_of_an_unladen_swallow">African or European swallow?</extension_preference>
</self>
+ <self action="list" self_id="99"/>
</msg>
diff --git a/rpkid/left-right-schema.rnc b/rpkid/left-right-schema.rnc
index 7476f921..bcc29dff 100644
--- a/rpkid/left-right-schema.rnc
+++ b/rpkid/left-right-schema.rnc
@@ -68,18 +68,13 @@ self_bool = (attribute rekey { "yes" }?,
attribute reissue { "yes" }?,
attribute revoke { "yes" }?,
attribute run_now { "yes" }?,
- attribute publish_world_now { "yes" }?,
- attribute clear_extension_preferences { "yes" }?)
+ attribute publish_world_now { "yes" }?)
self_payload = (attribute use_hsm { "yes" | "no" }?,
attribute crl_interval { xsd:positiveInteger }?,
attribute regen_margin { xsd:positiveInteger }?,
element bpki_cert { base64 }?,
- element bpki_glue { base64 }?,
- element extension_preference {
- attribute name { xsd:token { maxLength="1024" } },
- xsd:string { maxLength="512000" }
- }*)
+ element bpki_glue { base64 }?)
self_id = attribute self_id { sql_id }
diff --git a/rpkid/left-right-schema.rng b/rpkid/left-right-schema.rng
index 3e8fbebc..c05acb72 100644
--- a/rpkid/left-right-schema.rng
+++ b/rpkid/left-right-schema.rng
@@ -195,11 +195,6 @@
<value>yes</value>
</attribute>
</optional>
- <optional>
- <attribute name="clear_extension_preferences">
- <value>yes</value>
- </attribute>
- </optional>
</define>
<define name="self_payload">
<optional>
@@ -230,18 +225,6 @@
<ref name="base64"/>
</element>
</optional>
- <zeroOrMore>
- <element name="extension_preference">
- <attribute name="name">
- <data type="token">
- <param name="maxLength">1024</param>
- </data>
- </attribute>
- <data type="string">
- <param name="maxLength">512000</param>
- </data>
- </element>
- </zeroOrMore>
</define>
<define name="self_id">
<attribute name="self_id">
diff --git a/rpkid/rpki/__init__.py b/rpkid/rpki/__init__.py
index 9852d0b0..29d6b76b 100644
--- a/rpkid/rpki/__init__.py
+++ b/rpkid/rpki/__init__.py
@@ -476,31 +476,30 @@
## @verbatim
## Usage: irbe-cli.py --config= --help --pem_out=
##
-## parent --action= --type= --tag= --self_id= --parent_id=
+## parent --action= --tag= --self_id= --parent_id=
## --bsc_id= --repository_id= --peer_contact_uri=
## --sia_base= --sender_name= --recipient_name=
## --bpki_cms_cert= --bpki_cms_glue=
## --bpki_https_cert= --bpki_https_glue=
## --rekey --reissue --revoke
##
-## repository --action= --type= --tag= --self_id= --repository_id=
+## repository --action= --tag= --self_id= --repository_id=
## --bsc_id= --peer_contact_uri=
## --bpki_cms_cert= --bpki_cms_glue=
## --bpki_https_cert= --bpki_https_glue=
##
-## self --action= --type= --tag= --self_id= --crl_interval=
+## self --action= --tag= --self_id= --crl_interval=
## --bpki_cert= --bpki_glue=
-## --extension_preference= --rekey --reissue --revoke
+## --rekey --reissue --revoke
## --run_now --publish_world_now
-## --clear_extension_preferences
##
-## child --action= --type= --tag= --self_id= --child_id=
+## child --action= --tag= --self_id= --child_id=
## --bsc_id= --bpki_cms_cert= --bpki_cms_glue= --reissue
##
-## route_origin --action= --type= --tag= --self_id= --route_origin_id=
+## route_origin --action= --tag= --self_id= --route_origin_id=
## --as_number= --ipv4= --ipv6= --suppress_publication
##
-## bsc --action= --type= --tag= --self_id= --bsc_id=
+## bsc --action= --tag= --self_id= --bsc_id=
## --key_type= --hash_alg= --key_length= --signing_cert=
## --signing_cert_crl= --generate_keypair
## @endverbatim
diff --git a/rpkid/rpki/left_right.py b/rpkid/rpki/left_right.py
index 78c080f5..46c1c908 100644
--- a/rpkid/rpki/left_right.py
+++ b/rpkid/rpki/left_right.py
@@ -187,35 +187,13 @@ class data_elt(base_elt, rpki.sql.sql_persistant):
if unimplemented:
raise rpki.exceptions.NotImplementedYet, "Unimplemented control %s" % ", ".join(unimplemented)
-class extension_preference_elt(base_elt):
- """Container for extension preferences."""
-
- element_name = "extension_preference"
- attributes = ("name",)
-
- def startElement(self, stack, name, attrs):
- """Handle <extension_preference/> elements."""
- assert name == "extension_preference", "Unexpected name %s, stack %s" % (name, stack)
- self.read_attrs(attrs)
-
- def endElement(self, stack, name, text):
- """Handle <extension_preference/> elements."""
- self.value = text
- stack.pop()
-
- def toXML(self):
- """Generate <extension_preference/> elements."""
- elt = self.make_elt()
- elt.text = self.value
- return elt
-
class self_elt(data_elt):
"""<self/> element."""
element_name = "self"
attributes = ("action", "tag", "self_id", "crl_interval", "regen_margin")
- elements = ("extension_preference", "bpki_cert", "bpki_glue")
- booleans = ("rekey", "reissue", "revoke", "run_now", "publish_world_now", "clear_extension_preferences")
+ elements = ("bpki_cert", "bpki_glue")
+ booleans = ("rekey", "reissue", "revoke", "run_now", "publish_world_now")
sql_template = rpki.sql.template("self", "self_id", "use_hsm", "crl_interval", "regen_margin",
("bpki_cert", rpki.x509.X509), ("bpki_glue", rpki.x509.X509))
@@ -227,29 +205,6 @@ class self_elt(data_elt):
bpki_cert = None
bpki_glue = None
- def __init__(self):
- """Initialize a self_elt."""
- self.prefs = []
-
- def sql_fetch_hook(self):
- """Extra SQL fetch actions for self_elt -- handle extension preferences."""
- self.gctx.cur.execute("SELECT pref_name, pref_value FROM self_pref WHERE self_id = %s", (self.self_id,))
- for name, value in self.gctx.cur.fetchall():
- e = extension_preference_elt()
- e.name = name
- e.value = value
- self.prefs.append(e)
-
- def sql_insert_hook(self):
- """Extra SQL insert actions for self_elt -- handle extension preferences."""
- if self.prefs:
- self.gctx.cur.executemany("INSERT self_pref (self_id, pref_name, pref_value) VALUES (%s, %s, %s)",
- ((e.name, e.value, self.self_id) for e in self.prefs))
-
- def sql_delete_hook(self):
- """Extra SQL delete actions for self_elt -- handle extension preferences."""
- self.gctx.cur.execute("DELETE FROM self_pref WHERE self_id = %s", (self.self_id,))
-
def bscs(self):
"""Fetch all BSC objects that link to this self object."""
return bsc_elt.sql_fetch_where(self.gctx, "self_id = %s", (self.self_id,))
@@ -269,14 +224,6 @@ class self_elt(data_elt):
def route_origins(self):
"""Fetch all route_origin objects that link to this self object."""
return route_origin_elt.sql_fetch_where(self.gctx, "self_id = %s", (self.self_id,))
-
- def serve_pre_save_hook(self, q_pdu, r_pdu):
- """Extra server actions for self_elt -- handle extension preferences."""
- rpki.log.trace()
- if self is not q_pdu:
- if q_pdu.clear_extension_preferences:
- self.prefs = []
- self.prefs.extend(q_pdu.prefs)
def serve_post_save_hook(self, q_pdu, r_pdu):
"""Extra server actions for self_elt."""
@@ -319,12 +266,7 @@ class self_elt(data_elt):
def startElement(self, stack, name, attrs):
"""Handle <self/> element."""
- if name == "extension_preference":
- pref = extension_preference_elt()
- self.prefs.append(pref)
- stack.append(pref)
- pref.startElement(stack, name, attrs)
- elif name not in ("bpki_cert", "bpki_glue"):
+ if name not in ("bpki_cert", "bpki_glue"):
assert name == "self", "Unexpected name %s, stack %s" % (name, stack)
self.read_attrs(attrs)
@@ -345,7 +287,6 @@ class self_elt(data_elt):
self.make_b64elt(elt, "bpki_cert", self.bpki_cert.get_DER())
if self.bpki_glue and not self.bpki_glue.empty():
self.make_b64elt(elt, "bpki_glue", self.bpki_glue.get_DER())
- elt.extend([i.toXML() for i in self.prefs])
return elt
def client_poll(self):
diff --git a/rpkid/rpki/relaxng.py b/rpkid/rpki/relaxng.py
index d7997e96..110d9fbb 100644
--- a/rpkid/rpki/relaxng.py
+++ b/rpkid/rpki/relaxng.py
@@ -201,11 +201,6 @@ left_right = lxml.etree.RelaxNG(lxml.etree.fromstring('''<?xml version="1.0" enc
<value>yes</value>
</attribute>
</optional>
- <optional>
- <attribute name="clear_extension_preferences">
- <value>yes</value>
- </attribute>
- </optional>
</define>
<define name="self_payload">
<optional>
@@ -236,18 +231,6 @@ left_right = lxml.etree.RelaxNG(lxml.etree.fromstring('''<?xml version="1.0" enc
<ref name="base64"/>
</element>
</optional>
- <zeroOrMore>
- <element name="extension_preference">
- <attribute name="name">
- <data type="token">
- <param name="maxLength">1024</param>
- </data>
- </attribute>
- <data type="string">
- <param name="maxLength">512000</param>
- </data>
- </element>
- </zeroOrMore>
</define>
<define name="self_id">
<attribute name="self_id">
diff --git a/rpkid/rpkid.sql b/rpkid/rpkid.sql
index fa50c1d6..e5a13d35 100644
--- a/rpkid/rpkid.sql
+++ b/rpkid/rpkid.sql
@@ -30,14 +30,6 @@ CREATE TABLE self (
DROP TABLE IF EXISTS self_pref;
-CREATE TABLE self_pref (
- pref_name VARCHAR(100),
- pref_value TEXT,
- self_id BIGINT unsigned NOT NULL,
- PRIMARY KEY (self_id, pref_name),
- FOREIGN KEY (self_id) REFERENCES self
-);
-
DROP TABLE IF EXISTS bsc;
CREATE TABLE bsc (