diff options
author | Rob Austein <sra@hactrn.net> | 2008-05-21 03:28:07 +0000 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2008-05-21 03:28:07 +0000 |
commit | cddca1f14aa982feae41e7a4492a5ca522158086 (patch) | |
tree | bcf821d24ec524b97c022ea4d2006fe65df0fc32 | |
parent | bd95eac333bb14c3718a9779db627d8d00b06f30 (diff) |
Get rid of extension_preferences (YAGNI!).
svn path=/rpkid/irbe-cli.py; revision=1806
-rwxr-xr-x | rpkid/irbe-cli.py | 9 | ||||
-rw-r--r-- | rpkid/left-right-protocol-samples.xml | 19 | ||||
-rw-r--r-- | rpkid/left-right-protocol-samples/pdu.001.xml | 5 | ||||
-rw-r--r-- | rpkid/left-right-protocol-samples/pdu.003.xml | 3 | ||||
-rw-r--r-- | rpkid/left-right-protocol-samples/pdu.006.xml | 3 | ||||
-rw-r--r-- | rpkid/left-right-protocol-samples/pdu.008.xml | 9 | ||||
-rw-r--r-- | rpkid/left-right-schema.rnc | 9 | ||||
-rw-r--r-- | rpkid/left-right-schema.rng | 17 | ||||
-rw-r--r-- | rpkid/rpki/__init__.py | 15 | ||||
-rw-r--r-- | rpkid/rpki/left_right.py | 65 | ||||
-rw-r--r-- | rpkid/rpki/relaxng.py | 17 | ||||
-rw-r--r-- | rpkid/rpkid.sql | 8 |
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 ( |