From 07847e77092f375d4d4b3cfb97d038d8b47d2553 Mon Sep 17 00:00:00 2001 From: Rob Austein Date: Fri, 31 Jan 2014 05:50:52 +0000 Subject: Checkpoint. Untested implementation of left-right PDU. svn path=/branches/tk671/; revision=5657 --- rpkid/rpki/old_irdbd.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'rpkid/rpki/old_irdbd.py') diff --git a/rpkid/rpki/old_irdbd.py b/rpkid/rpki/old_irdbd.py index 10796711..3396e783 100644 --- a/rpkid/rpki/old_irdbd.py +++ b/rpkid/rpki/old_irdbd.py @@ -133,11 +133,15 @@ class main(object): r_msg.append(r_pdu) - handle_dispatch = { - rpki.left_right.list_resources_elt : handle_list_resources, - rpki.left_right.list_roa_requests_elt : handle_list_roa_requests, - rpki.left_right.list_ghostbuster_requests_elt : handle_list_ghostbuster_requests} + def handle_list_ee_certificate_requests(self, q_pdu, r_msg): + rpki.log.note("old_irdbd doesn't currently implement , ignoring") + + handle_dispatch = { + rpki.left_right.list_resources_elt : handle_list_resources, + rpki.left_right.list_roa_requests_elt : handle_list_roa_requests, + rpki.left_right.list_ghostbuster_requests_elt : handle_list_ghostbuster_requests, + rpki.left_right.list_ee_certificate_requests_elt : handle_list_ee_certificate_requests } def handler(self, query, path, cb): try: -- cgit v1.2.3 From 3b1ad8f97bf44ac0969b218f66f2f6dc420cf506 Mon Sep 17 00:00:00 2001 From: Rob Austein Date: Wed, 19 Feb 2014 20:42:31 +0000 Subject: Start adding router certificates to test harness. svn path=/branches/tk671/; revision=5669 --- rpkid/rpki/old_irdbd.py | 106 +++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 92 insertions(+), 14 deletions(-) (limited to 'rpkid/rpki/old_irdbd.py') diff --git a/rpkid/rpki/old_irdbd.py b/rpkid/rpki/old_irdbd.py index 3396e783..a9585307 100644 --- a/rpkid/rpki/old_irdbd.py +++ b/rpkid/rpki/old_irdbd.py @@ -52,13 +52,18 @@ class main(object): r_pdu.child_handle = q_pdu.child_handle self.cur.execute( - "SELECT registrant_id, valid_until FROM registrant WHERE registry_handle = %s AND registrant_handle = %s", + """ + SELECT registrant_id, valid_until + FROM registrant + WHERE registry_handle = %s AND registrant_handle = %s + """, (q_pdu.self_handle, q_pdu.child_handle)) if self.cur.rowcount != 1: - raise rpki.exceptions.NotInDatabase, \ - "This query should have produced a single exact match, something's messed up (rowcount = %d, self_handle = %s, child_handle = %s)" \ - % (self.cur.rowcount, q_pdu.self_handle, q_pdu.child_handle) + raise rpki.exceptions.NotInDatabase( + "This query should have produced a single exact match, something's messed up" + " (rowcount = %d, self_handle = %s, child_handle = %s)" + % (self.cur.rowcount, q_pdu.self_handle, q_pdu.child_handle)) registrant_id, valid_until = self.cur.fetchone() @@ -66,17 +71,29 @@ class main(object): r_pdu.asn = rpki.resource_set.resource_set_as.from_sql( self.cur, - "SELECT start_as, end_as FROM registrant_asn WHERE registrant_id = %s", + """ + SELECT start_as, end_as + FROM registrant_asn + WHERE registrant_id = %s + """, (registrant_id,)) r_pdu.ipv4 = rpki.resource_set.resource_set_ipv4.from_sql( self.cur, - "SELECT start_ip, end_ip FROM registrant_net WHERE registrant_id = %s AND version = 4", + """ + SELECT start_ip, end_ip + FROM registrant_net + WHERE registrant_id = %s AND version = 4 + """, (registrant_id,)) r_pdu.ipv6 = rpki.resource_set.resource_set_ipv6.from_sql( self.cur, - "SELECT start_ip, end_ip FROM registrant_net WHERE registrant_id = %s AND version = 6", + """ + SELECT start_ip, end_ip + FROM registrant_net + WHERE registrant_id = %s AND version = 6 + """, (registrant_id,)) r_msg.append(r_pdu) @@ -85,7 +102,7 @@ class main(object): def handle_list_roa_requests(self, q_pdu, r_msg): self.cur.execute( - "SELECT roa_request_id, asn FROM roa_request WHERE roa_request_handle = %s", + "SELECT roa_request_id, asn FROM roa_request WHERE self_handle = %s", (q_pdu.self_handle,)) for roa_request_id, asn in self.cur.fetchall(): @@ -97,12 +114,20 @@ class main(object): r_pdu.ipv4 = rpki.resource_set.roa_prefix_set_ipv4.from_sql( self.cur, - "SELECT prefix, prefixlen, max_prefixlen FROM roa_request_prefix WHERE roa_request_id = %s AND version = 4", + """ + SELECT prefix, prefixlen, max_prefixlen + FROM roa_request_prefix + WHERE roa_request_id = %s AND version = 4 + """, (roa_request_id,)) r_pdu.ipv6 = rpki.resource_set.roa_prefix_set_ipv6.from_sql( self.cur, - "SELECT prefix, prefixlen, max_prefixlen FROM roa_request_prefix WHERE roa_request_id = %s AND version = 6", + """ + SELECT prefix, prefixlen, max_prefixlen + FROM roa_request_prefix + WHERE roa_request_id = %s AND version = 6 + """, (roa_request_id,)) r_msg.append(r_pdu) @@ -111,7 +136,11 @@ class main(object): def handle_list_ghostbuster_requests(self, q_pdu, r_msg): self.cur.execute( - "SELECT vcard FROM ghostbuster_request WHERE self_handle = %s AND parent_handle = %s", + """ + SELECT vcard + FROM ghostbuster_request + WHERE self_handle = %s AND parent_handle = %s + """, (q_pdu.self_handle, q_pdu.parent_handle)) vcards = [result[0] for result in self.cur.fetchall()] @@ -119,7 +148,11 @@ class main(object): if not vcards: self.cur.execute( - "SELECT vcard FROM ghostbuster_request WHERE self_handle = %s AND parent_handle IS NULL", + """ + SELECT vcard + FROM ghostbuster_request + WHERE self_handle = %s AND parent_handle IS NULL + """, (q_pdu.self_handle,)) vcards = [result[0] for result in self.cur.fetchall()] @@ -134,9 +167,54 @@ class main(object): def handle_list_ee_certificate_requests(self, q_pdu, r_msg): - rpki.log.note("old_irdbd doesn't currently implement , ignoring") - + self.cur.execute( + """ + SELECT ee_certificate_id, gski, router_id, valid_until + FROM ee_certificate + WHERE self_handle = %s + """, + (q_pdu.self_handle,)) + + for ee_certificate_id, gski, router_id, valid_until in self.cur.fetchall(): + + r_pdu = rpki.left_right.ee_certificates_request_elt() + r_pdu.tag = q_pdu.tag + r_pdu.self_handle = q_pdu.self_handle + r_pdu.valid_until = valid_until.strftime("%Y-%m-%dT%H:%M:%SZ") + r_pdu.gski = gski + r_pdu.router_id = router_id + + r_pdu.asn = rpki.resource_set.resource_set_as.from_sql( + self.cur, + """ + SELECT start_as, end_as + FROM ee_certificate_asn + WHERE ee_certificate_id = %s + """, + (ee_certificate_id,)) + + r_pdu.ipv4 = rpki.resource_set.resource_set_ipv4.from_sql( + self.cur, + """ + SELECT start_ip, end_ip + FROM ee_certificate_net + WHERE ee_certificate_id = %s AND version = 4 + """, + (ee_certificate_id,)) + + r_pdu.ipv6 = rpki.resource_set.resource_set_ipv6.from_sql( + self.cur, + """ + SELECT start_ip, end_ip + FROM ee_certificate_net + WHERE ee_certificate_id = %s AND version = 6 + """, + (ee_certificate_id,)) + + r_msg.append(r_pdu) + + handle_dispatch = { rpki.left_right.list_resources_elt : handle_list_resources, rpki.left_right.list_roa_requests_elt : handle_list_roa_requests, -- cgit v1.2.3 From 065c44e912a7fca14ae641a09aa89d0a573c3cdf Mon Sep 17 00:00:00 2001 From: Rob Austein Date: Thu, 20 Feb 2014 06:43:48 +0000 Subject: Checkpoint. Now generating something that looks a bit like a router cert, but not right yet: RSA where should be ECDSA, EKU missing, and EE certificate class's .reissue() method isn't working properly yet. svn path=/branches/tk671/; revision=5673 --- rpkid/rpki/old_irdbd.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'rpkid/rpki/old_irdbd.py') diff --git a/rpkid/rpki/old_irdbd.py b/rpkid/rpki/old_irdbd.py index a9585307..25ceb656 100644 --- a/rpkid/rpki/old_irdbd.py +++ b/rpkid/rpki/old_irdbd.py @@ -170,18 +170,19 @@ class main(object): self.cur.execute( """ - SELECT ee_certificate_id, gski, router_id, valid_until + SELECT ee_certificate_id, pkcs10, gski, router_id, valid_until FROM ee_certificate WHERE self_handle = %s """, (q_pdu.self_handle,)) - for ee_certificate_id, gski, router_id, valid_until in self.cur.fetchall(): + for ee_certificate_id, pkcs10, gski, router_id, valid_until in self.cur.fetchall(): - r_pdu = rpki.left_right.ee_certificates_request_elt() + r_pdu = rpki.left_right.list_ee_certificate_requests_elt() r_pdu.tag = q_pdu.tag r_pdu.self_handle = q_pdu.self_handle r_pdu.valid_until = valid_until.strftime("%Y-%m-%dT%H:%M:%SZ") + r_pdu.pkcs10 = rpki.x509.PKCS10(DER = pkcs10) r_pdu.gski = gski r_pdu.router_id = router_id -- cgit v1.2.3 From de95fb9525bf5f1ced2fb90924b31b78494e1e87 Mon Sep 17 00:00:00 2001 From: Rob Austein Date: Tue, 25 Feb 2014 20:46:05 +0000 Subject: Something broke MySQLdb on my laptop during a recent upgrade, and I have better things to do than shaving that particular yak today. So I'm committing untested changes (to a development branch that nobody but me is using) so I can test them on a working development platform. svn path=/branches/tk671/; revision=5682 --- rpkid/rpki/old_irdbd.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'rpkid/rpki/old_irdbd.py') diff --git a/rpkid/rpki/old_irdbd.py b/rpkid/rpki/old_irdbd.py index 25ceb656..41060344 100644 --- a/rpkid/rpki/old_irdbd.py +++ b/rpkid/rpki/old_irdbd.py @@ -170,13 +170,13 @@ class main(object): self.cur.execute( """ - SELECT ee_certificate_id, pkcs10, gski, router_id, valid_until + SELECT ee_certificate_id, pkcs10, gski, cn, sn, eku, valid_until FROM ee_certificate WHERE self_handle = %s """, (q_pdu.self_handle,)) - for ee_certificate_id, pkcs10, gski, router_id, valid_until in self.cur.fetchall(): + for ee_certificate_id, pkcs10, gski, cn, sn, eku, valid_until in self.cur.fetchall(): r_pdu = rpki.left_right.list_ee_certificate_requests_elt() r_pdu.tag = q_pdu.tag @@ -184,7 +184,9 @@ class main(object): r_pdu.valid_until = valid_until.strftime("%Y-%m-%dT%H:%M:%SZ") r_pdu.pkcs10 = rpki.x509.PKCS10(DER = pkcs10) r_pdu.gski = gski - r_pdu.router_id = router_id + r_pdu.cn = cn + r_pdu.sn = sn + r_pdu.eku = eku r_pdu.asn = rpki.resource_set.resource_set_as.from_sql( self.cur, -- cgit v1.2.3